İşleme Grafiği

15928 İşleme

Yazar SHA1 Mesaj Tarih
Chaithanya Garrepalli
5be4508174 qcacmn: Changes in HW cookie conversion for MLO
Changes to have HW cookie conversion context per
desc pool.

This context will be used to program CMEM of the
other SOC in case multi-chip MLO.

Change-Id: I5ec68813e8fcb6d124698a52f5553acf9a7b1795
2021-11-23 03:55:24 -08:00
Chaithanya Garrepalli
0fb9dcb7eb qcacmn: ML peer authorize changes
Changes to set authorize bit on ML peer only
after all link peers are authorized by hostapd.

Change-Id: I4b103538533dd459e83ae688408703c4122f025e
2021-11-23 03:55:18 -08:00
Pavankumar Nandeshwar
ef490e7713 qcacmn: avoid source port learn when ast offload is enabled
avoid source port learn when ast offload is enabled in the
rx error path

Change-Id: I88f6847aceecd39095fdaefb942bccfa434ebbb9
2021-11-23 02:38:22 -08:00
Himanshu Batra
cc99f5487f qcacmn: ML peer changes for STA
Add changes to support ML peer for STA vdev.

Change-Id: I173a2ad5441bbbf1c1185c677c6cc92c4f1a166f
2021-11-22 15:10:01 -08:00
Shashikala Prabhu
a117c19fda qcacmn: Add support to extract the channel info from RTT measreq
Add support to extract the freq, cfreq1, cfreq2, PHY mode, Destination
macaddr, and channel BW values from the RTT measurement request buffer
received from the LOWI application. Pass these values to a registered
callback. Users can use these values to make some decisions on the RTT
scan.

Change-Id: Idb2232c07bbfa2946dc01e75908b9a6036597ecf
CRs-Fixed: 3060685
2021-11-22 15:09:55 -08:00
Jingxiang Ge
b966b27c3f qcacmn: classify qmi/wmi for WMI_REQUEST_STATS_CMDID
Classify qmi/wmi by request type, only TYPE_STATION_STATS
is designed to be sent by qmi so far.  other type will
continue go with wmi.

Change-Id: Ibaee99c0a9d59b0db634e84f3c0b6e40b65a185d
CRs-Fixed: 3077792
2021-11-22 13:36:38 -08:00
Tallapragada Kalyan
4e7ceff561 qcacmn: Prefetch RX HW desc, SW desc and SKB in pipeline fashion
Prefetch RX HW desc, SW desc and SKB in pipeline
fasion in the first loop of RX processing.

This has improved TPUT by 200Mbps and provided a
10% gain in CPU (single core)

PINE with other optimizations: 3960Mbps @ 100% core-3
PINE + pipeline prefetch: 4130Mbps @ 90%  core-3

Change-Id: I47f351601b264eb3a2b50e4154229d55da738724
2021-11-22 13:36:33 -08:00
Tallapragada Kalyan
e3c327a0ba qcacmn: do a batch invalidation of REO descriptors
Added an API to do a batch invalidation of REO descs
saw an improvement of 40 to 45 Mbps.
Note: this change is applicable only for cached
descriptors

PINE with Default driver: 3189 @ 100% core-3
PINE with skb prefetch: 3469 @ 100% core-3
PINE with skb pre + batch inv: 3506 @ 100% core-3
Change-Id: Ic2cf294972acfe5765448a18bed7e903562836c3
2021-11-22 13:36:28 -08:00
Linux Build Service Account
0fef3ec487 Merge "qcacmn: Add support to configure carrier_profile" 2021-11-22 07:38:31 -08:00
Linux Build Service Account
1bd4291456 Merge "qcacmn: Allocate PDEV with size as per arch type" 2021-11-22 07:38:30 -08:00
Linux Build Service Account
d02b685d7b Merge "qcacmn: Clean up force BA64 ini config" 2021-11-22 07:38:29 -08:00
Debasis Das
299178316e qcacmn: Add support to configure carrier_profile
Add WMI support to send carrier_profile_config to target.

