Changes include
1. nss_cfg parameter to dp_soc.
2. nss_enabled field for pdev.
3. cdp api to enabled nss offload config.
4. skip rx ring configuration when nss enabled.
5. skip timter /interrupt configuration if
nss is enabled.
6. peer map/unmap event hander.
Change-Id: Ic4a919b6b7e846e18cb15ebcb94f8736a751ecb5
HAL modification to provide additional information to
support lithium nss offload configuration.
A new API added to extract addtional information from HAL
Few additional parameter added in get_param function.
Change-Id: I2fb0ed89c2d3cb3ee253b158f7982e1a00ab4353
TLV header is incorrectly set for coex config command due to wrong
TLV length passed to the set TLV header API.
Fix issue by setting TLV header passing correct TLV length.
Change-Id: Ica3e2468d26bdaed26cade048f4d440c067ad929
CRs-Fixed: 2037499
New iwpriv commands are implemented in WIN to support dynamic configuration
of verbose level for each of the module IDs.
Add following changes in trace module to support above requirement -
1. Make qdf_get_pidx and qdf_set_pidx common to WIN and MCL
2. Export g_qdf_category_name to be accessible in WIN driver
3. Add macros to derive upper and lower 16-bits from a 32-bit value
combining module and trace level information used for dynamic trace
level configuration per module
4. Address trace level NONE case during registration to set the correct
mask
Change-Id: I97be5f26b0d611e96409837fb0c03d55ce5f6e07
CRs-Fixed: 2041247
Scan component provides API to check maximum scan
allowed. Replace all MAX_SCAN macros with API
Change-Id: I094b61978af015e5800784b90340e39aae94e7ba
CRs-Fixed: 2033852
Add Spectral TxOps and RxOps interfaces in
psoc towards converging the Spectral feature.
CRs-Fixed: 2028657
Change-Id: If5b46fb9d71529060df6e5b242fcc8976fce82f8
Get the dfs domain from reg component instead of using it from
offload or lmac layer.
Change-Id: I3007ac483c44723b13a0af22df6eb56deac4c7ed
CRs-Fixed: 2047212
Country ALGERIA uses APL13_WORLD regdomain pair.
Add 40MHz support to 5GHz and 2GHz for EGYPT.
Add 20MHz support to 5GHZ for KOREA_NORTH.
Change-Id: Ibb063aefa06e905eb57ad61d7e2d53db1a7d33a5
CRs-Fixed: 2047212
Problem:- If the driver is unloaded before a nol timer fires, the unload
function frees the NOl element. But the memory associated with the nol timer
argument which has a one-to-one mapping with nol still remains in the system
since the nol timer argument memory is freed in the timer function.
Solution:-
1)Instead of allocating a separate structure as input to the timer function
use the NOL element itself as input since NOL element already has the
information needed by the timer function.
2)A NOL element for which the timer is yet to fire is freed
by the driver unload (dfs_nol_timer_cleanup).
3)When dfs_nol_timer_cleanup is about to free a NOL element the corresponding
timer may be already running. Therefore, it is required to sync/wait for the
timer to finish before the NOL element can be freed. If we do not wait and
free the NOL element the timer may access an invalid memory location.
Change-Id: I4f37b66777491d92a51ff1ffc2651af1ccf5de29
CRs-Fixed: 2045993
Changed the log levels from ERROR to DEBUG for few prints
in the scheduler API's since the prints were not for errors
but for debugging purposes.
Change-Id: I2a351de5933cfe6ec7e52d48fbc6e32880854276
CRs-Fixed: 2034873
1. Add multi radio support for thermal throttling
2. Add TLV WMI support for thermal throttling
Change-Id: I2cdbf9a4acdd9346c0fe3dd24c510885cc8fef8e
CRs-Fixed: 2041264
Pass an array of values each of which contains a combination of
module-id and level. This way the levels can be set before all the
dependent KO modules are loaded
CRs-Fixed: 2042170, 2046694
Change-Id: If8c8260cc25e25bd821462f7d8860a13a5961148
SKBs allocated from higher memory instead of
lower memory range. This is needed for Hawkeye
emulation
Change-Id: Ibeb27c43ee882d772b9166731804faefab2e406e
CRs-Fixed: 2046721
Add support in utils layer to extract pdev id from vdev id using object
manager APIs.
Use the API to extract pdev id from vdev id received through the
chan info event handler for lithium based chipsets.
CRs-Fixed: 2043869
Change-Id: Ibf1f1f91d505d53219ca9a2f5d94beb8553edfe3
Current definition of HOST_IE_ADDRESS and HOST_IE_ADDRESS_2 does not
count for UMAC base address.
Change-Id: I8ed5c718a5187c3f5b50f34e72b1b4748d302777
CRs-Fixed: 2041191
IRs-Fixed: 220231
Add runtime suspend logic for scan, to block runtime suspend when
scan is started and unblock when scan is completed.
Change-Id: I61c9afaf996d1ac97bfb5ffb0cd8a3abc971051e
CRs-Fixed: 2035675
Power_management_offlaods is really a long directory name
hence rename it to pmo such that it aligns with existing
naming convention.
Change-Id: Idbfc30fa6b9cb677173bbd266f75ac6a5988a406
CRs-Fixed: 2045421
Add cancel scan sync api which will wait for scan to be aborted on
pdev or vdev.
Change-Id: Ie02eb981154856cda38ef70f42fdfcf82bb88961
CRs-Fixed: 2038092
Added sa_api_tx_ops, sa_api_rx_ops and their initialization. SA API component
id is also added along with sa_api objmanager calls.
Change-Id: I2e912106dcc900e5eba19090c0157827e08264f3
CRs-fixed: 2038298
Update enums in WMI service enums that got introduced in the latest
FW headers.
Change-Id: I46f70ff5eb41aee15f8cac784cc85201a3362fca
CRs-Fixed: 2045146
Move the lock initialization to module open from module enable for policy
manager.
Change-Id: I44716537dcb3f559c1c27401bb579239c98a9f02
CRs-Fixed: 2009818
1) Defined modularized public api for cdp module
to track inactivity and over load detection.
2) Initialization calls are added to attach and
detach SON specific api.
3) operating system specific calls are replaced with qdf calls.
Change-Id: I130d1e99208d6454f5d9888774534cc6d619ad83
Few vendor commands are missing in qca_vendor.h, compared
to qca-vendor.h file present in hostapd.
Add the missing vendor commands and attributes in
driver qca_vendor.h file.
CRs-Fixed: 2034479
Change-Id: Ib95e6cbbf163b904a22fb4eb65d96e9ff8dddf49
Policy manager API usage in common scan module should be enclosed in
macro WLAN_POLICY_MGR_ENABLE, so that it can be optionally used along
with policy manager.
Change-Id: I76602657b4945a973f30d6b129a6b3896b9fdf9e
CRs-Fixed: 2042734
Free the reg rule pointers while handing error conditions.
Also free pointers when channel list building is completed.
Change-Id: I4c8d67ae191f86175f9cc684ba703fea11e66f1f
CRs-Fixed: 2002892
Some countries have no reg rules. Check is added to avoid
NULL pointer dereference in cur_reg_rule.
Change-Id: I1840ca85121f0f61abab8fcf288fdde6a9ca22c5
CRs-Fixed: 2002892
Antenna gains are added to per regdomain structure. Howerver,
during parsing they are copied to per current reg rule and
finally to per channel.
Change-Id: Ib456248e2dee26ed3b2a9878d1b27fc5c9827e81
CRs-Fixed: 2002892
The IOCTL may pass country ISO or country code or regDomain pair
ID as input. In all 3 cases, get the regrules and build master
channel list.
Change-Id: I643734dff175709853cb013b9b58365cceffd5d4
CRs-Fixed: 2002892
When a country code is not available from inside the device
(from EEPROM), a default country needs to be set. Also get
the regdomains from the default country code and build the
master channel list.
Change-Id: If307ad18318b2aea3fcdd149c01b39a678163bb5
CRs-Fixed: 2002892
Since the array size can be specified by a different macro or a
different value in future, let the compiler calculate the array
size directly instead of using the hard-coded value of the macro.
Change-Id: I3fb1719db5165d0155e73c0653ec6f13fa95f69a
CRs-Fixed: 2002892
Instead of having a large function, the parse function is
split into 3 for A)Country ISO B)CountryCode and
C)RegDomain Pair ID.
Change-Id: I5b3574cd54644d1eac13e3eff762eb7cbdd35a73
CRs-Fixed: 2002892
Country and regdomain parse functions are added for the regDB in
host. Given a country code or ISO or RegDomain, these functions
find the regulatory rules and builds master channel list.
Change-Id: I7c632098561e3bbab1ac6ded2ae80e03d53b00bb
CRs-Fixed: 2002892
When a new master channel list is created, populate master chan list to all
pdevs. Do not make any assumption on availability of pdevs. Make other
stability and initialization fixes. Also add extra fields to data
structures.
Change-Id: I0a59c41e9425435f6069807a3c5de0b389d8fa5e
CRs-Fixed: 2002892
Define API qdf_create_singlethread_workqueue to create a single
threaded dedicated work queue.
Change-Id: Iab70044888911c1e4adba63e8eee643d5693d716
CRs-Fixed: 2026443
The channel information is obtained from the conc_connetion_list
table using the index equal to the session_id. But the session in
conc_connection_list table is not kept in the increasing order of
session_id. Thus, the wrong channel information can be obtained.
Thus, the fix is to obtain the channel information from the
conc_connection_list table corresponding to the index whose
vdev_id matches the session_id.
Change-Id: If289ea7c0567b892dba495b878540f9cb5df5668
CRs-Fixed: 2039474