Commit Graph

707 Commits

Author SHA1 Message Date
Nisha Menon
5a8ea4c3a3 qcacld-3.0: Enable MCL feature flag HIF_CPU_PERF_AFFINE_MASK
This feature is enabled in order to move the WLAN IRQs
to the gold cores only for defconfig builds. The IRQ
affinity hint is updated on boot up and when the cpu
hotplugs in.

Change-Id: I8014c181c8ba66875f13736638db91f6a5174f49
CRs-Fixed: 2656331
2020-04-09 05:20:14 -07:00
Yeshwanth Sriram Guntuka
929edf94c4 qcacld-3.0: Enable build configuration for dp hang event
Enable the build configuration for dp hang event to
enable the datapath hang event logging feature.

Change-Id: I8044f977e417a311a17e446cc6b71211d217ae4b
CRs-Fixed:
2020-04-02 20:44:19 -07:00
Arun Kumar Khandavalli
74014d9143 qcacld-3.0: Update hdd hang data
Whenever a recovery is triggered in the hdd layer update the
various vdev data for hang event:
	1) Vdev id
	2) vdev opmode
	3) vdev state and substate

if the reason for recovery is max scan failures update the last
scan reject, reason and the vdev id on which scan is rejected.

Change-Id: I84928e56bac1fe58e7eada0a0574b2f23124ae65
CRs-Fixed: 2651694
2020-04-01 12:39:39 -07:00
Arun Kumar Khandavalli
29ca29fb41 qcacld-3.0: Add build configuration for the htc hang event
htc hang event configuration has been added, enable
the build configration for the feature.

Change-Id: I5441f95288db46ca58ef44f4c825b9f4f7cf59ac
CRs-Fixed: 2651750
2020-04-01 12:39:00 -07:00
gaurank kathpalia
82511bc630 qcacld-3.0: Add support for STA+NAN+NDI+NDI
Add support for four port concurrency for
STA+NAN discovery + NDI + NDI.

Change-Id: I7d6d3f482a61bef7f3d0a31eee3fdfe5e5e9d879
CRs-Fixed: 2633982
2020-04-01 10:46:22 -07:00
Arun Kumar Khandavalli
8a779258cf qcacld-3.0: Add build configuration for the wmi hang event
wmi hang event configuration has been added, enable
the build configration for the feature.

Change-Id: I8c7034d07f369f79191a2496e9000f83eecdba6e
CRs-Fixed: 2651741
2020-03-31 15:04:25 -07:00
Arun Kumar Khandavalli
b2e4ddd34c qcacld-3.0: Add build configuration for the qdf hang event
In qdf new hang event notifier chain has been added, enable
the build configration for the feature.

Change-Id: I98e2701499133d208af863b401fc47fafec35226
CRs-Fixed: 2648449
2020-03-31 11:37:54 -07:00
Arun Kumar Khandavalli
76bb1fa316 qcacld-3.0: Add build configuration for the qdf notifier chain
In qdf new os specicfic notifier chain has been added, enable
the build configration for the feature.

Change-Id: Ic08b3ebc3b173839496428a27d0eb4d7a1633cb6
CRs-Fixed: 2648245
2020-03-31 11:37:38 -07:00
Lihua Liu
ddb8d72760 qcacld-3.0: Add workaround for TXDMA HW limitation
Per HW team's analysis, we find a TXDMA HW limitation:
ADDR0&0x1FFFFFFF8 should not equal ADDR1&0x1FFFFFFF8.
Otherwise, TXDMA will run into exception, which cause TX fail.
ADDR0: the address of last words in previous buffer;
ADDR1: the address of first words in next buffer;

