Commit Graph

168 Commits

Author SHA1 Message Date
Surya Prakash Raajen
6bd218f3be qcacmn: Send standby pdev info to FW
Send standby pdev/radio which is expected to be up while
in powersave mode to FW, to switch master control for
timers.

Change-Id: I4b48d93859359d1b6aee0b9993fd1bd3bff863f2
CRs-Fixed: 3621705
2023-09-25 05:17:23 -07:00
Chunquan Luo
633bdcaa81 qcacmn: Switch static func of chan_width to common
Remove static from func target_if_phy_ch_width_to_wmi_chan_width
for it can be share at other place.

Change-Id: I2ec80040fbe61a7691b1ad8e7b6501eb154abb44
CRs-Fixed: 3578269
2023-08-25 06:05:15 -07:00
Manoj Ekbote
b9322f12bd qcacmn: Support for RF path selection
Includes changes:
1. Save frequency values from EXT and EXT2 events to psoc object
- wireless_modes, low/high 2 GHz chan and low/high 5 GHz chan from EXT event
- wireless_modes_ext, similar frequency range fields with _ext from EXT2
event. Frequency range fields with _ext are non-zero when a radio supports
overlapping frequency. Eg.Radio that supports 5 GHz full and 5 GHz high band will
have low/high 5 GHz fields populated with primary band values in EXT event and
low/high 5 GHz fields are populated in EXT2 event with secondary band
values. These values are stored in tgt info for later use.
2. Modify regulatory APIs to get and set the wireless modes in reg
component
3. Retrieve frequency fields from EXT2 event

Change-Id: I49ebcc7ee7b26bd115f37abc8cb5b6fa5a415eda
CRs-Fixed: 3576551
2023-08-11 01:24:54 -07:00
Shwetha G K
6828824ccd qcacmn: Extract enhanced AoA caps to tgt_info
Changes to extract enhanced AoA (multi gain table support)
capabilities from SERVICE_READY_EXT2 event

CRs-Fixed: 3553378
Change-Id: I8db093cfce7b8c8cacedef39f97911eabe062c19
2023-08-08 15:27:09 -07:00
jingxiang ge
6b70bdc5b0 qcacmn: restructure function in target_if_free_psoc_tgt_info
Restructure memory free function so both win&mcl can call
it. to avoid memory free mismatch.

Change-Id: I31634f94421f30d74d2eaad44e5df089d489d67f
CRs-Fixed: 3572976
2023-08-03 10:04:15 -07:00
jingxiang ge
f8d1f8ac6f qcacmn: Extract aux device capability
Extract aux device capability from service ready ext2
event, and report such info to wma/mlme/hdd.

Change-Id: I888624fd3443118ba66fadd7a40fcce4f4b5d521
CRs-Fixed: 3549753
2023-07-30 22:45:25 -07:00
Vijay Raj
de88d935fd qcacmn: Improve accessibility of target_if_is_vdev_valid
Move  api target_if_is_vdev_valid() in order to improve
its accessibility.

Change-Id: Ia2085da6ab62144fb690b9474359caa31b415e74
CRs-Fixed: 3555929
2023-07-18 22:55:59 -07:00
Deeksha Gupta
5bda5de6ce qcacmn: populate num_max_mlo_link_per_ml_bss in WMI init
Set num_max_mlo_link_per_ml_bss to WMI init command.

Change-Id: I48a46f66cea86ee660656509a9cd688e3e1f7541
CRs-Fixed: 3512393
2023-07-10 12:13:51 -07:00
Deeksha Gupta
589214a617 qcacmn: Extend wmi_service for n-link MLO connection
Extend wmi_service for n-link MLO connection.

Change-Id: I269d1730eb59dcf492aca675b0fbfc3e56a0fbb7
CRs-Fixed: 3512375
2023-07-10 12:13:40 -07:00
Jianmin Zhu
35f33b2cbe qcacmn: Add API to convert chan width
Add API to convert channel width from wmi_host_channel_width to
phy_ch_width.

Change-Id: I3d7e45b63060e1093d4d44942fd863077e6462d8
CRs-Fixed: 3529281
2023-06-17 03:59:00 -07:00
Vijay Raj
843992732f qcacmn: Extract Multipass SAP support in target capabilities
In api extract_service_ready_ext2_tlv(), Multipass
SAP capabilities is extracted to enable multipass
sap suppot in host