Change-Id: Ic244a8089b91b7dec19563da2f1605cd8111fb22
2021-11-22 02:49:07 -08:00
Chaithanya Garrepalli
bd4f90b8c8 qcacmn: Allocate PDEV with size as per arch type
While allocating PDEV get the pdev size based on
arch type

Change-Id: Ic6a4c60a49db4d9bb40bc9bf5fd3ca321460f213
2021-11-22 02:49:01 -08:00
Yu Tian
2446f8ed54 qcacmn: Clean up force BA64 ini config
This force use BA64 ini config is no longer needed, because another
gRxAggregationSize can do the same settings and more flexible.
Change is used to remove this config.

Change-Id: Ie780489849f8b701481a628a9bca2b4112460bd8
CRs-Fixed: 3076982
2021-11-22 02:48:56 -08:00
Linux Build Service Account
4b3dbe14dc Merge /local/mnt/workspace/naveen1/srcs/qcacld-3.0 into wlan-cmn.driver.lnx.2.0
* /local/mnt/workspace/naveen1/srcs/qcacld-3.0: (2021 commits)
  Merge /local/mnt/workspace/naveen1/srcs/qcacld-3.0 into wlan-cmn.driver.lnx.2.0
  qcacld-3.0: Send correct PCL to fw for STA+STA roaming
  qcacld-3.0: Log BSSID for roam result
  qcacld-3.0: Fix roam failed for SAP CSA concurrency
  qcacld-3.0: Fix EAP length and roam candidate info
  qcacld-3.0: Use API p2p_status_update to update p2p conn status
  qcacld-3.0: Fix token and reason code copy in cm_roam_btm_query_event
  qcacld-3.0: Handle user initiate CSA in p2p go+go concurrency
  qcacld-3.0: Do GRO en/dis based on qdisc only for standalone STA
  qcacld-3.0: Fill validity timer in BTM Request event
  qcacld-3.0: Use correct attribute for BTM response target BSSID
  qcacld-3.0: Enable self bss roam ini by default
  qcacld-3.0: Fix 11be support compilation issue
  qcacld-3.0: Update SBS Freq Info during service ready ext2 evt
  qcacld-3.0: Consider original BW setting for SAP force SCC
  qcacld-3.0: Fix BTM logging
  qcacld-3.0: Support to deliver mlme event to SON
  qcacld-3.0: Add the Full Power Down feature support
  qcacld-3.0: Add vendor attribute to configure ARP/NS offload
  qcacld-3.0: Add ini support for tx_retry_multiplier
  ...
2021-11-22 14:24:18 +05:30
Linux Build Service Account
7735770d6d Merge /local/mnt/workspace/naveen1/srcs/qcacld-3.0 into wlan-cmn.driver.lnx.2.0
Change-Id: I880638078022d6ce6898924b25bb02eb4593080d
Signed-off-by: Linux Build Service Account <lnxbuild@localhost>
2021-11-22 13:37:22 +05:30
Yu Tian
ac2110769b qcacmn: Add an ini control to disable Dynamic GRO feature
Dynamic GRO feature is enabled by default and aimed for specific
customers. Add an ini control to allow other customers to config
this feature enable/disable.

Change-Id: I7f505599327ac131b3cdac9b4d9e038861b1aeb6
CRs-Fixed: 3074689
2021-11-21 23:59:57 -08:00
abhinav kumar
0982d4f9ad qcacld-3.0: Send correct PCL to fw for STA+STA roaming
STA + STA DBS roaming rules are:
1. Roaming will be enabled on both interfaces.
2. Roaming bands are restricted to maintain only DBS.

While STA2 connection, the host sets VDEV level PCL for
vdev1 after association completion only and initializes
roam band mask after the 4-way handshake. So, when sending
PCL to FW value of roam band mask is 0, the host cannot
filter different band channels from STA2's PCL list.
This allows STA2 to roam to the different bands and violate
rule 2.

Fix is to make sure roaming bands are restricted to maintain
only DBS.

Change-Id: I1c9d2edb34f59e00c2fd14ea7894c324f9c64047
CRs-Fixed: 3075106
2021-11-19 23:43:41 -08:00
Pragaspathi Thilagaraj
465d1dfb24 qcacmn: Fix invalid conditional check for BTM preference
While parsing the BTM request candidates TLV, there is a
wrong conditional check to avoid buffer over read.

