Commit graph

6,587 commits

Author SHA1 Message Date
Subhranil Choudhury
9bcfecf548 qcacmn: Add vdev_id argument to peer-delete
Add vdev-id as argument to peer-delete callback
function.

Change-Id: I8a43ed53c5f7ad64f1f4cb7aeb925e285752b7b5
2019-03-16 14:28:31 -07:00
Shashikala Prabhu
550e69c726 qcacmn: Restrict the tx descriptors for low mem config
For low mem config, use user configured max tx descriptors to limit the
allocation of software tx descriptors.

Use dp_txrx_pflow_update_pdev_params function to print stats and to update
pdev param.

Change-Id: I8fa6f0bb8841de68e8dc205ffcb0fde264f1b0e0
CRs-Fixed: 2414452
2019-03-15 23:15:06 -07:00
Varsha Mishra
3e9d647162 qcacmn: Fixing display of Vow Stats
Adding more fields to vow stats display function.

Change-Id: Ic5227e994e55c0ebc99351051d5b409ba0c3f627
2019-03-15 23:15:02 -07:00
Arif Hussain
1d9aae09c6 qcacmn: Define new test config attribute for TWT Request support
Define new test config attribute to configure twt request.

Change-Id: Ie5f97f051923b31af89a8cc3af2d45b16626b2cf
CRs-Fixed: 2416616
2019-03-15 19:54:52 -07:00
Srinivas Girigowda
1d5ca92967 qcacmn: Move CTL value enums to reg_services_public_struct.h
The objective is to remove qcacld-3.0 redundant macros and
replace them with the converged enums exposed in
reg_services_public_struct.h

Change-Id: I3f106f7f9f8a533b1964d3ea256a2fef5e4bbd4f
CRs-Fixed: 2416532
2019-03-15 18:04:05 -07:00
Surya Prakash Raajen
80638517c2 qcacmn: Redefine pdev and vdev param to remove CONFIG_MCL
Convert pdev and vdev param conversion array to pointers
and allocate them only if conversion is required.Use run-time
NULL check of pdev and vdev param pointers for conversion
and remove CONFIG_MCL compiler flag.

CRs-Fixed: 2393422
Change-Id: Ica1c81f5f3c3a4b7e31dcb70c63471898c36933d
2019-03-15 18:04:02 -07:00
Harprit Chhabada
5d32743e83 qcacmn: Implement API to support GETBAND functionality
Add GETBAND support by implementing API, ucfg_reg_get_band

Change-Id: I91fabb367c53aed5ae13a0bb4272965f925d44bd
CRs-Fixed: 2412777
2019-03-15 15:17:13 -07:00
Venkateswara Swamy Bandaru
cf1a001281 qcacmn: Add cdp support for DCS reenable timer
Add cdp support to configure DCS re-enable timer.

Change-Id: I35fdf2fd582468e6f09cbad35c927115b4177694
CRs-Fixed: 2415368
2019-03-15 09:15:13 -07:00
stonez
a558be177d qcacmn: add vendor subcommand QCA_NL80211_VENDOR_SUBCMD_MPTA_HELPER_CONFIG
This subcommand is used to update zigbee state and specified wlan durations
to enhance success ratio of zigbee joining network.
NL attributes qca_mpta_helper_vendor_attr is used to deliver the parameters
to host driver.

Change-Id: I7ec82e11fa3aaea88f20e1c04c464153549bf44c
CRs-Fixed: 2413320
2019-03-15 09:15:09 -07:00
Sandeep Puligilla
fa3c826f3a qcacmn: Initialize connected scan cfg item
Initialize the connected scan cfg item during
scan module init.

Change-Id: I93e379c4abded42cac58b0140c9a2698dd657c24
CRs-Fixed: 2415534
2019-03-15 01:18:46 -07:00
Akshay Kosigi
181b2f52e6 qcacmn: Clean up HIF module to remove CONFIG_WIN macros
Replace CONFIG_WIN macro definitions with feature based macros
for HIF module.

Change-Id: I31a3ef0f70d19f838e2dff0db345e765a0aeb84e
CRs-Fixed: 2407222
2019-03-14 19:27:51 -07:00
Akshay Kosigi
3e7e01e645 qcacmn: Add change to send beacon rate to FW
Add support for sending beacon tx rate to FW when we are creating an
interface

Change-Id: Id48a545f154af4139541ab347eec4ce5c91c278d
CRs-Fixed: 2413314
2019-03-14 19:27:47 -07:00
Shaakir Mohamed
adfc94c17c qcacmn: Add support of Agile DFS in umac dispatcher layer
Add DFS Rx and Tx operations to support Agile DFS feature.