Change-Id: I422a5dbaca405ceaea70559863af48d046f92cbe
CRs-Fixed: 3515331
2023-06-07 13:58:49 -07:00
Surya Prakash Raajen
cb01519700 qcacmn: Trigger UMAC reset with mode1 SSR teardown
Add support to trigger UMAC reset with mode1 teardown request
for mode1 target recovery SSR.

Change-Id: Ib2d1679162a2084488081c76f6753287a6e4d5c4
CRs-Fixed: 3458369
2023-05-14 13:37:48 -07:00
Jinwei Chen
bedb4f3049 qcacmn: Update rx_peer_metadata version to DP
Save rx_peer_metadata version to wlan_res_cfg, update this value
to DP.

Change-Id: If559d85ebb390b54d267f4bc4ba214631b547d32
CRs-Fixed: 3469154
2023-04-21 03:16:59 -07:00
Kannan Saravanan
e11f459ade qcacmn: Pebble bring-up changes in Umac and target_if layer
Add device Id and target type checks for qcn6432 target
compilation
Add CFR and spectral support for QCN6432

Change-Id: Ic908fa768aa1be7cfc40be7fcc7f9ca6aa85aaa6
CRs-Fixed: 3351747
2023-04-20 04:59:28 -07:00
Jinwei Chen
a3697f6b7c qcacmn: Extract htt_msdu_idx_to_qtype_map for TX ILP
Extract htt_msdu_idx_to_qtype_map array from wmi service ready
ext2 event, it is needed for DP TX ILP feature enablement.

Change-Id: I64766f5b6ebc6632ce4994a8d53224d98beb5879
CRs-Fixed: 3445507
2023-04-11 16:36:41 -07:00
Jhalak Naik
0e4acb24f3 qcacmn: Mark blanking support as false for AR9887
Mark the blanking support as not supported and
return success status for AR9887
in target_is_scan_blanking_enabled().

Change-Id: I055f4d3b30781189744b0d96db4a93b61c0cf1f4
CRs-Fixed: 3430100
2023-03-23 04:47:46 -07:00
Jeff Johnson
ca2123d842 qcacmn: Fix target_if.h documentation
The kernel-doc script reported documentation issues in
target_if/core/inc/target_if.h, so fix them.

Change-Id: I3c539f3a581f5886c013e34fa54904899cbe9d17
CRs-Fixed: 3417467
2023-03-12 15:13:35 -07:00
Edayilliam Jayadev
84ec76c1aa qcacmn: Set/get scan blanking feature support
Extract the scan blanking feature support from WMI service ready
event and store it in target if data structures. Add API to check
whether scan blanking feature is supported for a given pdev.

Change-Id: I65fefbb879b8433a68338bfcd3e4f729eff3ddd8
CRs-Fixed: 3413922
2023-02-27 06:31:43 -08:00
Srinivas Dasari
8380ebaf9b qcacmn: Fetch fw support for fixed channel SAP in coex cases
Currently, firmware sends WMI_WLAN_FREQ_AVOID_EVENTID with set
of frequency ranges to be avoided when it finds LTE operating
around those frequencies. Host driver marks these frequencies
as unsafe and doesn't operate in SAP/P2P-GO mode.

There is a new requirement where SAP can be allowed to operate
in unsafe channels when below conditions are met,
1. Firmware advertises the capability fix_channel_priority in
   WMI_COEX_FIX_CHANNEL_CAPABILITIES through ext2 event.
2. SAP is started in a fixed channel.

Fetch the capability fix_channel_priority sent by firmware and
cache it in wlan_psoc_host_service_ext2_param to support
this feature. Add APIs to cache value received from firmware in
psoc_info->info.service_ext2_param.sap_coex_fixed_chan_support
and to fetch the same.

Change-Id: I8ceb501240bc86d6b004446f9927f4402c487203
CRs-Fixed: 3381399
2023-01-18 11:49:55 -08:00
Divya R
2a176c8c3e qcacmn: Disable CAC timer in special vaps
Special vap on AR9887 (ap_monitor) is used as both monitor and
AP mode. During channel change on DFS channels, vap is not up till DFS
CAC timer completes and hence cfg80211tool is not releasing the
rtnl_lock.
For Scan radio, CAC timer can be disabled on DFS channels.