Fix invalid conditional check for BTM preference

Change-Id: I76e55cebc9525ee4a690747c9372c6f2a8166325
CRs-Fixed: 3078160
2021-11-19 04:35:23 -08:00
Amruta Kulkarni
b183088e85 qcacld-3.0: Log BSSID for roam result
In connectivity logging for ROAM RESULT log
bssid if ap type is Roamed AP in case of roaming
success and Current connected AP if roaming fails.
Also the vdev id field is not filled for mgmt frame
Tx and is always printed as 0.
Fill the vdev id for mgmt frame TX.

Change-Id: I7d6fe7ba47b508fadaf9b9872e644d8b737bf001
CRs-Fixed: 3068229
2021-11-19 04:35:07 -08:00
Wu Gao
3ee4d6781e qcacmn: Don't write stop string after CFR stopped
User space needn't stop string if host indicates data by netlink.

Change-Id: I905c2bd53705307cffb3c0911a84edf42908aee1
CRs-Fixed: 3076152
2021-11-19 03:22:14 -08:00
Devender Kumar
30482aa5c4 qcacmn: Change buffer replenishment model for SDX+Pine
For IPQ products, there is 1 refill ring which is of hardware type
and host replenishes the buffers onto this ring so that hardware can
use these buffers for Rx.

In IPA offload mode, the buffer replenishment model is different from
the one mentioned above. There are 3 refill rings, out of which,
2 are software refill rings (1 for host and 1 for IPA), and last ring
is hardware ring given to FW.
Ring given to IPA is to refill the buffers after processing the
regular Rx packets and ring given to host is to refill the buffers
after processing of exception packets. Since there are 2 entities to
refill the buffers, the hardware ring given to FW multiplexes these 2
software rings and provides the buffers to hardware.

Make changes to follow above replenishment model for SDX+Pine
integration.

Change-Id: I0d9e4ec811a3023a258e0a6b9ee22ccdffcebafa
CRs-Fixed: 3049633
2021-11-19 03:22:08 -08:00
Sai Rupesh Chevuru
30c0b8b4cd qcacmn: Potential memory leak in dp_tx_process_htt_completion
In dp_tx_process_htt_completion(), when vdev is NULL,
returning without freeing nbuf and tx_desc.

Change-Id: I234f0a4f710cc9eb0fc5431fb26a1846326fd931
2021-11-19 03:22:01 -08:00
Abhishek Singh
3915bd37fb qcacmn: Drop disconnect req in INIT state
In case the vdev is already disconnected, the indication to
the upper layer, would have been sent as part of previous
disconnect/connect failure.

If the upper layer is in process of connecting, sending
the disconnect indication back again may cause it to incorrectly
think it as connect failure. So sending a disconnect indication
again is not advisable.

So if a new disconnect is received in INIT state, drop the
disconnect and return failure.

Also remove osif_cm_reset_id_and_src() from osif disconnect
to avoid race between disconnect complete of old disconnect
and new disconnect request. With osif_cm_reset_id_and_src()
old disconnect might also get dropped in osif and with this
fix new disconnect will also get dropped, so make sure that
last/old disconnect indication is sent to upper layer.

Change-Id: Icf7352d8904473329edff9ec124c6197f214f88b
CRs-Fixed: 3074093
2021-11-19 02:03:55 -08:00
Jianmin Zhu
42b985c320 qcacld-3.0: Fix roam failed for SAP CSA concurrency
When vdev0 STA roamed to another channel, vdev1 SAP CSA for SCC
when ROAM_SYNCH_IN_PROG, will disable roam, but no RSO stop to F/W,
F/W RSO isn't disabled, but host vdev0 will enter RSO_STOPPED, host
F/W RSO state out of sync.
If vdev0 STA next roam sync come soon,  it won't be handled for host
RSO_STOPPED, neither roam sync complete nor disconnect will happen,
F/W will asert after wait roam sync complete timeout.

To fix it, Only do SAP CSA check after roam complete and RSO
reenabled, can avoid host F/W RSO state out of sync issue.