Change-Id: Ia91c9167d5fb4d01357e57daafc3f5a09e9c827d
CRs-Fixed: 2385536
2019-03-14 14:28:29 -07:00
Shaakir Mohamed
14ac61de4d qcacmn: Add target interface support for Agile DFS feature
Add target interface support for Agile DFS feature. This includes:
	1)target interface to send agile dfs request command
	2)target interace to send  off-channel cac abort command

Change-Id: Ica0cecd08dc1cd90fe71a618afe749b50dc1cb6d
CRs-Fixed: 2385536
2019-03-14 14:28:26 -07:00
Shaakir Mohamed
7a71538673 qcacmn: Add support for Agile DFS feature
Agile Dynamic Frequency Selection refers to the mechanism in which DFS
scanning takes place on a separate dedicated synthesizer
(agile DFS sythesizer), while the access point receives data on a
separate channel. Once DFS scanning completes in the aDFS
synthesizer, AP can switch its primary channel to this preCAC done
channel, without Channel Availability Check of 60 seconds.

Hawkeye has native support for A-DFS unlike Cascade, which uses a
dedicated radar detector for background scanning. Each Iron radio has
two synthesizers, one of which can perform A-DFS.
Host driver configures an A-DFS channel along with maintaining
pre-CAC Done list of channels. PreCAC list caching of channels
is currently limited to ETSI domain.

Once off channel CAC completes in the agile channel, HOST receives O-CAC
complete indication. O-CAC status included as a part of event params
has information if the preCAC is successful or not. HOST also receives
indication through radar indication event handler, upon RADAR detect.
The detection is read as agile channel RADAR using the detector id value.

For SBS mode, there can be 2 pdev's which can comprise of DFS channels.
Although the preCAC list is separate for each pdev, preCAC timer is
limited to a single pdev.

The following commands are to set/get preCAC enable. Prerequisite to
enable preCAC includes regdomain to be in ETSI along with agile capability
enabled in the target.

	iwpriv wifiX get_preCACEn
	iwpriv wifiX preCACEn 0/1

Change-Id: Id9f022f885ccd9200167cdbc779a811d622d09da
CRs-Fixed: 2385536
2019-03-14 14:28:22 -07:00
Shaakir Mohamed
9ff68da6e5 qcacmn: Add WMI support for Agile DFS feature
Add WMI commands and event to support Agile DFS feature:
	1)WMI send adfs channel config command
	2)WMI send adfs o-cac abort command
	3)WMI extract function to handle O-CAC complete event from target

Change-Id: Ib11d042bf06c786ab553aa28091145b620fbd551
CRs-Fixed: 2385536
2019-03-14 14:28:19 -07:00
Akshay Kosigi
ce7a81cbed qcacmn: Move deletion of datapath vdev to vdev destroy handler
Move dp vdev detach flow to vdev destroy handler from vdev delete
sequence.

Change-Id: I727d70e77f8e913ca732b6ae56c60049161547de
2019-03-14 13:01:32 -07:00
Santosh Anbu
3f0962833f qcacmn: Add API to fetch activation status for active cmd
Add change to fetch the activation status for the command in the
active queue of a given vdev.

Change-Id: I2ef87b5423f3749eb68e50147c9a30115492197c
CRs-Fixed: 2415236
2019-03-13 23:21:57 -07:00
Vignesh U
b7f7d8e55e qcacmn: Provide proper age value for Assoc STA Link Metrics
Use the time stamp taken during the updating of RSSI value to
calculate the time elapsed when the IOCTL call happens. Return
that value as delta age in ms.

Change-Id: I96d36a7a132b7a327d9d5a5ba3a318a82889ebd5
CRs-Fixed: 2394910
2019-03-13 19:41:39 -07:00
syed touqeer pasha
576972b9e5 qcacmn: Move RBM value check before rx descriptor fetch
The rx descriptor may be invalid if RBM is incorrect.
Check the RBM value before fetching the rx descriptor.

Change-Id: I12cc99ceb31b8bbf0127591e1c275b13264eb80c
2019-03-13 19:41:36 -07:00
Harprit Chhabada
d5cdb2b39b qcacmn: Clean up CONFIG_MCL for scan related macros
Clean up CONFIG_MCL and add all below scan
related macro in the defaul_defconfig file.
Macros related to WIN will be part of WIN Kbuild.

