Commit Graph

14 Commits

Author SHA1 Message Date
Amruta Kulkarni
34afd4b92f qcacmn: Define runtime pm lock for roaming
Define new runtime pm lock to be used during roaming.

Change-Id: Ia0d440d432b655c1e7fe41bdb12e4ad5207e7ad1
CRs-Fixed: 3239693
2022-07-12 02:30:48 -07:00
Bing Sun
37a48b157f qcacmn: provide is_create_punc_bitmap when generateing puncture
Puncture is one of 11be feature. Even 11be compile macro is defined,
Dut can start AP with non-11be mode. Regulatory component has no idea
whether it should consider puncture or not. Puncture should be a
configurable parameter from caller.
When updating channel state, puncture should be considered for 11BE
AP. is_create_punc_bitmap should be set in struct ch_params and pass
it to reg_get_5g_bonded_channel_state_for_pwrmode.

Change-Id: I96fb131f2df201a827ab7d98ca099a38b008e0d3
CRs-Fixed: 3160259
2022-04-08 01:57:29 -07:00
Abhijit Pradhan
3f95481d0e qcacmn: Add powermode APIs under a new macro
Use  CONFIG_REG_ 6G_PWR_MODE for the new API.
Use "_for_pwrmode" as suffix for the new functions.

Change-Id: I9b84944a59062277b76bc48877c47ea5afada0ec
CRs-Fixed: 3133023
2022-02-28 12:57:10 -08:00
Hariharan Basuthkar
e7b559d010 qcacmn: Replace reg curchan with 6g ap power based chan list
The consumers of the current channel list may want to search through 6G
channels that are not part of current channel list and belong to channel
list of different power mode.

Therefore, replace the regulatory current channel list with that of 6G
power based channel list.

Change-Id: Ie2ff8bbfb50a5f95f584b134b18246cb28b1c406
CRs-Fixed: 3110987
2022-02-28 12:57:03 -08:00
Alan Chen
75c2cf25ab qcacmn: Add debug log to print link vote id
Add debug log to print details about the link vote id.

Change-Id: I2e89a3d6f06a0f3ec38ea9e8345d854553dbe86d
CRs-Fixed: 2964961
2021-06-24 16:32:11 -07:00
Deeksha Gupta
21ce9cf146 qcacmn: Prevent link down for SAP on non DFS channel
In SAP on non DFS channel, there are double votes for PCIe
link down and later if there is PCIe link up, this counter
sends D3 WoW case instead of D0 WoW case to firmware.

To fix this, In vdev restart case, if SAP is on non DFS
channel and previously it was on DFS channel then vote
for PCIe link down and if SAP is on DFS channel and
previously it was on non DFS channel then vote for PCIe
link up. Also, the PCIe link down should be needed if
vdev stop response is for DFS channel.

Change-Id: I817ffceb482091b8d9c5441d80abb43b7d0f866b
CRs-Fixed: 2849706
2021-01-09 01:36:51 -08:00
Amruta Kulkarni
f9c5c541c1 qcacmn: Update the dfs api
To get the channel state for 5g bonded channel using the freq
use wlan_reg_get_5g_bonded_channel_state_for_freq.

Change-Id: I0b42e9c547ba70259e88137a5a26c238cd66da8d
CRs-Fixed: 2756463
2020-08-21 06:47:51 -07:00
Amruta Kulkarni
2f48b53345 qcacmn: Prevent link down for SAP on DFS channel
For SAP on DFS channel, the PCIe link down should be prevented
so that HalPhy can access DDR memory to report Radar found event.

Change-Id: I5eb1076196c509f0279781dbe3269d62132aeabc
CRs-Fixed: 2712800
2020-08-12 13:56:38 -07:00
Sandeep Puligilla
9c7c6259ca qcacmn: Enable VDEV response wakelock
Enable VDEV response converged wakelock logic.

Change-Id: I67917d5798d9279cb104d0e7ff2cbe26365658c1
CRs-Fixed: 2738667
2020-08-05 00:03:57 -07:00
Shashikala Prabhu
d6fbcdd4e7 qcacmn: Do not dereference the NULL rx_ops pointer
Do not dereference the NULL rx_ops pointer.

Change-Id: I999f3876801b61014aedb59402d2816627d0f28a
CRs-Fixed: 2702455
2020-06-08 10:30:32 -07:00
Arun Kumar Khandavalli
c36e48e3bc qcacmn: Set the default value of vdev rsp_timer_inuse to 1
In the qdf infrastructure the default value used during
the atomic variable initialization is 0, during the flushing
of the vdev response timer during the SSR vdev rsp_timer_inuse
is read to understand whether the timer is initialized or not.
Since the default value is 0 the vdev response timer is not
flushed resulting in different memory leaks.

To resolve this issue, increment the rsp_timer_inuse value
to 1 during the vdev response time initialization.

Change-Id: Ibe47d1175f19b4c62cd5a18cda8b56370b58128a
CRs-Fixed: 2642476
2020-03-17 05:14:52 -07:00
Bapiraju Alla
d8981f1ce9 qcacmn: Add timer in use check before cancelling a vdev response timer
Currently there is no check for whether the timer is in use or not before
cancelling a vdev response timer. Because of this hdd is trying to cancel
a vdev response timer that is not initialized. This is causing crash in
the kernel.

To resolve this issue, add vdev_rsp->rsp_timer_inuse check before
cancelling a vdev response timer.

Change-Id: Ibc82e7698472d11b0803dfc77d654b1ad33aa375
CRs-Fixed: 2630621
2020-03-05 04:13:53 -08:00
Arun Kumar Khandavalli
eaac8c195b qcacmn: Move wakelock to psoc level
Wakelock is system level lock not required to be taken
for every vdev, Hence move the wakelock to the psoc
hierarchy.

Change-Id: I525baf5f4b5dcadb493d84900dbd0a2e7c6407f6
CRs-Fixed: 2563406
2019-12-05 10:46:33 +05:30
Arun Kumar Khandavalli
614d1e4476 qcacmn: create the vdev response timers in psoc_mlme
Move the vdev response timer from the vdev object manager structure
to the psoc mlme structure.

Change-Id: Ieb87ac6549aa23e0beb61441fea459d3db78c2f3
CRs-Fixed: 2563410
2019-12-05 10:45:08 +05:30