نمودار کامیت

693 کامیت‌ها

مولف SHA1 پیام تاریخ
Tushnim Bhattacharyya
0f7b9cd898 qcacmn: Trim ACS channel list based on the concurrent connections
If force SCC is enabled and there is a STA connection, trim the
ACS channel list on the band on which STA connection is present.

Change-Id: Ibd580a7afdcdfc5fb4398ada547565e229d59c70
CRs-Fixed: 2193720
2018-02-22 23:30:57 -08:00
Vivek
5b3912a049 qcacmn: Move mgmt descriptors per pdev for probe response throttling
In the current code, mgmt tx rx descriptors nubfs per pdev,
which are in use when driver is unloaded,
are tried to be freed in dispatcher_psoc_disable,
by iterating through the pdevs which ideally should not be available.

And in ideal conditions, there are no pdevs during psoc_disable,
there was no attempt to free the nbuf
of pdevs mgmt tx rx descriptors in use,
which could have resulted in leaks but no assert.

In some cases, by the time dispatcher_psoc_disable was called,
and pdev count was non zero, we were seeing some issue accessing
the pdev or pdev mgmt tx rx context and it was causing assert.

The mgmt tx rx descriptors nubfs
which are in use when the driver is unloaded,
should be freed in dispcatcher pdev close and
not in dispatcher psoc close.

Change-Id: Ia6ac0b2ceeb017221153dab92bf014481eca2a5b
CR's Fixed: 2187890
2018-02-22 07:26:01 -08:00
Om Prakash Tripathi
fdaf38b849 qcacmn: Invoke beacon update callback before adding new entry
Invoke beacon update callback function before adding new entry
to scan list. It's required as get_scan_result API will end up
returning partially initialized scan entry.

Change-Id: Ia34f9c69b4eef2435b135912e06c39018a8987b8
CRs-Fixed: 2189783
2018-02-22 06:01:31 -08:00
Akshay Kosigi
888823edd3 qcacmn: Align objmgr structure members
Align the data structure members to reduce the structure size

Change-Id: I40fce43b4050691700c732602dae0ba976896339
CRs-Fixed: 2180812
2018-02-21 18:20:55 -08:00
akosigi
6e19edc1e4 qcacmn: Update function name and remove redundant code
Rename scan_tx_ops_register for consistency
Remove redundant lines of code in tx_ops registration

Change-Id: I3ade89f7eeb1f506f75b5c859dd4bc4242414628
CRs-Fixed: 2127952
2018-02-21 18:20:52 -08:00
Vinay Adella
1de7baec7e qcacmn: Adding support to drain mgmt frames
FW recovery path needs this function as mgmt Tx
completions are not expected from the FW.

CRs-Fixed: 2178618
Change-Id: I7dddbff544dcce4dd9fe95ab79fb891bbd11b4ab
2018-02-20 08:00:50 -08:00
Shashikala Prabhu
1b50fdc451 qcacmn: Add a local variable to dereference frequency range
To make the code look neater, add a local variable to dereference the
frequency range.

Change-Id: I419aa913304c3b7e7d553a1419b92f9ee46ac754
CRs-Fixed: 2182461
2018-02-15 03:12:50 -08:00
Disha Das
6419ff128e qcacmn: Set peer params for crypto PMF
Set peer params for crypto PMF on recv assoc req

Change-Id: I879135642278602edf195dd68c8acbbfdf09c443
2018-02-13 13:14:49 -08:00
gaurank kathpalia
7d65c1b32d qcacmn: Add individual length checks to Beacon Information element
Currently there is no individual length check to each IE, which
could probably result in buffer overead. Minimum length should
be checked for each varibale IE for avoid the same. Also some fixed
IEs should have a length check of not greater than the size of
their respective structures to avoid corrupting other IE data.

Fix is to add a length check to each individual IE to avoid
corrupting other IEs and also to prevent reception of any IE
of invalid length IE.

Change-Id: I9a0914861d7ff2871ac72ad7357ebbb7ef10eeb3
CRs-Fixed: 2183014
2018-02-13 05:47:44 -08:00
Vivek Chettri
40789ff92d qcacmn: Add NULL check for wdev member of vdev's ospriv
Add NULL check for access to wdev.
There could be cases where the wdev could not we initialized
to appropriate values, so we should have a NULL check before
we access its members.

CR's Fixed: 2168374