Change-Id: I6142325892401e3a374760179ec7e4e206296f33
CRs-Fixed: 3341288
2023-01-13 12:48:54 -08:00
Surya Prakash Raajen
0fdd53b791 qcacmn: Add support for mlo groups in mlo setup and teardown
Add support for mlo groups in mlo soc/link setup and teardown
sequence participating in mlo.

Change-Id: I2b431b0ee1e5816b92ad183b52ad2998eb5bb46c
CRs-Fixed: 3343170
2023-01-05 22:32:26 -08:00
Shiva Krishna Pittala
11fa724d8a qcacmn: Add support to extract link removal TLVs from MGMT Rx event
To assist the Host in ML reconfiguration element construction for probe
responses, FW sends MLO link removal information as part of the MGMT Rx
event containing the corresponding probe request. This information is an
array of TLVs, one TLV for each link that is undergoing link removal from
the MLD for which this probe request is intended. The TLV carries the link
removal TBTT countdown value maintained by the FW for that link.
Add support to extract the same.

CRs-Fixed: 3335361
Change-Id: I16c6791a443ddb166da596d404a52ff2a38da291
2022-12-11 23:52:12 -08:00
Surya Prakash Raajen
572d9ff24e qcacmn: CFG section defines for 6 GHz low & high bands
CFG section definitions for 6 GHz low & high band for
ini configurations. These new definitions enables us to
configure the unique INI parameters for 6 GHz low and 
6 GHz high band, for new solution of Split-phy in 6 GHz.


Change-Id: I1417dee90f0aebe31f24a64017d9203b74dfc886
CRs-Fixed: 3332719
2022-11-24 01:22:46 -08:00
Alan Z. Chen
b589f319f9 qcacmn: Add void keyword to function definitions
Add void keyword to function definitions for
ce_service_srng() and target_if_get_ctx().

Change-Id: I4d74600da82a9f13285a496a2136589b698da017
CRs-Fixed: 3336700
2022-11-17 20:22:25 -08:00
Kannan Saravanan
a73234426a qcacmn: Initial changes for york bring-up in target_if layer
Add device Id and target type checks for qcn9160 target
compilation.

Change-Id: Ic28edc568c09aa5d43ba71393eca26479dd49463
CRs-Fixed: 3282639
2022-10-18 10:08:34 -07:00
Rachit Kankane
a9083f7afe qcacmn: Add macro for Spatial Reuse
Add below macro for SR:

1. HESIGA_Spatial_reuse_value15_allowed bit
2. NON-SRG PD disabled threshold
3. Minimum PD Threshold
4. Add service bit - wmi_service_obss_per_packet_sr_support

Change-Id: I9560518cadc5c6f916579af63ef44d41c748fd8d
CRs-Fixed: 3307369
2022-10-17 06:48:16 -07:00
Hariharan Ramanathan
8094475e5e qcacmn: Add REO_SHARED_QREF_TABLE_EN support for QCA5332
Add support for REO_SHARED_QREF_TABLE_EN in QCA5332.

Change-Id: If624e10d61522c1fe42f23c2f9b0e28255a00583
CRs-Fixed: 3307477
2022-10-09 08:16:48 -07:00
Adwait Nayak
7fdbe9bdc7 qcacmn: Strip MBSSID IE from the TX VAP only for 11BE platforms
While generating the scan entry for TX VAP, the decision to
strip MBSSID IE from the TX VAP beacon, will be taken if the
platform supports 11BE.

CRs-Fixed: 3300515
Change-Id: Ie45da7a02a2811172b2403d5fd1bc4b9271432d5
2022-10-01 03:38:36 -07:00
Shashikala Prabhu
5e43636b8c qcacmn: Add support for 11az RTT
- target_if layer was calling UMAC layer wifi_pos_get_rx_ops(). This was
  leading to compilation errror in WIN platform. Hence, added target_if
  layer API target_if_wifi_pos_get_rx_ops().

- WMI_RX_SERIALIZER_CTX is used to register PASN peer create and delete.
  WIN platform does not use the above context. Hence, use WMI_RX_UMAC_CTX
  for WIN and WMI_RX_SERIALIZER_CTX for MCC.