Change-Id: I77ccf30cac38f62c6ef8330c6da00364249b242e
CRs-Fixed: 3076935
2021-11-19 02:03:35 -08:00
Pragaspathi Thilagaraj
7df0c9436e qcacld-3.0: Fix EAP length and roam candidate info
EAP length is of 2 bytes, but currently the attribute type
used is NLA_U8. This causes the EAP packets with length
greater than 255 to print invalid length.
For roam current AP, the roamed AP info is printed.

Use NLA_U16 attribute for the EAP length and fill
correct event type for the current connected AP.

Change-Id: I9b86055a4817163db17e469ca45b4a0044d5b2d6
CRs-Fixed: 3075012
2021-11-18 23:22:13 -08:00
Li Feng
9cba107914 qcacmn: Add new wmi ops extract_inst_rssi_stats_resp
Add new wmi ops extract_inst_rssi_stats_resp to extract instantaneous
rssi stats resp.

Change-Id: Idce8a5fb0036145aa14682997ca5101666772c70
CRs-Fixed: 3058799
2021-11-18 22:07:59 -08:00
Liangwei Dong
ddd2902b32 qcacld-3.0: Use API p2p_status_update to update p2p conn status
Refine p2p connection status update, use API p2p_status_update
to update p2p connection status.

Change-Id: Ica1b1cfc56c09e10664cd9130d5bfacc83e2763a
CRs-Fixed: 3076205
2021-11-18 18:20:54 -08:00
sheenam monga
dece2a5af1 qcacmn: Handle user initiate CSA in p2p go+go concurrency
If p2p go+go concurrency exist and g_enable_go_force_scc ini sets
to 2(liberal mode) then 1st p2p go channel should move to 2nd
p2p go channel after set key. Again, when user initiates CSA to
one p2p go then the force SCC doesn't happen to other p2p go.
But the expectation is all p2p go should move to same channel
which is initiated by user.

As part of fix, move all p2p go to same channel when user
initiates.

Change-Id: I166f459c208f8f88c885a311da7bcd82a64d8b3e
CRs-Fixed: 3069743
2021-11-18 17:05:28 -08:00
Pragaspathi Thilagaraj
11913de138 qcacmn: Copy BTM token from roam trigger event
BTM token value is always 0 in the BTM logs.
Copy btm token from the roam_trigger_data tlv in
the roam stats event.

Change-Id: Iebfb07c5a05bad202fbd5a2f52ddcee5243dedb8
CRs-Fixed: 3075276
2021-11-18 17:05:23 -08:00
VIJAY RAJ
07418820cd qcacld-3.0: Fix token and reason code copy in cm_roam_btm_query_event
In cm_roam_btm_query_event, token and reason code is not
copied to wlan_log_record.

Add changes to copy token and reason code to wlan_log_record
in cm_roam_trigger_info_event.

Change-Id: I7e90017070edd61215eaea77fd3af22ae9465d83
CRs-Fixed: 3071239
2021-11-18 17:05:08 -08:00
sheenam monga
0d7ec2e59f qcacld-3.0: Handle user initiate CSA in p2p go+go concurrency
If p2p go+go concurrency exist and g_enable_go_force_scc ini sets
to 2(liberal mode) then 1st p2p go channel should move to 2nd
p2p go channel after set key. Again, when user initiates CSA to
one p2p go then the force SCC doesn't happen to other p2p go.
But the expectation is all p2p go should move to same channel
which is initiated by user.

As part of fix, move all p2p go to same channel when user
initiates.

Change-Id: I1664e5a7d545d29c32b94e8e4831c71a9cc0ae23
CRs-Fixed: 3064245
2021-11-18 17:05:02 -08:00
Yeshwanth Sriram Guntuka
c768f1323a qcacld-3.0: Do GRO en/dis based on qdisc only for standalone STA
In case of STA+SAP, ingress qdisc filters are getting
configured on both STA and SAP interface which is
causing GRO to be disabled.

Check for ingress qdisc to enable/disable GRO only in
case of stanalone STA and not do this in case of
concurrency.