Change-Id: Id0a3f9b64c5e9beed86f5a3c019a5fe5dbdb8bd7
2018-02-13 04:53:31 -08:00
Om Prakash Tripathi
339dc26b21 qcacmn: Enable scan command time out if not disabled explicitly
1. Enable scan command time out for all commands if not disabled
   explicitly.
2. Remove QDF_BUG() for no serialization command buffers

Change-Id: I5357211ef6bc44f8ebd4b8acaa56a12f691fa46d
CRs-Fixed: 2175843
2018-02-13 03:55:25 -08:00
gaurank kathpalia
98d3395e7a qcacmn: Fix KWork issues in Scan component
Fix KWork issues (NULL pointer checks, pointer dereference)
in scan path

Change-Id: I1c66a99bbfc69202d24f288ccfbebd2811345ded
CRs-Fixed: 2160771
2018-02-12 23:51:06 -08:00
Amar Singhal
40126d4847 qcacmn: Check world mode when setting country code
When setting country code dynamically, world mode is
variable. Multiple world modes are supported depending
on the BDF configuration. Currently, it does not check
the world mode when setting country code and not take
appropriate action.

Change-Id: Ibd087825dbdba58d3d52d0c208edf183e3088731
CRs-Fixed: 2182129
2018-02-10 00:52:18 -08:00
Liangwei Dong
bc9c485826 qcacmn: Keep unsafe chan enabled in curr_chan_list
Station mode needs the full chan list including unsafe chan.
And HDD and policy mgr has local copy the unsafe chan list
for chan avoidance checking for SAP mode.

Keep unsafe chan in curr_chan_list and add unit test ucfg API
for chan avoidance internal test.

Change-Id: I23e040048a6dc1cc604cc2be91ac74916eb74f23
CRs-Fixed: 2182400
2018-02-10 00:00:35 -08:00
Shiva Krishna Pittala
101778698b qcacmn: Move Spectral Netlink APIs to os_if layer
Spectral Netlink related APIs are currently present in
target_if layer, move them to os_if layer.

Change-Id: I86a5495f6ec8aa85a2e9639902503a522b023f8e
CRs-Fixed: 2151548
2018-02-09 09:21:00 -08:00
Srinivas Pitla
72bbf17531 qcacmn: Use correct ref id for mgmt transmit
Fix to correct ref id usage in transmit.

Change-Id: I85d5031e3ed14a137980a828f18512d91fde5548
CRs-Fixed: 2177109
2018-02-09 07:45:45 -08:00
Padma, Santhosh Kumar
01548b7f5c qcacmn: Fix hidden ssid match in OWE
OWE SSID is hidden in OWE transition mode. When supplicant detects
connection to OWE transition mode, it issues connect with required
SSID to driver. But that ssid does not present in driver scan cache
as it is hidden. Instead of this ssid, driver scan cache has NULL
entry. This can result in connection failure due to mismatch in ssid.

In normal hidden ssid cases, supplicant issues scan with specific
ssid which helps to update driver scan cache with required ssid. SSID
is also hidden in OWE transition mode, but supplicant does not issue
scan with specific ssid which results in NULL entry in driver scan
cache for that SSID.

Fix this issue by explicit check for OWE if it is hidden.

Change-Id: I95e6b9af37e62c56b4b890090c33d53f89fed731
CRs-Fixed: 2185576
2018-02-09 07:45:42 -08:00
Subrat Mishra
172974d1c3 qcacmn: Fix for Beacon burstmode issue
Fix beacon burst mode issue in FILS Discovery disable case.

Change-Id: Ieb711577a761ed80d6865b14563d80277857dfce
CRs-Fixed: 2180991
2018-02-09 00:42:28 -08:00
Liangwei Dong
bc685e88f1 qcacmn: Add 80211W support to P2P component
Newly designed P2P component doesn't contain
80211W PMF related information which is one
of the mandatory requirement to make PMF work
for P2P.

Provide PMF support to P2P component by adding
necessary callbacks to protocol stack to get
11W related information.

Change-Id: I399f0d296f9461239ac9d720905b196e87983f29
CRs-Fixed: 2175898
2018-02-09 00:42:25 -08:00
Yeshwanth Sriram Guntuka
f70a37bb90 qcacmn: Move wma_get_buf_start_scan_cmd to ucfg_scan_update_params
Move wma_get_buf_start_scan_cmd logic to common code in
ucfg_scan_update_params.

Change-Id: I4c9dcb48b4862ad10f64e260d87938251e270185
CRs-Fixed: 2180960
2018-02-08 23:34:41 -08:00
Paul Zhang
ca6152167b qcacmn: Support 11d for non-offload platform
Support 11d for non-offload platform by maintaining
count of beacons encountered for each country code
and choosing country code with max votes as device's
country code.