We hit this limitation in NAT forward TSO jumbo case whose buffer
address of two fragments like below:
tso_frags = (
(length = 0x42, vaddr = 0xFFFFFFD0F5FA2F82, paddr = 0x1F5FA2F82),
(length = 0x05A8, vaddr = 0xFFFFFFD0F5FA2FC4, paddr = 0x1F5FA2FC4)
In this case, ADDR0 = 0x1F5FA2F82 + 0x42 -2 = 0x1F5FA2FC2,
ADDR1 = 0x1F5FA2FC4, then
ADDR0&0x1FFFFFFF8 = ADDR1&0x1FFFFFFF8.
To avoid this, shift server bytes for ADDR0.

Change-Id: If9334a6861a03432eb70356df41a11ad971159e3
CRs-Fixed: 2641066
2020-03-30 10:03:33 -07:00
Karthik Kantamneni
06a63cafdd qcacld-3.0: Moselle changes for WHUNT simulation support
Add PLD layer and config changes for simulating
IPCI virtual device in WHUNT.

Change-Id: Ia07ce0884f0e5ffe9b4d23977476c1789390e1c9
CRs-Fixed: 2648150
2020-03-25 15:25:13 -07:00
Jinwei Chen
6544ac0f66 qcacld-3.0: enable macro DP_RX_SPECIAL_FRAME_NEED
enable macro DP_RX_SPECIAL_FRAME_NEED

Change-Id: I5d4768d19ab4b4d2cab3a767bdad9e16706500d9
CRs-Fixed: 2638527
2020-03-25 08:58:26 -07:00
Vevek Venkatesan
02f5dfc5d7 qcacld-3.0: add pld_smmu_unmap support for BENGAL
Add support for pld_smmu_unmap and enable it for
BENGAL target.

Change-Id: I7f6d6f965b7664342bca29b49f05f8eb62737a0c
CRs-Fixed: 2642663
2020-03-18 15:37:21 -07:00
Jingxiang Ge
b5caac2e85 qcacld-3.0: Create debugfs file for crash_inject
Create crash_inject file to replace iwpriv cmd.

file path: /sys/kernel/debug/wlan_xx/crash_inject
           wlan_xx is adapter name

Change-Id: Iad8b52bd67345b47717a776759ad6156d654bb93
CRs-Fixed: 2636352
2020-03-13 23:50:00 -07:00
Mohit Khanna
09dec2d715 qcacld-3.0: Enable FEATURE_HAL_DELAYED_REG_WRITE
Enable feature to do delayed register writes in HAL for lithium
products.

Change-Id: I5158b10b0fecc125e2ece42987965dd5684d3c34
CRs-Fixed: 2631227
2020-03-09 20:57:31 -07:00
Jingxiang Ge
a6a955d19f qcacld-3.0: Add debugfs for unit_test_host/unit_test_target
These debugfs files are to replace wext cmd setUnitTestCmd
/unit_test/wlan_suspend/wlan_resume.

unit_test_host:
    /sys/kernel/debug/wlan_xx/unit_test_host
    wlan_xx is driver name
unit_test_target:
    /sys/kernel/debug/wlan_xx/unit_test_target
    wlan_xx is adapter name
wlan_suspend:
    /sys/kernel/debug/wlan_xx/wlan_suspend
    wlan_xx is adapter name
wlan_resume:
    /sys/kernel/debug/wlan_xx/wlan_resume
    wlan_xx is adapter name

Change-Id: I1ddf44b47a3f0d2e11ff74022dc1a26888da974c
CRs-Fixed: 2631424
2020-03-09 09:54:51 -07:00
Liangwei Dong
75698c2414 qcacld-3.0: Fix Beacon report invalid channel issue
11K test bed sends beacon report request for channel 48 with
invalid reg class 0 to DUT. So, driver gets chan_freq 0 by API
wlan_reg_chan_opclass_to_freq because of reg class 0.
To get correct channel freq for beacon report request, use new
API wlan_reg_country_chan_opclass_to_freq to
get freq from country operating class table firstly by (opclass,
channel number) pair. When the lookup is failed, the API will
try to look up by chan number only.

Change-Id: I5b56804c20d6fade17b2acaa0f7c261feebd6370
CRs-Fixed: 2603989
2020-03-03 22:19:39 -08:00
Rakesh Pillai
1bd6962198 qcacld-3.0: Enable rx descriptor sanity WAR
Enable the rx descriptor sanity check in
the Kbuild.

Change-Id: I0f37ac1bbcbc5d148f28469c0ef1f9b090083c88
CRs-Fixed: 2633037
2020-03-03 18:53:07 -08:00
Bapiraju Alla
b9c36856fa qcacld-3.0: Periodically print ARP and DNS stats after STA association
Currently no stats were printed related to ARP and DNS frames at STA
after initial association or after roaming complete.

To print these logs, add INI configuration and a periodic timer to
print ARP and DNS stats after initial association or after roaming
complete. This is an optional feature controlled by
'WLAN_FEATURE_PERIODIC_STA_STATS' flag.

Change-Id: I373632cc35584728c5b556bb28eda1077d51fd9b
CRs-Fixed: 2619383
2020-03-03 18:52:46 -08:00
bings
d929ee2159 qcacld-3.0: Add Kbuild options for DCS
1) Add optional code compilation for Dynamic ACS(DCS) module.
2) Add Kbuild option(CONFIG_DCS) to control whether DCS code
   should be compiled.

