In 2x2 DBS mode once STA/SAP change channel from 2.4Ghz to 5Ghz,
policy_mgr_get_current_pref_hw_mode_ptr never return
PM_SINGLE_MAC_UPGRADE to start the opportunistic timer to switch to
single mac mode.
Fix is to check and start opportunistic timer once connection info are
updated. Also start opportunistic timer before
check for SAP to change channel as when SAP change channel it should
stop opportunistic timer and set required HW mode.
If single mac mode is required after channel switch it will start
opportunistic timer again in channel switch callback.
Change-Id: Id6bbc7ea51ba8147e517e7e7bf2b14931c95ea44
CRs-Fixed: 2419645
Currently in case of SAP, supported mode of station received
in assoc request is not getting cached.
Add support to cache the supported mode of station received
in assoc request request in sta_info.
Change-Id: I9820ae2d65fc529a1ab16424f6732fd273da3ae0
CRs-fixed: 2419957
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within sap replace any such comparisons with logical
operations performed on the pointer itself.
Change-Id: I0f738f58e64fdf20957d57775c3570fb4ccfc9f7
CRs-Fixed: 2418389
If DBS 2x2 mode is supported, to operate in 2.4Ghz the driver needs to
be in DBS mode before vdev start/restart is sent on 2.4Ghz channel.
In scenareo with gWlanMccToSccSwitchMode 4, when AP is in 5Ghz and
STA connect to any other channel in 5ghz, it force AP to switch to 2.4 Ghz
channel. Thus AP sends vdev restart without sending the HW mode change
to firmware.
Fix is to set HW mode before the AP start channel switch.
Change-Id: I2a1c176d5f3ed8cc2f62dc24c72959db1afbaae3
CRs-Fixed: 2414034
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSap_Event typedef does not
meet any of those criteria, so replace it (and the "tp" variant) with
a reference to the underlying struct.
Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.
Change-Id: I523f8642ef81b3e35b2bb7a2801f3b734b2f5865
CRs-Fixed: 2412716
If P2P-GO is active and SSR happens the vdev ref coount taken
by sap_ctx is not released and this lead to ref count leak.
To fix this release vdev ref count for sap_ctx in
hdd_reset_all_adapters().
Change-Id: Id35247a917f3e0c3e163ea00a7a850cdf28ddd80
CRs-Fixed: 2410121
The Linux Coding Style frowns upon mixed-case names and so-called
Hungarian notation, so rename HDD local variable pStaCtx to be
compliant.
Change-Id: Ief8942a12c802720d5eb2819e85eb895c6d8df40
CRs-Fixed: 2405752
When receiving assoc request from OWE STA, always send update OWE
info event which contains the following information:
- MAC address of STA
- RSN IE in assoc request
- DH IE in assoc request
Change-Id: I7017c5d2730e493db2472ae53d5dfa69553cfe45
CRs-Fixed: 2396925
Save RSN auth type in related context for RSN assocoation.
Some OWE specific operation need to be done according to
this RSN auth type since we cannot tell if a STA / SAP is OWE,
WPA2 or OPEN by its auth type OPEN.
Change-Id: I17dd72c7adf1c663725ac58ce263f4408d9c967b
CRs-Fixed: 2396885
Host driver packs only the RSN IE, WAP IE and additional IE
from association request to upper layers. With any new IE
support added on the driver, the driver has to add new structure
to csr_roam_info and pack that IE into the
tSap_StationAssocReassocCompleteEvent and pass it to higher
layers. This increases the redundancy with new IE introduced.
To facilitate hostapd to get information on all IE, pass all the
IE present in the assoc request to hostapd.
Change-Id: I1665a83de52bd67529ea026dc0c5e92cfbd51590
CRs-Fixed: 2390425
In case SAP+P2PGO+STA interface are present, with SAP in down state
and STA in conencted state and P2PGO is started, it uses API
policy_mgr_concurrent_beaconing_sessions_running checks if multiple
beaconing interface are present to force the P2PGO to SCC or DBS
channel and as SAP and P2PGO interface are present it returns true.
Now the API to get concurrent channel get the channel of STA
which is active and thus P2PGO moves to STA channel.
Thus use the api to get channel for concurrent beaconing interface
instead of any interface to take care of beaconing interface
concurrency scenareos. With this concurrent channel will be non 0 only
if any other beaconing entity is present and in up state and thus
P2PGO will move to SCC or DBS only in case any other beaconing
interface is actually up and beaconing on a channel.
Change-Id: Ic4bacc8cc45386499c11e09e79d095e926318400
CRs-Fixed: 2395530
Change Iea602a1da42d5eecafae1d00f2260f4930128f40 ("qcacld-3.0: Remove
eWNI_SME_GET_ASSOC_STAS_REQ handling") removed the logic that sent the
eSAP_ASSOC_STA_CALLBACK_EVENT event. Since this event is obsolete,
remove the handling code from SAP and HDD.
Change-Id: I49e169a1832845bac4e89cd832d72dec42d4ee09
CRs-Fixed: 2396058
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirSmeChanInfo typedef does
not meet any of those criteria, so replace it (and the "tp" variant)
with a reference to the underlying struct.
Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance, as well as to be more specific on how the
struct is used.
Change-Id: Ic9a596d05a7c4c0727264c33e865edd4a9786dac
CRs-Fixed: 2394998
Currently, driver allows VDEV-RESTART on SAP interface in order to
channel switch or hidden ssid connection when roaming is in progress
on STA interface. This leads to two simultaneous vdev starts or
vdev-restart in FW which causes the FW to assert.
Add changes to reject the channel switch for SAP or in hidden ssid
connection if roaming is in progress on any STA interface.
Change-Id: I1cea389021049779b5aa00145e2470cd67158edd
CRs-Fixed: 2390235
Per the Linux Coding Style mixed-case names are frowned upon, so
rename addIeParams to add_ie_params everywhere it appears.
Change-Id: Id003bf004d42d5313a932309a47bf82f228eda0c
CRs-Fixed: 2393731
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirSupportedRates typedef does
not meet any of those criteria, so replace it (and the "tp" variant)
with a reference to the underlying struct.
Further note the Linux Coding Style frowns upon mixed-case names
and so-called Hungarian notation, so in conjunction rename the
underlying struct to be in compliance.
Change-Id: I5007379a50223b6de85830e7ae389e65cdb8e4d3
CRs-Fixed: 2392398
Currently connected peer capability information is not getting
cached for SAP.
Add support to cache the capability info from assoc request
Change-Id: I0088bd20a98e2491f6ffb452417bc73f21e69e63
CRs-Fixed: 2392939
While processing deuath notification in lim, PE session is deleted
without checking the session role. For AP case, if the deauth
notification is given to BSSID then also pe session will be deleted
and later clean up of the SAP will not be done properly.
Hence, for SAP case delete the pe session as part of del bss
response only.
Here the scenario is SAP's BSSID is blacklisted and acl command
is given via IOCTL. This triggered the deauth notification to lim,
and pe_session is deleted. Later, the del sta command is failed
because del bss has not happened and vdev delete also not done.
Hence delete pe session only for sta mode in lim_send_sme_deauth_ntf.
And return failure status for iwpriv softap.0 modify_acl command
if it is given for SAP's own mac address.
Change-Id: I2b394ae8676fe569537b416388a9566f2d35892a
CRs-Fixed: 2388404
Change I875c2f14ffd54272fc9ea0df1cecc6dd1171e310 introduced an elaborate
workaround to prevent the pre-cac work from flushing itself during stop
adapter. Introduce a less complicated work around by simply checking if
the current adapter is the pre-cac adapter before flushing the pre-cac
work.
Change-Id: Ib3e0716f8d088d124e960dcd724f579fb39a3d74
CRs-Fixed: 2387173
Regulatory component is getting updated to reduce the
code size based on different regulatory features. In this
process new regulatory files are getting added and some
of the files are getting removed.
To compile the newly added files update the required changes
in driver Kbuild file.
Some of the functins which are not supposed to be invoked from
outside the component directly, replace those function calls
with the appropriate wrapper functions.
Change-Id: I31a25268250b99f4f156c4f149966213746d999e
CRs-Fixed: 2373780
Change Ib83700825112cc52dade594909bfa8993909ac29 ("qcacld-3.0: Send
management frame indication directly to HDD from PE") removed the
usage of tSap_ManagementFrameInfo. Since this struct is obsolete,
remove it.
Change-Id: Ic10c150286fe9f998884cdfcb8da2edadee7e156
CRs-Fixed: 2380771
Change I9d05cd7b8e051c4e9e4912cf866206ae32ec293d ("qcacld-3.0: Define
data structures for new AP requirements") added the ampdu_size field
to struct sap_config. However logic to use this field was never added,
so remove the field since it is unused.
Change-Id: I183766da3af3a3e9c609ccde95a0cca561813226
CRs-Fixed: 2380767
All WNI configurations will be cleanup based on new cfg framework, so
change Change WNI_CFG_COUNTRY_CODE_LEN to CFG_COUNTRY_CODE_LEN.
Change-Id: I786b62e2c0aff08a89fc3c8a3359e2ffb4044269
CRs-Fixed: 2380488
All WNI configurations will be cleanup based on new cfg framework, so
change Change WNI_VALID_CHANNEL_LIST_LEN to VALID_CHANNEL_LIST_LEN.
Change-Id: I805be88ecdcca90cf3a19d1784bf8f8c261b6ca4
CRs-Fixed: 2379748
Change to avoid potential out of bound issue
when unsafe channel numbers parameter is invalid.
Change-Id: I0c2cdac844c5fd644fce61d3d69fefcecdb62f19
CRs-Fixed: 2374986
In SSR, after reinit, there is still memory leak
for gp_sap_ctx; As in multi SSR test, memory leak
detection is disabled in recovery mode, it is a
little late to get the issue moment.
Check gp_sap_ctx after stopping all adapter in
hdd_is_interface_down_during_ssr.
Change-Id: I77708d296fb218ca53ac656f844d02f58e23d241
CRs-Fixed: 2377718
Change I3226438b908a96f1b1bd3c2968a0c20eef81a799 ("qcacld-3.0:
Populate correct supported rates from hostapd.conf file") removed
the logic which previously utilized the supp_rate_set and
extended_rate_set fields in struct sap_context. Since these fields
are now obsolete, remove them.
Change-Id: Id433659da18d61217b45a839aaddcfbae329143d
CRs-Fixed: 2378327
Change I83a704d3f03e9cb9e6a7420f32d609a323799a12 ("qcacld-3.0: Remove
legacy P2P codes in SAP") removed the usage of the sap_roc_ind field
in tSap_Event. Since it is obsolete, remove the field along with the
underlying struct sap_roc_ready_ind_s.
Change-Id: I6101ec7874825b8e4e2e891c3f8ae084486eef87
CRs-Fixed: 2378326
currently the driver just ignore the channel numbers greater
than 165 for 80MHZ channel bonding, which results in best
channel selected as 169, 173 in 20MHZ bandwidth as the
respective channels does not support 80, or even 40 MHZ
channel bandwidth.
Fix is to assign the maximum weight to channel numbers greater
than 165, so that they do not get selected as best channel
for 80MHZ bandwidth operation.
Change-Id: I44c5073a806f39d98103681267faa317a6b6d73b
CRs-Fixed: 2375375
sapDfsChannelNolList and numCurrentRegDomainDfsChannels
fields in sap dfs info is not populated and is used in
csr_is_valid_channel.
Fix is to remove the redundant logic in csr_is_valid_channel.
Change-Id: Ib98423ba910a1947a908f4a74762f82183aa89d5
CRs-Fixed: 2374080
Make changes to the legacy code to support the
new SET KEY converged infrastructure.
Change-Id: Ic5359e3a9035ac5f2a937a9a1013fa92764cda9d
CRs-Fixed: 2358795
Change "I9d05cd7b8e051c4e9e4912cf866206ae32ec293d" ("qcacld-3.0:
Define data structures for new AP requirements") added the
vendor_ie_access_policy field to struct sap_config, but subsequently
no code was added which actually utilizes this field. Since it is
unused, remove it, along with the underlying enumeration.
Change-Id: I7a3661a50ef17b0452e87e0ed86c3826b3bd199d
CRs-Fixed: 2375528
Change I9d83f66bce4ec66bc131747254a45d8b6afb5cbb ("qcacld-3.0:
Remove eSAP_GET_WPSPBC_SESSION_EVENT") removed the references
to the sapGetWPSPBCSessionEvent field in typedef tSap_Event.
Since this field is obsolete, remove it, along with the underlying
tSap_GetWPSPBCSessionEvent typedef which is also now obsolete.
Change-Id: I20dbc1635430f8148f997aeb15df4ddb7e06ceef
CRs-Fixed: 2375527
Change I5a07c44ca4138af5494d1a6f6e1d08158d244be2 ("qcacld-3.0: Remove
SapAllChnlList from struct sap_context") removed the last reference to
typedef tChannelInfo. Since this typedef is now obsolete, remove it.
Change-Id: Ib38c9744c9419ce91b94956b5da78cc7bcc440c5
CRs-Fixed: 2375526
Change I2c3b96e1f2ee44c9f1158108d4b5e48495222080 ("qcacld-3.0: Make
SAP open()-close() & start()-stop() symmetrical") removed the last
reference to typedef tSapChannelListInfo. Since the typedef is
obsolete, remove it.
Change-Id: I4fc7cf83f41ad0192b971513f0456cf211fabb54
CRs-Fixed: 2375525