Change-Id: I83b66e980854eded17e254386561fa32b1f8c4ac
CRs-Fixed: 2154048
2018-02-08 21:37:37 -08:00
Arif Hussain
5aa8c07392 qcacmn: Add support to mark bonding channels to nol
If sub-channel marking is not supported then make sure to
add all the dfs channels in bonding channel list to NOL.

Change-Id: I27d738974bb2b2cfdb9dbcd944f5843cc3aeed93
CRs-Fixed: 2164692
2018-02-08 19:46:07 -08:00
Arunk Khandavalli
e460c52c3f qcacmn: update the pcl info from the converged structures
Update the pcl information from the converged strutures.

CRs-Fixed: 2179012
Change-Id: Id9269e85728409645266e1edc17d03237144a9cc
2018-02-08 07:55:50 -08:00
Abhijit Pradhan
3373194c4e qcacmn: Define channel structure per vdev
Save BSS and desired channel information per vdev to access
it across all the modules.

Change-Id: I7729e0ae902643d0a2c61184b9ddc2babd07179e
CRs-Fixed: 2166359
2018-02-07 03:07:51 -08:00
Om Prakash Tripathi
7dd49fec17 qcacmn: scan all channels in A/G if 0 channels provided
When wide band scan is enabled, host configures all possible
channels with all possible phy modes. In his case if a scan
is invoked with 0 channels, target will end up scanning each
channel with all possible phy modes which increases scan time
exponentially.
If wide band scan is enabled and scan is issues with 0 channels,
configure target to scan all available channels only in 11A/11G mode.

Change-Id: I7c678ccf43c3238aacbfc59cc7e7bd19763453cc
CRs-Fixed: 2165025
2018-02-07 03:07:47 -08:00
Himanshu Agarwal
0261f94dd5 qcacmn: Add policy mgr API to get no. of active sessions
Add policy mgr API to get no. of active sessions for a specific
mode.

Change-Id: If91685ae7b72c6be52426648e9d01cba92eee85e
CRs-Fixed: 2178921
2018-02-06 17:33:06 -08:00
Himanshu Agarwal
c4cec662cf qcacmn: Remove dependency on WMA layer for green AP component
Remove dependency on WMA layer for green AP component by registering
green AP events through target_if layer.

Change-Id: I8fe9079c6ba6b23cd5f1d98a7d1b333fde31f19b
CRs-Fixed: 2178143
2018-02-06 17:33:03 -08:00
Kiran Venkatappa
83298473ca qcacmn: Change max mgmt descriptor pool size to 512 for AP
Increase descriptors to 512 for AP platforms which needs to support 16
vaps.

Change-Id: I102599803d151986e48f00643274399db34a594f
CRs-Fixed: 2170778
2018-02-06 09:43:48 -08:00
Vignesh U
1f3bcf604a qcacmn: Regulatory 24 updates
1. Remove below country codes:
	ARGENTINA (5003)
	AUSTRALIA (5000)
	CANADA (5001)
	KOREA ROC 3 (412)
	UNITED STATES (841)
	UNITED STATES (842)
	UNITED STATES (843)
	BELGIUM2 (4101)
	INDIA2 (5006)

2. Update regdomain
	ARGENTINA from FCC3_WORLD to APL16_WORLD
	BELIZE from FCC3_ETSIC to ETSI8_WORLD
	CANADA from FCC3_FCCA to FCC6_FCCA
	CHILE from APL6_WORLD to APL23_WORLD
	JAMAICA from FCC3_WORLD to FCC13_WORLD
	NAMIBIA from APL9_WORLD to APL20_WORLD
	NEPAL from APL6_WORLD to APL23_WORLD
	SENEGAL from FCC3_WORLD to FCC13_WORLD
	UNITED STATES from FCC3_FCCA to FCC8_FCCA

3. Add IRAQ country code

4. MCL country Lookup table

Change-Id: I4b0468d9256ac919a2684d1980f8b017a8107248
CRs-Fixed: 2180713
2018-02-06 07:44:54 -08:00
bings
0c590ceba4 qcacmn: Move dfs leakage from qcacld to qcacmn
Move dfs leakage from qcacld to dfs module of qcacmn.

Change-Id: I17276fedf575f1a4029265be58d8fd088c1d956d
CRs-Fixed: 2177679
2018-02-04 21:43:31 -08:00
Srinivas Pitla
cc75651c34 qcacmn: Converge initial HOST FW handshake
Implement service ready, ext service ready
ready event handler, init command preparation
and other required APIs