Change-Id: Ia594db21fef43a8ef6e90afb4191f50ba42f74b7
CRs-Fixed: 2604529
2020-02-28 05:55:55 -08:00
Surabhi Vishnoi
4eaa25c659 qcacld-3.0: Add sysfs entry to display ftm time sync offset
Add the sysfs entry ftm_time_sync in STA mode to show the offset
derived for the STA(slave) with respect to connected AP(master).

Change-Id: I05b16ccdb983c53fb86eeb14ba98bd3cc9a2dce6
CRs-Fixed: 2621152
2020-02-26 14:56:29 -08:00
Vulupala Shashank Reddy
a2deef8c83 qcacld-3.0: Process Rx data packet for pkt capture mode
Process Rx data packets and post to the mon thread for
packet capture mode

Change-Id: Id8ae54677615c27d61c6def1a521c509f602863b
CRs-Fixed: 2618941
2020-02-26 10:06:27 -08:00
Rakesh Pillai
eddb4c83ee qcacld-3.0: Enable hal reg write failure history for lithium
Enable the register write failure history for
reo remap registers in lithium based targets.

Change-Id: Iaed3ea33e8ae3ab012b2403c50cb785f81497c04
CRs-Fixed: 2626325
2020-02-25 03:00:31 -08:00
Abhinav Kumar
406cfe0ee4 qcacld-3.0: Introduce a new compile time flag and INI
Introduce a compile time flag SAE_SINGLE_PMK and new INI
"sae_same_pmk_feature_enabled" to enable/disable SAE
Roaming with same PMK/PMKID feature.

Change-Id: Ifca8ec8bcf6e9a2f1d8409b35390bfee0033bd30
CRs-Fixed: 2616025
2020-02-23 14:43:08 -08:00
Chaoli Zhou
0d2a738f44 qcacld-3.0: Remove unused feature flag
Since we have final solution for Genoa IPA now,
so remove the workaround feature now.

Change-Id: I4b91c4a5cb0d327796eb1810a26b50c78a9a3ac9
2020-02-23 06:16:34 -08:00
Nirav Shah
eaa8a1fefd qcacld-3.0: Enable Shadow register from PCIe block in QCN7605
QCN7605 has 2 set of shadow registers, WCSS block and PCIe block.
As PCIe shadow register are at power domain boundary, enabling
PCIe shadow register for QCN7605.
Also PCIe shadow register falls below 512KB, no need to use register
windowing which is required to get it access from IPA FW.

Change-Id: Ic0bbc2de4c3e32c4fb6453d273f0f29d19f3537c
CRs-Fixed: 2623851
2020-02-21 03:13:38 -08:00
Rakesh Pillai
adb5939c5a qcacld-3.0: Enable hal soc stats for lithium target
Enable the collection of hal stats for
lithium based targets.

Change-Id: Ibe2610b59ddc5c33d47925d6fc4d98b1a45e7050
CRs-Fixed: 2623835
2020-02-20 04:50:24 -08:00
Dundi Raviteja
4a89130e93 qcacld-3.0: Process Mgmt Tx and Rx frames for pktcapture mode
Process management Tx and Rx frames for packet capture mode
and post frames to the mon thread.

Change-Id: I14c0a1cf8a8aa4d4a4e16ad6200715b875611c81
CRs-Fixed: 2619317
2020-02-19 08:43:11 -08:00
Vulupala Shashank Reddy
5a60cebf6d qcacld-3.0: Send vdev param command to set pkt capture mode
Send vdev param command to FW for STA vdev to set the packet
capture mode. Send the command only if packet capture support
is enabled.

Change-Id: Ifed2431882b1f7d2869771e812daa5bcd5dc17e9
CRs-Fixed: 2619314
2020-02-19 06:23:46 -08:00
Chaoli Zhou
fb2d768154 qcacld-3.0: Add one flag for Genoa IPA workaround
Currently, there is some issue about IPA GSI update
copy engien 5 write index register failure, so add
this flag for Genoa IPA workaround, once the real fix
is ready, will revert this flag.