Change-Id: I3542930c7b14d72e267378dd4687ee9721eed4ed
CRs-Fixed: 3062195
2021-11-18 15:45:57 -08:00
Pragaspathi Thilagaraj
d377d6c251 qcacld-3.0: Fill validity timer in BTM Request event
Validity timer value is printed wrongly in logcat
logs for BTM request event. This is because the value
is filled from disassociation timer instead of the
validity timer field.
Also the neighbor report related prints are seen
only if the roam msg info TLV is present, which is
not correct.

Fill validity timer in BTM Request event and print the
neighbor report related prints on receiving 11kv
TLV.

Change-Id: I59606f27b0836ea567fed561bbe19f600377d3ed
CRs-Fixed: 3069855
2021-11-18 14:28:36 -08:00
Pragaspathi Thilagaraj
eecd7e3f90 qcacld-3.0: Use correct attribute for BTM response target BSSID
Currently driver QCA_WLAN_VENDOR_ATTR_DIAG_BTM_TARGET_BSSID uses
instead of QCA_WLAN_VENDOR_ATTR_DIAG_BTM_TARGET_BSSID attribute
in the BTM response event. This causes the target bssid field to
be missed in BTM response print.
The WTC BTM response event is not queued when reason code is
non-zero.

Use QCA_WLAN_VENDOR_ATTR_DIAG_BTM_TARGET_BSSID attribute.
And queue the WTC btm response event.

Change-Id: Id713bfeda20c43148e95630f5c6e925b80418ca3
CRs-Fixed: 3071242
2021-11-18 14:28:29 -08:00
Yeshwanth Sriram Guntuka
371d4ebd86 qcacmn: Increase the max WBM2SW rel rings for qca6750
Increase the max WBM2SW release rings for qca6750
when multiple tx ring pairs support is enabled.

Change-Id: Ifa3be25a7c9b7cb019165e76b3a71d3db9572334
CRs-Fixed: 3075392
2021-11-18 09:28:10 -08:00
Lincoln Tran
ddfe7df316 qcacmn: Update mlo_disconnect_no_lock to check for MLO cap
When a connection is requested but the client is unable to find the
candidate, connection will fail. In legacy case, legacy disconnection
path should be invoked. Update the mlo_disconnect_no_lock function to
match the mlo_disconnect logic when checking for MLO capabilities.
Also update the link connect notify function to prevent queuing
multiple disconnect requests.

Change-Id: I5ed4b213b1fe6b48d2d5631bf1625bea2864f606
CRs-fixed: 3069545
2021-11-17 23:17:11 -08:00
Amruta Kulkarni
8220a04a87 qcacmn: Add eht capability struct
For 11be and mlo, add eht capability info
struct in common code.

Change-Id: I3a8b85c6499375bf7d7b2cdadfe20ef49aaa8ec2
CRs-Fixed: 3074654
2021-11-17 21:07:07 -08:00
Yu Tian
ef29d92da0 qcacmn: Add a tid check for RX to avoid of OOB access
Tid in RX frame header may be larger than MAX TID allowed
value, this will lead a out of boundary array access and
lead to kernel crash at last. Change is aimed to do a TID
check and discard such frame when necessary.

Change-Id: Ie9e7a1816d197d05cf845e81251ef7772721b849
CRs-Fixed: 3071743
2021-11-17 04:36:19 -08:00
Utkarsh Bhatnagar
ade78b2c55 qcacmn: Add legacy cb in service ready ext2 handler
Add wmi service ready legacy cb for service ready ext2
event.

Change-Id: I610d21bfc62f8e0ba3d1787802603fe05bcf0d27
CRs-Fixed: 3073215
2021-11-17 02:36:41 -08:00
Wu Gao
8a7de8863d qcacmn: Add chip type QCA6490 & QCA6750 in cfr meta data header
There is wrong chip type in cfr meta data header if run CFR/CSI with
HSP since doesn't fill it for QCA6490 & QCA6750.

Change-Id: I932c065d33c5eaa33f66ec8a92470f5820472d7b
CRs-Fixed: 3073865
2021-11-17 00:42:48 -08:00
Jianmin Zhu
2915ed347c qcacld-3.0: Enable self bss roam ini by default
Passpoint R1 TC5.2.A Certificate need self bss roam.