MAX_SCAN_CACHE_SIZE 300
SCAN_MAX_REST_TIME 0
SCAN_MIN_REST_TIME 0
SCAN_BURST_DURATION 0
SCAN_PROBE_SPACING_TIME 0
SCAN_PROBE_DELAY 0
SCAN_MAX_SCAN_TIME 30000
SCAN_NETWORK_IDLE_TIMEOUT 0
HIDDEN_SSID_TIME (1*60*1000)
SCAN_CHAN_STATS_EVENT_ENAB (false)

Change-Id: I9c8cb010111c6255309f36209cabc011e32f3f0f
CRs-Fixed: 2412734
2019-03-13 19:41:33 -07:00
Amir Patel
62f72ed3be qcacmn: Add vendor id for peer rate stats cache flush
Add nl vendor id and attributes for peer stats cache flush.
Peer rate statistics is per-peer cached data in host driver,
these statistics needs to be flushed to user space on
synchronous/asynchronous events.
This command is used to flush per-peer cached statistics
to application

CRs-Fixed: 2397918
Change-Id: Ie75e11e5949e754dd4779f88f1f6aeb984873f32
2019-03-13 19:41:30 -07:00
Mohit Khanna
513781344d qcacmn: Donot update NAPI stats for CE with NAPI disabled
In case NAPI is disabled on a CE (and tasklets are used instead), donot
update NAPI stats for the CE.

Change-Id: Iaf464df9a8520d705f73f7be355736ae2f1aaf5b
CRs-Fixed: 2412599
2019-03-13 19:41:26 -07:00
Kiran Kumar Lokere
2d26d82348 qcacmn: Configuration support for HE testbed defaults
Add support to configure HE testbed defaults.

Change-Id: I2a09393782c17fa5b66bfab8c3bb7f9805159df9
CRs-Fixed: 2410943
2019-03-13 00:07:33 -07:00
Jianmin Zhu
745dc0d96d qcacmn: Change log level from err to debug for LFR3 performance KPI
Log of level err will call printk to print on uart, may make
current thread sleep or delay > 10ms, then wma_roam_synch_event
need longer time to handle, LFR3 roam need longer time.

Change-Id: Ibdd58f74fcf5cf3de8e2b06166c375a2ce634cb5
CRs-Fixed: 2411278
2019-03-13 00:07:29 -07:00
Yeshwanth Sriram Guntuka
07e2c48abe qcacmn: Add Diag Log support for cold boot cal event
Add Diag log support for logging cold boot calibration
data sent by firmware via cold boot cal wmi event.

Change-Id: I932fd5f87667498b77ee13ca5b3ce08d6001cdf0
CRs-Fixed: 2413451
2019-03-12 18:57:41 -07:00
Kiran Kumar Lokere
47eba668fe qcacmn: Configuration support for VHT in 2.4G band
Add support to configure VHT support in 2.4G band.

Change-Id: Ie47e14f8bbc0c79c9d45d4c91eb084cbd27e9f3e
CRs-Fixed: 2394418
2019-03-12 13:58:39 -07:00
Kiran Kumar Lokere
55ec2b9bb0 qcacmn: Configuration support for HE OMI UL MU disable data
Add support to configure the HE OMI UL MU data disable config.

Change-Id: I9695726e94016d0e2bae6142b46bd696178e8a50
CRs-Fixed: 2394413
2019-03-12 13:58:35 -07:00
Nachiket Kukade
ab9c7479e4 qcacmn: Add modules to support new NDP command and event
Add modules and API's to issue command WMI_NDP_CMDID. This
command, for now, can request Firmware to terminate all NDP's
associated with the given vdev. Add module that extracts
event information from event WMI_NDP_EVENTID. This event acts
as a response to command WMI_NDP_CMDID, and carries NDP
related status information for the host. Extract mac_id from
the updated TLV of NDP confirm and schedule update events.

Add modules and API's to support new NDP command and event.

Change-Id: Ibf6312cb3669b5e62ada3f4ad852be87f14ae09f
CRs-Fixed: 2384535
2019-03-12 13:58:31 -07:00
Dustin Brown
b5b21cac42 qcacmn: Remove qdf_*_outline() APIs
Several qdf_*_outline() APIs exist which are straight aliases to their
regular qdf_*() counterparts. Remove them, and update any callers to use
the regular APIs instead.

Change-Id: Ibe6e9cced521b93061e89690ab817ceafe49a469
CRs-Fixed: 2408267
2019-03-12 13:58:27 -07:00
Rakshith Suresh Patkar
fbe297b129 qcacmn: Move htt_rx specific macros from hif to htt
Remove htt_rx specific macros from hif layer.