Change-Id: I17313ea281bad03f471222b54802fa9628893e1f
2020-02-16 09:18:36 -08:00
Vulupala Shashank Reddy
aa481cc459 qcacld-3.0: Create mon thread for packet capture
Create mon thread to process the packets for
packet capture.

Change-Id: I0c83b17273f140970b4feea49cd42da4c540046b
CRs-Fixed: 2618657
2020-02-16 04:01:17 -08:00
Surabhi Vishnoi
6ecac484fc qcacld-3.0: Add function to handle the FTM time sync events from target
Add the function to parse the FTM timesync start/stop and offset
events received from target and populate them in ftm timsync
priv vdev structure.

Change-Id: Ibdcf97bb0a04fc6490c6bd2c26701036df92c5d4
CRs-Fixed: 2618646
2020-02-15 12:56:09 -08:00
Nisha Menon
ce65875d4a qcacld-3.0: Enable MCL feature flag MAX_ALLOC_PAGE_SIZE
This feature flag is used to set the page size to 4KB
for MCL and to use the max_alloc_size config ini param
for page size in the WIN specific code.

The page size is used to allocate link descriptor pages
for the WBM idle link ring instead of the desc bank
contiguous memory allocations.

Change-Id: I9ff575efc475473654cb4b66a95285c779599b24
CRs-Fixed: 2612385
2020-02-15 00:31:41 -08:00
Chaoli Zhou
6189e28cfd qcacld-3.0: Add one flag to support Genoa IPA over GSI
Add flag IPA_WDI2_GSI to the Kbuild that can be used to
configure whether need to get "is_over_gsi" from IPA driver
for Genoa IPA over GSI case.

Change-Id: Ib6de50d5b3ffb581d85deff089ae77a1a39998ca
2020-02-14 04:17:28 -08:00
Venkata Sharath Chandra Manchala
de8bea9272 qcacld-3.0: Add support to request for hardware stats
As part of the vendor extended stats, add API to
request Rx hardware stats for a given vdev id.

Change-Id: I46d73de21724c4c5ebf4a78075b7b2c1d02fe92a
CRs-Fixed: 2605729
2020-02-13 13:04:49 -08:00
Yu Wang
6c9129693d qcacld-3.0: add vendor cmd support for BT coex chain mode
Add a new qca sub command QCA_NL80211_VENDOR_SUBCMD_BTC_CHAIN_MODE.

This command is used to set BT coex chain mode via
WMI_COEX_CONFIG_BTCOEX_SEPARATE_CHAIN_MODE, it has 2 args:
arg1: BTC chain mode, including shared (0, default) and separated(1).
arg2: force restart flag. true means doing vdev restart after applying
      the new configurations; while false or NOT set means not.

CRs-Fixed: 2534768
Change-Id: I869096784e5089a6c90e94e76234cd13c9b1a13a
2020-02-13 05:53:34 -08:00
Yu Wang
0f8390bd10 qcacld-3.0: add build support for coex qcacmn component
Add Kbuild changes to include files of coex component.
Introduce a new build config 'CONFIG_FEATURE_COEX'.

CRs-Fixed: 2534768
Change-Id: I3c97dda6c446c7474d4d7babf2dc88fe6e4dd0ef
2020-02-13 05:53:16 -08:00
Manjunathappa Prakash
a3d85a9a4e qcacld-3.0: Add compile time flag for FISA feature
Add compilation flag for FISA and enable it for QCA6490 chip

Change-Id: I7e0e00a764881c44bcb56ca3916e8b2fbee33921
CRs-Fixed: 2600268
2020-02-12 11:56:35 -08:00
Manjunathappa Prakash
1fef6fba0c qcacld-3.0: Add logic to learn and program the flow in to FT
Check the HW TLVs to identify if the flow is already programmed.
If flow doesnot exist make an entry to SW and HW flow table.
Invalidate FSE cache to make fse read updated FT entry

Change-Id: I6acc539c5c7994e438ebb2af9cb3bb5ecbf6e120
CRs-Fixed: 2600268
2020-02-12 11:55:58 -08:00
Sravan Goud
bf58054b02 qcacld-3.0: Add feature flag to not process rxdma decrypt err
Add feature flag DROP_RXDMA_DECRYPT_ERR to not process or drop
frames coming with error code as rxdma decrypt error.