- WIFI_POS rx_ops callbacks are registered in target_if layer. But, these
  callbacks are called by UMAC component. Hence, move this registration
  function to UMAC layer.

- Add an API to convert host PASN peer type value to target defined value.

Change-Id: I2a262121f959c2343e88158b94468d104b9e164c
CRs-Fixed: 3289852
2022-09-30 07:49:24 -07:00
Shivam Kumar
52c19ba631 qcacmn: Handle failure during service ready(ext/ext2) handling
Any error during ext/ext2 processing should stop normal init
path and return error. Without this, wrong values are passed
to firmware in WMI init which result in firmware assert.
Add proper handling to take care of failures during svc ready
message processing

Change-Id: Id22714a983d1dc2fe7300a178933cd05bf870a55
CRs-Fixed: 3290131
2022-09-25 23:11:07 -07:00
Naveen S
d276b0eda6 qcacmn: Add feature flag for Health Monitor Feature
Adding feature flag for Health Monitor so that it can be disabled
for 16M and 256M profiles

CRs-Fixed: 3277434
Change-Id: Ibbbe582acd15ebff7e189fcbaa36429ea519db37
2022-09-09 04:08:54 -07:00
Sham Muthayyan
1e28e45ce7 qcacmn: Add WMI health monitor events
Add WMI health monitor events to send the health
monitor data to application.

Change-Id: I792b733822b03518dc964f38fe4a158132b0ac49
CRs-Fixed: 3266229
2022-08-21 00:37:39 -07:00
Yu Wang
67011a392c qcacmn: add support for CoAP
Add support for Constrained Application Protocol.

Change-Id: I425206a990778cf946a4805192eff4d54562a945
CRs-Fixed: 3254128
2022-08-17 23:14:34 -07:00
Aditya Kodukula
ec13c2ea39 qcacmn: Add infra to support DBAM feature
Add infra to support Dedicated Bluetooth Antenna Mode (DBAM)
feature. It is used to switch between dedicated antenna for
BT and shared antenna for WLAN and BT.

Change-Id: I21688093674ef9b63ee811df9168a31bd71c56b5
CRs-Fixed: 3239895
2022-07-17 23:12:37 -07:00
Subrat Mishra
1ecf591ecf qcacmn: Fix TWT configuration for 2.4 GHz PHYB mode MAC
Fix TWT configuration for 2.4 GHz PHYB mode MAC.

Change is macro protected. Wlan resource config sets twt_ap_pdev_count
to number of Radios per psoc. But for 2.4 GHz vap coming up in PHYB
mode needs the value 2 if only one radio is enabled per psoc. WAR is
done from host driver to enabled TWT certification process. Actual fix
must be done from Firmware code.

Change-Id: Id29692097ee555c94c54f53d7540eb108fbe98e0
CRs-Fixed: 3238210
2022-07-12 14:02:02 -07:00
Jayachandran Sreekumaran
1b244cfcb0 qcacmn: target_if support for spatial reuse feature
Add target_if support for spatial reuse feature

Change-Id: If0ad6e459e7b7d215d5016c8c7c0e94df5d36649
CRs-Fixed: 3213486
2022-07-11 23:13:02 -07:00
Pragaspathi Thilagaraj
7738bad9e9 qcacmn: Add support to manage Wifi pos vdev private object
Add support to manage Wifi pos vdev private object. Add new peer
type in enum wlan_peer_type. Add rx_ops and register the rx_ops
for PASN peer create/peer delete request.
Register 11az PASN related WMI events in target if.

Change-Id: I2a5e4d8d7c9b9562d9ab02b287957e93ee6f4758
CRs-Fixed: 3154521
2022-04-30 22:49:55 -07:00
sumedh baikady
324dcd5688 qcacmn: Add target check for reo shared qaddr enabling
Enable REO shared qref for 11be targets.
Fix a compilation issue in printing dma_paddr type. 

Change-Id: Ib8568a82e96016ea367c8e0122d862e3d6e70d00
CRs-Fixed: 3178147
2022-04-26 14:59:37 -07:00
sumedh baikady
52181cceb1 qcacmn: Fix Reo qref issues
1. Since peer id is reused for reconnection in MLO case,
old entries for queue desc addr is cleared. Clear the reo
internal storage and reset it back on client connection.