Change-Id: Iaf707227c1e94bb492dd86bd2d0916a1cf875498
CRs-Fixed: 2177109
2018-02-03 15:11:07 -08:00
Srinivas Pitla
ee54aea6d8 qcacmn: Add target_if changes to DFS
Use target_if APIs to get dfs offload capability

Change-Id: Ic23770b0407e33e4b031bbbc4a8224663ac57e32
CRs-Fixed: 2177109
2018-02-03 15:11:02 -08:00
Srinivas Pitla
3dcdf9e7a8 qcacmn: Move regulatory capabilities
Move regulatory capabilities from object manager to regulatory

Change-Id: I3e785d2c03b5f1c944827d57bc9b546c6cdcc65b
CRs-Fixed: 2177109
2018-02-03 15:11:00 -08:00
Srinivas Pitla
c7f4e03208 qcacmn: Enable target_if in object manager
1) Remove service ready members
2) Replace few macros with variables

Change-Id: I1dbfa824cbbb504ce24ef0e05869197a06760162
CRs-Fixed: 2177109
2018-02-03 15:10:58 -08:00
Dustin Brown
57a7ff2f9b qcacmn: Remove QDF_MAC_ADDRESS_STR
QDF_MAC_ADDRESS_STR has been replaced by QDF_MAC_ADDR_STR. Remove
QDF_MAC_ADDRESS_STR.

Change-Id: I810d56ef62009375422a69b66d75b4d03ddaee0f
CRs-Fixed: 2176528
2018-02-02 09:31:03 -08:00
Zhu Jianmin
181ebf835c qcacmn: Avoid memory corruption when calling cb to release cmd memory
When serialization puts the command in active queue & activates
the command, it gives the callback to command owner as part of
the activation procedure. If this activation callback fails then
serialization suppose to give a callback to the owner to release
the memory.
There are some instances observed in legacy platforms where owner
releases the memory itself as part of activation callback failure
first and gets serialization callback as well to release the same
memory. These scenario creates "double free" or "memory
corruption" phenomena.
In order to avoid this scenario, add a sanity check to make sure
command still present in active queue and memory is not released
by command owner before calling callback to release the memory.

Change-Id: Ide341e3288aadd7d6e4441a5768118cd1439d38d
CRs-Fixed: 2161678
2018-02-02 07:46:06 -08:00
Om Prakash Tripathi
f534bf9363 qcacmn: notify scan complete after comamd complete
Do command complete before invoking scan event handlers.
Its required as few scan event handlers check if scan is
active on underlying pdev which returns true as command
complete is not done yet.

Change-Id: Ia415b55e9c9a1cea71faa160c6b52c88dc8329a9
CRs-Fixed: 2180033
2018-02-02 07:46:03 -08:00
bings
276c0f1969 qcacmn: Use new APIs to get and set DFS Non-Occupancy-List(NOL)
Current driver is using pld_wlan_set_dfs_nol() and pld_wlan_get_dfs_nol()
directly through eSAP_DFS_NOL_SET and eSAP_DFS_NOL_GET case statements
respectively within HDD module. These methods are obsoleted as per
new driver design.

Use DFS component's utils_dfs_init_nol() and utils_dfs_save_nol() APIs
instead to get and set DFS NOL respectively.

Change-Id: I63e8adac3f99c2052c26e6b01d19071f098e0a4f
CRs-Fixed: 2178580
2018-02-02 05:45:45 -08:00
Paul Zhang
36b80ed9bf qcacmn: use driver database for reg no-offload
For reg no-offload case, it needs to call the
reg_program_chan_list() function directory to apply
the right channel info.

Change-Id: Ieb7acf9f96973a6e56146e2763f455ef92838c4a
CRs-Fixed: 2174286
2018-02-02 01:53:59 -08:00
Shashikala Prabhu
8136b58f56 qcacmn: Fix radar detection failure for DA and PO
DFS capability was not set properly for Partial-offload(PO) and
Direct-Attach(DA) radio. Thus radar detection failed.

Change-Id: I5493d7195a57f160792a411653c05bbf220d3561
CRs-Fixed: 2160418
2018-02-01 04:16:49 -08:00
bings
aa1810a8fb qcacmn: Fix nol timer memory leak
DFS nol timer need cleanup when rmmod driver, otherwise there is
memory leak.