Change-Id: I9ca8905c6487051f57a5203e5fe1a530a74a951a
CRs-Fixed: 2617442
2020-02-10 11:59:00 -08:00
Surabhi Vishnoi
765dcc910f qcacld-3.0: Add FTM TIME SYNC component in target_if
This patchset adds the FTM TIME SYNC component in
target_if to register the ftm time sync wmi events/cmds.

Change-Id: I4ea14266a912c9d261a67809556774860b5ddab1
CRs-Fixed: 2617055
2020-02-10 06:41:17 -08:00
Vevek Venkatesan
656edfa1f8 qcacld-3.0: add support to customize dscp-to-up map table
Add support to customize DSCP-to-UP map table and send the
customized map values to FW to update its corresponding
map table.

Change-Id: Ibe9704a90468c898dd2e60fdf83a271152f654ce
CRs-Fixed: 2616247
2020-02-06 22:44:57 -08:00
Alok Kumar
5b1cf615b6 qcacld-3.0: Add Kbuild configuration for QCA6750
Add Kbuild configuration for QCA6750

Change-Id: Ic196a4ea23cd637734412788f8463e3dd6f43c60
CRs-Fixed: 2603029
2020-02-06 07:10:56 -08:00
Ashish Kumar Dhanotiya
92a6a75a8b qcacld-3.0: Add feature flag for SAR safety feature
Add support to featurize SAR safety feature.

Change-Id: I21695ec3f9dca9da6f02eb7a1435366943a8a621
CRs-Fixed: 2612950
2020-02-05 11:38:52 +05:30
Govind Singh
041cf61139 qcacld-3.0: Add FTM TIME SYNC component
Add support for FTM TIME SYNC feature.

Change-Id: Idd022b3b105febd25b9353d7f7c4a046c9143585
CRs-Fixed: 2615242
2020-02-04 17:17:48 -08:00
Vulupala Shashank Reddy
9331f42f3e qcacld-3.0: Add support for packet capture mode
Add support for packet capture mode to monitor packets
on WLAN interface.

Change-Id: I8409479ef7855d51e303028d7e18e6bf89055407
CRs-Fixed: 2611293
2020-02-03 21:41:46 -08:00
Venkata Sharath Chandra Manchala
63765efd5c qcacld-3.0: Add dp_mon_filter file to Kbuild
Add dp_mon_filter.c to Kbuild to compile
the file to support monitor mode filter
setting.

Change-Id: I1bbfd82bd5a9a6fdf85208516d0d35cab9cd3249
CRs-Fixed: 2610965
2020-02-03 04:22:14 -08:00
Pankaj Singh
50e40422d1 qcacld-3.0: Add support for WLAN thermal mitigation
As part of new requirement WLAN subsystem needs to perform thermal
mitigation action as per the thermal state of the device. The
wifi hal sends vendor command QCA_NL80211_VENDOR_SUBCMD_THERMAL_CMD
with the thermal level parameter and wlan host performs the required
appropriate action. wlan host driver maps the thermal level to
corresponding duty cycle off percent value and duty cycle value,
send WMI_THERM_THROT_SET_CONF_CMDID cmd to FW.

Make changes to perform vendor command handling, mapping thermal level
to duty cycle value and communicating the thermal information to FW.

change-ID: I77175048c817ab755cdb838018e414ef3ee0b112
CRs-Fixed: 2610395
2020-01-31 12:45:29 -08:00
Venkata Sharath Chandra Manchala
0d0ef55749 qcacld-3.0: Provide soc objmgr to hif
Pass soc objmgr from hdd context to hif context
to retrieve INI parameters to be used in hif
layer.

Change-Id: I0ad4573fecba0fc78968145394683057d09da312
CRs-Fixed: 2598759
2020-01-27 15:42:46 -08:00
Nisha Menon
cda811c37b qcacld-3.0: Enable MCL feature flag RXDMA_ERR_PKT_DROP
If the flag is enabled drop the packet if msdu_done bit
is not set while processing rxdma err frames. This is
not expected while reaping WBM RX release ring.

Change-Id: Ic8a09ba5a6952510e82a209d6ef609343a9bc09a
CRs-Fixed: 2608661
2020-01-24 02:30:20 -08:00
Venkata Sharath Chandra Manchala
306b698156 Revert "qcacld-3.0: Provide vendor extended stats from host"
This reverts change-id: Ie73b1e823a54385c5b97e1844a93d4ecc38d9d3c.

Change-Id: I34924e143b19e7254343b7839798700d64a0b566
CRs-Fixed: 2604690
2020-01-20 17:50:44 -08:00