Change-Id: I87a6ccce9501fa52c798195b01a1ffa873ec2d73
CRs-Fixed: 2412211
2019-03-12 10:01:34 -07:00
Santosh Anbu
73f3f09abf qcacmn: Fix type for wlan_serialization_cmd_callback
Fix the type for nan_serialized_cb and remove unnecessary
type casts from other callbacks.

Change-Id: Ie4e45f5a7e9fc17eb1c45fa18160e3bbd47151fe
CRs-Fixed: 2402989
2019-03-12 06:10:08 -07:00
Varsha Mishra
a331e6e55f qcacmn: Implement delay VOW stats for hawkeye
Delay counters per TID have been implemented for following types:
1. Linux stack to hw enqueue delay
2. HW enqueue delay to tx completion delay
3. TX interframe delay
4. RX interframe delay
5. RX frame delay from ring reap to networking stack

Change-Id: I836596cbd878a43955c18b4981cb5b7b43d4df5e
2019-03-12 06:10:05 -07:00
bings
17e1cb5cf4 qcacmn: Replace CONFIG_MCL_REGDB with CONFIG_REG_CLIENT
Do not use MCL in the macro. Use feature name to define macro.

This is for CONFIG_MCL_REGDB cleanup.

Change-Id: I5a3f40da74e2c4476dbf2d4d4200502b9b9e9653
CRs-Fixed: 2411991
2019-03-12 00:56:29 -07:00
bings
9b58b7ad56 qcacmn: Remove CONFIG_MCL for target_process_bang_radar_cmd
target_process_bang_radar_cmd should be defined with meaningful body only
when WLAN_DFS_FULL_OFFLOAD is defined.

This is for CONFIG_MCL cleanup

Change-Id: Id038231e6aa967c68674f40ef4247ac023313b71
CRs-Fixed: 2411981
2019-03-12 00:56:24 -07:00
Rajeev Kumar Sirasanagandla
d540e70a22 qcacmn: Cleanup CONFIG_MCL from qdf wake lock api
In the current implementation, from qdf wake lock api, diag log api
invocation is controlled by macro CONFIG_MCL.

Aim is to clean CONFIG_MCL in qdf_lock.c

Change-Id: I16a1a46a2ebc255ed092a1fdd05f127c7e542a5e
CRs-Fixed: 2411636
2019-03-11 19:23:07 -07:00
sumedh baikady
6d66c7e1b6 qcacmn: Remove redundant check for BA state
In handling addba request, if we receive a request
for a tid that is in IN_PROGRESS state, we ignore
this new request.

Change-Id: I71e3f78cf43f25c184161669a359a4b703cab3cd
Crs-fixed: 2408140
2019-03-11 14:20:53 -07:00
Debasis Das
a3249bd41e qcacmn: cdp support for 8021pCoS to tid mapping
Add members in the ops framework and the respective
function definitions for supporting 8021pcos to tid mapping.

Change-Id: Iaa15efbda0824cecb1b2db67ea8b6ee585a8d56c
2019-03-11 03:19:21 -07:00
hangtian
032a78de3c qcacmn: Allow SSR during driver resume
Allow SSR during driver resume. Assume firmware goes down during driver
is in suspend state. Avoid get into bad state and wmi access during driver
resume.

Change-Id: Ie1689e0b080f940666fbbb19c9f0e3b0fecfe564
CRs-Fixed: 2390031
2019-03-11 01:35:17 -07:00
Kiran Venkatappa
07921611b4 qcacmn: Use HTT message to disable rx_pkt_header tlv
On low memory platform rx_pkt_header tlv is not subscribed to get a
savings of 128bytes in skb. This is required to reduce the skb size from
4K to 2K on 32-bit platforms. Use HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG
message to unsubscribe rx_pkt_header tlv for rxdma ring.

Change-Id: Ie684f1ca1de9c824a869b4e13fd0ee1d068004e7
CRs-Fixed: 2408424
2019-03-08 23:38:07 -08:00
Shashikala Prabhu
e11412df5c qcacmn: Add compile time macro to disable rx_pkt_hdr_tlv
Do not process  RX packet header TLV for low memory config profile.
Also, drop decapped frames in invalid peer processing function.

Change-Id: Ifc7721bb25d85c7e277bebf4b962d2f1bfea150c
CRs-Fixed: 2395508
2019-03-08 23:38:04 -08:00
Naga
dddd95f2e9 qcacmn: Fix to send correct mac
Add change to send correct mac address
peer_flush_params->mac_id to flush tids
during the process of sending STOP cmd to FW.

