Add qdf_mem_common_alloc/qdf_mem_common_free for
the platform that want to replace malloc with valloc
due to limited continuous physical memory.
Change-Id: If3c5716ff6d62c0a4f6f21b7ebf9eef1e3f0e529
CRs-Fixed: 3429140
RHINE is soft UMAC based architecture which is not having
REO block, all the REO functionality will be implemented
in F.W and host level. Host will get the RX packets in
CE-RX rings in HTT format, to reap RX packets new HTT
messages will be extracted and parsed.
So implement RX handling based on new softumac architecture for RHINE.
Change-Id: If430dd017309e2b2a3eb5e27e1d8b58696abceb4
CRs-Fixed: 3382920
Call ol_peer_map handler when AST_OFFLOAD_SUPPORT
is enable, so that client_connect_ex event can be
sent to IPA.
Change-Id: I688cb95dec43180133a8948573fbd45af3cb9f33
CRs-Fixed: 3419264
When IPA is enable and TX DATA ring mask is not set for
TX ring given to IPA, Host should not select the TX queue
which is given to IPA, hence override the TX queue to 0 if
TX queue id is same as IPA TX data ring.
Change-Id: Ia7fe49ef50deee869c84de9e741362cb31d60bf0
CRs-Fixed: 3419264
The kernel-doc script reported documentation issues in
target_if/core/inc/target_if.h, so fix them.
Change-Id: I3c539f3a581f5886c013e34fa54904899cbe9d17
CRs-Fixed: 3417467
In tx monitor, the maximum capacity to store status buffer is 64.
During high throughput scenario number of status buffer exceeds 64.
Change-Id: I5e8d1945773d2027a4adbc141fa868587e80acd1
CRs-Fixed: 3430126
Fix for the crash seen during FW recovery
while doing disable ol_stats for all the
MLO pdev's
Change-Id: Ie7b037e2d124009658a01d2a00d0a74a784ac51f
CRs-Fixed: 3430134
Currently for the monitor status ring history,
the event type is not being logged.
Fix the event type logging in the monitor status
ring history.
Change-Id: I43f07bf9a4232a203b7a996db6038a081249ffc9
CRs-Fixed: 3425325
In case of where multiple scatter gather frames are
part of same MPDU last_mpdu_in_msdu will be set only
for last buffer of last scatter frame in MPDU.
Below is the hw descriptors bits when 2 scatter frames
are part of a MPDU
-----------------------------------------------------------
|Buffer_num | MSDU_NUM | first_in_mpdu | cont | last_in_mpdu |
-----------------------------------------------------------
| 1 | 1 | 1 | 1 | 0 |
-----------------------------------------------------------
| 2 | 1 | 0 | 0 | 0 |
-----------------------------------------------------------
| 3 | 2 | 0 | 1 | 0 |
-----------------------------------------------------------
| 4 | 2 | 0 | 0 | 1 |
-----------------------------------------------------------
In above case scatter MSDU boundary checks can be done only
based on continuation bit. So while reaping use continuation
bit instead of last_in_mpdu bit to detect boundary
Change-Id: I42e7360d6a1b7d0cfd9a6688cae51e3854d430ec
CRs-Fixed: 3388668
T2LM provisioned links of preferred link structure are represented as
bitmap of type wlan_link_band_caps enum. Hence, replace the datatype
'enum wlan_link_band_caps' with 'uint16_t'.
Change-Id: If6cdaf5b12a9bd8b06050db67464fb4db642883b
CRs-Fixed: 3429430
Added change,
1. Define new DBR module DBR_MODULE_CBF to handle TxBF
standalone sounding CV data and corresponding ring
initialization.
2. API to extract new meta data TLV added for CV data.
3. API to handle standalone sounding complete.
Change-Id: Id28c5561bb8b3bf08de7ddd9aa2365e2ae99f1c2
CRs-Fixed: 3415627
When the CLI command wifitool athX disable_opclass_chans is executed
with a valid 20 MHz operating class, the command throws an error,
"Opclass should only be 20 MHz opclass" on the console.
The opclass passed as an argument to reg_enable_disable_opclass_chans,
which is greater than 20 MHz in value, makes the API reg_is_20mhz_opclass,
always return false.
To fix the issue, pass channel spacing (in MHz units) as an argument to
the 'reg_is_20mhz_opclass'. Also rename 'reg_is_20mhz_opclass' to
'reg_is_chanspacing_20mhz' as we are verifying if the channel spacing
of an opclass is close to 20 MHz; not verifying the opclass itself.
Change-Id: I198b4d90c68613210377b96f6836c5b8c810dc7f
CRs-Fixed: 3410934
For WDS ext mode in MLO cases, all the link peers
should get the the newly created VP as src info
for DS peer routing.
Change-Id: I0811f9403819c3ed204799e167994ecb3d60cf96
CRs-Fixed: 3425239
On FW recovery, do not allocate a new VP and use
the existing profile to setup DS VP
Change-Id: I330613fa104c51becc1018750edf91d8055edb01
CRs-Fixed: 3427382
With the MBSSID IE, it has to generate the corresponding
beacon and probe response frames. Then handle the generated
frames per critical update feature.
Change-Id: Iff3fdb3a335a98d9ed7e51957885e2f161069807
CRs-Fixed: 3376521
Add WBM2SW ring descriptor structure symbol for KIWI,
this is helpfu for WBM2SW revelant issue debugging.
Change-Id: I81f9029ae47026f5530481b2de3c60502a15acc6
CRs-Fixed: 3427974
Add HTT changes which are specific to RHINE architecture.
Some of the changes like dedicated TX endpoint service,
fastpath implementation and few other message handling
is different in RHINE. Current change add support for
RHINE specific HTT implementation.
Change-Id: I90c2d1d66cdadc5935e6b819e3f19e635c45cb51
CRs-Fixed: 3382915
Support REO2SW ring pointer update threshold configuration,
it is helpful for PCIe utilization improvement.
timer based threshold - M: issue pointer updates when M micro
seconds has elapsed.
number based threshold - N: issue pointer updates when N entries
updates occur.
Change-Id: I49ed388520fd52e97e303d6ea9c04ced6cb5cf5f
CRs-Fixed: 3420101
Add a new counter inccorect_rdi to fisa stats to log incorrect reo
destination indications in fisa processing.
Change-Id: I785ad90ae1d36b2f6b9b1888373a29fcbd65348e
CRs-Fixed: 3426537
The kernel-doc script identified some documentation issues in
the doc of reg_get_min_max_bw_on_cur_chan_list, so fix those
issues.
Change-Id: I5f720706b8c744f39d4ad6f6dbd6e722c3d53096
CRs-Fixed: 3409405
Add APIs to create bridge peer. Register call
back for the same to handle bridge peer
creation.
CRs-Fixed: 3416877
Change-Id: I51d8f023576c93121e42d54243721edbf705e6b4
napi_completion could stop NAPI re-queue only if
returned budget is small than limit budget. WLAN
driver IRQ affinity change would force NAPI complete.
In some cases, RX is in busy loop, RX NAPI could be
queued to more than one CPU NAPI polling list, which
will lead system crash. This change is aimed to make
sure that returned budget is smaller than the limit.
Change-Id: I1b93596b8afc3ee09c4caeceb7a7ba98c4bed4d1
CRs-Fixed: 3420953
Do not send prerequisite htt message informing
support of Umac reset feature to firmware
if DS is enabled
Change-Id: I1272579a3079e126b81a3b324009f6f32c65a904
CRs-Fixed: 3425584
Add support to enable/disable MLO Link Peer stats through
ini and cfg80211tool enable_ol stats command
Change-Id: Id1229a149befa416d060e1b07eee150e6b295abf
CRs-Fixed: 3397721
Add support of HW Link ID in PeerMetaData.
Retrieve the HW Link ID in both Rx per packet
path and RX Error path, store it in nbuf cb.
Use the stored value from nbuf while updating
MLO peer link statistics.
Change-Id: I11596d44fe8557af568fd399d0c0a04d2b887b2a
CRs-Fixed: 3397721
1) Allocation of memory to hold MLO Link Stats
at MLD Peer level.
2) Modify the Macros to update MLO link stats.
3) Init and reset the Stats
Change-Id: Id4e9d40e212c5093159ae0c7d6316e93d19cf928
CRs-Fixed: 3397721
In RX process, driver reaps the data in the REO DST RING
by successively move the tail pointer. The problem is
that driver will move the tail pointer twice if something
wrong happens, like sanity check, which will lead to the
miss of an entry next to the abnormal entry. This issue
has existed for a long time due to the code refactoring.
Change-Id: I2c5d402f81090497a4414efbf6e7e79130ba11f5
CRs-Fixed: 3426707
The kernel-doc script identified documentation issues in the
target_if/cfr folder, so fix them.
Change-Id: I5af96dbc3b6adcd369134422dd2f9e5a6be799e9
CRs-Fixed: 3417466