Change-Id: I4f4c91f7fb515133edd4cb852b3760819a390505
CRs-Fixed: 2173788
2018-02-01 02:20:57 -08:00
bings
5fc318cedb qcacmn: Do not switch channel in DFS testing mode
If gDisableDFSChSwitch is configured as 1, channel should not be
changed even radar is found.

Set usenol as 0 when gDisableDFSChSwitch is configured as 1.

Change-Id: I05c4afea3eb9af9c541b2324a2d50ea59c05f7d7
CRs-Fixed: 2168792
2018-01-31 21:49:35 -08:00
Dustin Brown
7229739ec7 qcacmn: Add objmgr lifecycle logs
Knowing the current and historical state of high level abstractions in
the driver is critical to successful debugging of issues. To assist
these efforts, add info-level logs for the following object manager
psoc/pdev/vdev/peer lifecycle events.

	* create
	* logical destroy
	* physical destroy

Change-Id: Idbb5350e85cb1b452e076a6fece31f83dcc7aafc
CRs-Fixed: 2179681
2018-01-31 19:41:11 -08:00
Abhishek Singh
c05285da8a qcacmn: Fix RSSI for the beacon received in adjacent channnel
Due to Rx sensitivity issue, sometime beacons are seen on adjacent
channel so workaround in software is needed. If DS params or HT
info are present driver can get proper channel info from these IEs
and set channel_mismatch so that the older RSSI values are used in
new entry.

For the cases where DS params and HT info is not present, driver
needs to check below conditions to get proper channel and set
channel_mismatch so that the older RSSI values are used in
new entry:
   -- The old entry channel and new entry channel are not same
   -- RSSI is less than -80, this indicate that the signal has
       leaked in adjacent channel

Change-Id: Ie9dc26f938b58b0c5d071ce4f2ba02b8e7fd4f60
CRs-Fixed: 2180012
2018-01-31 02:05:55 -08:00
Paul Zhang
48884688c3 qcacmn: Add api to get the current country code
Add new api to provide the current country code
is using.

Change-Id: I84682e132fd1e150d7c4f86b04bbfc8c45e2d841
CRs-Fixed: 2175022
2018-01-30 23:55:23 -08:00
bings
6c40b760d5 qcacmn: set center freq segment0 for channel params in 2g HT20 mode
In the routine sap_ch_params_to_bonding_channels, the channels is set
invalid value 0 if center freq segment0 for channel params is 0.

ch_params->center_freq_seg0 should be set for 2g HT20 mode.

Change-Id: I063f1341da5a4934c97dec4bcda9367101de7cc5
CRs-Fixed: 2179368
2018-01-30 21:29:00 -08:00
Naveen Rawat
6f7ddcadb4 qcacmn: Avoid null pointer dereference and un-initialized data access
Fix possible null pointer dereference and un-initialized vairable access
in scan component.

Change-Id: Ide1adf2f53712fa987fdda8170eee4e95bff0036
CRs-Fixed: 2169517
2018-01-30 13:40:35 -08:00
bings
e05bc00ff3 qcacmn: Disable radar for current channel before selecting new channel
In current implementation, after radar detection, a new channel is selected
and then radar is disabled on the new channel. The new channel may be a DFS
channel and radar will be disabled on the new channel.

Radar disable should be called for the current channel and not on the new
channel. Therefore, disable the radar first and then select the new
channel.

Change-Id: Ied57f8910b30ee2181406e26ace1e7a44ff691b4
CRs-Fixed: 2172007
2018-01-30 09:25:51 -08:00
bings
c83573954f qcacmn: Extend radar event structure for ETSI chirp radar detection
The pulse_delta_peak of chirp radar is not zero, which is one more radar
detection rule for ETSI chirp. Driver need delta peak related information
from FW for ETSI chirp radar detection.

Two more fields pulse_delta_peak and pulse_delta_diff are added in
wmi_dfs_radar_event_fixed_param.

Change-Id: Ief8dbea1c1336f45a24195853d5e1356bf3cad27
CRs-Fixed: 2179933
2018-01-30 09:25:49 -08:00
bings
88486ab463 qcacmn: Fix delta peak number counting for DFS
Every time when dfs_count_the_other_delay_elements is called,
delta_peak_match_count is set to 1, which is not correct.

delta_peak_match_count should be initialized once like numpulses
in dfs_bin_pri_check.

Change-Id: I9cf432cbe7b0ddb42a0c33adcbef07d0c48f42f8
CRs-Fixed: 2165538
2018-01-29 21:37:41 -08:00