2. Send Qref feature WMI cmd to FW to enable the feature.

Change-Id: I6705ce121c8c25d9a2ace039dab21312fa5ea4b1
CRs-Fixed: 3156642
2022-04-12 06:31:36 -07:00
Shwetha G K
73a570940f qcacmn: API for completion of MLO setup sequence
Add API to invoke call back API registered post MLO
setup sequence completion.

CRs-Fixed: 3153531
Change-Id: I16552ff46929c985ff4b7a62f47cc667fe6f132e
2022-03-29 21:56:30 -07:00
Pragaspathi Thilagaraj
8d44eccea7 qcacmn: Add new wifi_pos target_if files
Add below new target_if layer files for TX ops and
RX ops separately:
target_if_wifi_pos_tx_ops.c
target_if_wifi_pos_rx_ops.c

Change-Id: I0746881b5fd429bb0a003dbcfea11691a90e9c34
CRs-Fixed: 3139459
2022-03-23 19:42:19 -07:00
narayan subramhanyan
893d63c744 qcacmn: Legacy Qwrap RE code cleanup
Remove Legacy Qwrap max client mode code as part of Legacy
RE code cleanup. Old change (same code changes as new) was
reverted as some PF checks were missing/skipped before merge
due to an IT issue

Safe to merge now as IT issue has been resolved and all PF
checks are enabled again before merge.

Change-Id: I2f6ae57a27d50c31115d89e57281dc1f7094d71d
CRs-Fixed: 3125196
2022-02-17 06:24:59 -08:00
Naveen S
8b6625530d qcacmn: Removal of pre lithium wlan driver support in 12.x Software
Code related to IPQ4019 is removed

Change-Id: I64ef452cafe64840576f40a8f35bc617b9978c96
2022-02-14 07:12:47 -08:00
Srinivas Girigowda
ff60609e39 qcacmn: target_if: Add TWT componentization structs and skeleton code
Add TWT componentization structs and skeleton code.

Change-Id: Ibddef3798149268f1799734664c5fbf679ee7a51
CRs-Fixed: 3085341
2022-02-11 00:24:48 -08:00
Sanchana Balu
68fbc4f63c Revert "qcacmn: Legacy Qwrap RE code cleanup"
This reverts commit 6a4add6d36.

Change-Id: Ia22e2f91207f8047fd7ee7c4736c4bc7fb0978e0
Signed-off-by: Sanchana Balu <quic_sbalu@quicinc.com>
2022-02-02 20:54:33 +05:30
narayan
6a4add6d36 qcacmn: Legacy Qwrap RE code cleanup
Remove Legacy Qwrap max client mode code as part of
Legacy RE code cleanup

Change-Id: I86f5eda074e934409d947dec93227145b056b47b
CRs-Fixed: 3112205
2022-02-01 19:44:30 -08:00
Kiran Venkatappa
9d402b668b qcacmn: MLO Teardown sequence
Trigger MLO teardown and wait for response before proceeding with soc
power down.

Change-Id: Ie1d00408862459b0e5240ef3151a0d969ab65e80
CRs-Fixed: 3102143
2022-01-14 20:53:14 -08:00
Rachit Kankane
dffef9958a qcacmn: enable SON target_if
Add WLAN_FEATURE_SON to enable SON target_if

Change-Id: Ib4bca0eb5813d1fdd7becf6705ab7129a26e26e5
CRs-Fixed: 3102441
2022-01-13 03:03:20 -08:00
Kiran Venkatappa
31d1d1ac4a qcacmn: Skip mlo setup triggers if soc in not mlo capable
Skip sending triggers for MLO setup if a soc is not mlo capable to avoid
inconsistent MLO setup exchange with target.

Change-Id: Ie17dcd03e2fcf778795d964a55e4a400adacfb33
CRs-Fixed: 3100309
2021-12-28 14:42:43 -08:00
Himanshu Batra
78fb9d70d7 qcacmn: IPA changes to support SDX+Pine
IPA changes to support SDX+Pine.

Change-Id: I66ad2a2c3e2f142c54df3e35c867ee827ac1d687
CRs-Fixed: 3079952
2021-12-20 22:44:55 -08:00