Change-Id: Ife9972572445621d2aa61b16eed109c0342d538e
CRs-Fixed: 3076256
2021-11-17 00:42:20 -08:00
Yue Ma
41ab344f9e qcacmn: Add CONFIG_CNSS_OUT_OF_TREE flag for QDF prealloc
Use CONFIG_CNSS_OUT_OF_TREE to control if CNSS prealloc driver is
built from in-kernel-tree source or out-of-kernel-tree source since
the exposed header file will be in different paths. This is also for
backward compatibility. Use internal flag CNSS_MEM_PRE_ALLOC instead
of CONFIG_WCNSS_MEM_PRE_ALLOC which will not be defined from kernel
defconfig for out-of-kernel-tree CNSS prealloc driver. CNSS_MEM_PRE_
ALLOC will be defined in the driver Kbuild no matter where CONFIG_
WCNSS_MEM_PRE_ALLOC gets defined.

Change-Id: I6e35f3e859fb429584e83665fe0290ffeb314312
CRs-fixed: 3074638
2021-11-16 23:30:35 -08:00
Edayilliam Jayadev
0e6f860632 qcacmn: Mark aged out frames in the reorder list
Mark aged out frames in the reorder list so that they
can be released by subsequent calls of release entries
function.

Change-Id: I56983a4f0b93ac66707b216a2c6246912eacfbee
CRs-Fixed: 3062532
2021-11-16 23:30:30 -08:00
Edayilliam Jayadev
2a905d2ecb qcacmn: Optimize the spin lock usage in mgmt rx reo release function
Optimize the usage of spin lock in the API to release
frames to the upper layer. The spin lock to protect the
reorder list is released as soon as the frame from the
head of the list is removed. This would reduce the
contention duration for other users of this spin lock.
A new spin lock is added to ensure that frame delivery
happens sequentially.

CRs-Fixed: 3062471
Change-Id: Ibabe6bc965febe28a2182c7235ab2d67232e24e6
2021-11-16 23:30:23 -08:00
Rakesh Pillai
b2e3fdcdef qcacmn: Disable intra-bss forwarding for NDI interface
Disable intra-bss forwarding for NDI interface.

Change-Id: I0f3276547795defbd6c0f1f387b5e0018ef11048
CRs-Fixed: 3073451
2021-11-16 23:30:18 -08:00
Jinwei Chen
db033fdb9f qcacmn: Fix incorrect tcp_proto value from hal_rx_get_proto_params
tcp_proto is not set correctly from hal_rx_get_proto_params() API,
currently it is using HAL_RX_TLV_GET_IP_OFFSET, use
HAL_RX_TLV_GET_TCP_PROTO to fix it.

Change-Id: I1f3c6aa4b8f5420f176bda4aff158dcfa2a7ef5a
CRs-Fixed: 3073794
2021-11-16 22:14:33 -08:00
Krishna Rao
5f1d4dd7fb qcacmn: Add API to get link ID from Basic Variant ML element
Add API to get the link identifier from a given Basic variant
Multi-Link element or element fragment sequence, of the AP that
transmits the Multi-Link element/element fragment sequence or the
nontransmitted BSSID in the same multiple BSSID set as the AP that
transmits the Multi-Link element/element fragment sequence and that is
affiliated with the MLD that is described in the Multi-Link element.

Change-Id: I45039a6ed8ccd9403eae9514c60bcd8d694d2a31
CRs-Fixed: 3040407
2021-11-16 20:58:00 -08:00
Bapiraju Alla
430a5f423e qcacmn: Fix 11BE compilations when kernel doesn't support 11be
Along with 11BE feature macro, check for Kernel 11be macro to avoid
compilation issues when kernel doesn't support 11be.

Change-Id: I11c8287725a25b6b4e3234a38ae61d50f293cc96
CRs-Fixed: 3066178
2021-11-16 20:57:54 -08:00
Lincoln Tran
7ffc4a761b qcacmn: Fix compilation issue with mon_register_intr_ops
Some platforms don't have mon_register_intr_ops enabled so add
a similar macro around dp_mon_register_intr_ops to resolve
compilation issues.

Change-Id: Id9c7bb45d965005d4dd0dde3a08f254464244147
CRs-fixed: 3075651
2021-11-16 19:52:16 -08:00