Change-Id: I16dd0263a5d3d953da9c1d107136f5824c7736cd
CRs-Fixed: 2408175
2019-03-08 21:59:46 -08:00
phadiman
449a268392 qcacmn: Reuse Rx Descriptor Pool Array
wifi up/down will cause soc stop and soc
start which will allocate rx desc pool
array memory for each wifi up

This creates memory fragmentation issue
hence reuse Rx descriptor pool array
across wifi up/down and free only nbufs

CRs-Fixed: 2394666
Change-Id: Ic897c733dfba3d8829e2f2f51099cd615b8a7ea2
2019-03-08 20:19:16 -08:00
phadiman
2c146ea33a qcacmn: Memory Leak in Rx Frag Path
qdf_nbuf_cat API used to call skb_free
on src address but was later modified
so that the caller of qdf_nbuf_cat is
responsible for freeing the src memory

Due to this change in  the API, the
freeing of src memory on caller side
was not taken care and will lead to
mem leak

Hence add qdf_nbuf_free after calling
qdf_nbuf_cat if it returns success.

If qdf_nbuf_cat returns failure, then
freeing is taken care as part of error
handling in parent function.

CRs-Fixed: 2411320
Change-Id: If50eb9279d0cf26a0cf57444cb69e56f11995720
2019-03-08 17:24:08 -08:00
Nachiket Kukade
6943747a55 qcacmn: Remove redundant counter increments under RA match event
In the case of WOW resume due to RA match event, driver will
update the protocol and destination type WOW stats after parsing
the data packet. The same stats are again incremented under RA
match case in TX op that is called in wma_inc_wow_stats. This is
causing counters to increment twice for each packet. Therefore
remove the increment of wow stats from TX op case.

Remove redundant counter increments under RA match event in
target_if_cp_stats_inc_wake_lock_stats.

Change-Id: I10486d083175772f976542a38364ba964c8e1a87
CRs-Fixed: 2406975
2019-03-08 12:06:11 -08:00
Priyadarshnee S
a092ad1662 qcacmn: Fix double free in wlan_cfg80211_scan()
In wlan_cfg80211_scan(), when "DNBS check fails", mem free of scan req is
done. Mem free of scan req is done again at the label "err" which would
end up in a double free.

Change-Id: Ib757832c1bd54372fba45cbc5ee306d0d7b233b0
CRs-Fixed: 2408703
2019-03-08 12:06:07 -08:00
Manoj Ekbote
6db1ddac13 qcacmn: Add pdev level feature flag for MBSS IE
A service bit is used to indicate support for MBSS IE.
This is set as capability in host at psoc level.
In host, we also maintain a flag for user to configure
MBSS support at pdev level. It could be used in future.

Change-Id: I31a27a755fb027de93bfe6c9639fdbda9693bace
CRs-Fixed: 2403030
2019-03-08 12:06:04 -08:00
Santosh Anbu
4de9ffb5b1 qcacmn: Update retry count for failed tx frames
Check for completion status of the ppdu based on
HTT_PPDU_STATS_USR_COMMON_TLV and
HTT_PPDU_STATS_USR_COMPLTN_ACK_BA_STATUS_TLV.
Update the stats only when completion status is ok else
update retry and failed frames count.

Change-Id: Iac7730715f853746d77873488b7886e7beed467d
CRs-Fixed: 2390383
2019-03-08 12:06:01 -08:00
Shashikala Prabhu
7b635b9857 qcacmn: Add support to send user vendor ie info to target
When user sets the vendor ie for probe request frame, it is not
included in the broadcast probe request sent by FW.

Add support to send vendor ie info in scan start command to FW. Therefore,
FW can include this vendor ie in the broadcast probe request frame.

Change-Id: Ie5fc0c074bd7543568a135d3ef4662bf09b274f6
CRs-Fixed: 2400265
2019-03-08 12:05:57 -08:00
gaurank kathpalia
684b158cfd qcacmn: Change return type in case of simultaneous scan
Currently the driver returns EINVAL, instead of EBUSY if
the driver encounters a case of simlutaneuos scan, and
DBS scan is disabled for user space, and thus it may lead
to failure of OBSS scan, which can further lead to SAP
fail.

Fix is to return EBUSY intead of EINVAL, so that hostapd
can try to get the scan module perform a scan, which can
increase the probablity of SAP bringup.

Change-Id: I798e3d1ad0f62a5240603b4344963cb3ee637c13
CRs-Fixed: 2403499
2019-03-08 09:12:37 -08:00