With EasyMesh disable at runtime data from second vap is taking
slow path, due to wrong metadata mask and session id populated to
IPA driver.
Fix is pass correct metadata and session id based on EasyMesh
status to IPA.
Change-Id: I0735965c0d8bd257492343e3a27f9f1509091b87
CRs-Fixed: 3487546
Direct link refill ring HTT setup fails due to srng
ring id mismatch. IPA uses a max of two RXDMA_BUF
rings but the hal srng ring id has a max of 3 RXDMA
ring ids which is causing the ring id mismatch for
direct link refill ring.
The fix is to remove the addition IPA related hal srng
ring id and move the macros appropriately to make
it consistent for both IPA enabled and disabled
cases.
Change-Id: Ieb4bbf646f5f0360e4013ae3e235cc7368087731
CRs-Fixed: 3523851
Include Umac reset irq line in the mask table only
when it is enabled for 8 msi group to make sure
the legacy devices are not impacted.
Change-Id: If8f6b7f948a7c9f45247e8ff934642f0a532ff0d
CRs-Fixed: 3499500
For every set Mcast Primary Flag call from CP, DP will
set the mcast primary flag for that particular vdev of
MLO and reset mcast primary flag for all the other
vdev's of MLO
Change-Id: I4fff532e5e30d1346fa9e9ad72d72af2e1c6f768
CRs-Fixed: 3520617
currently in disable ol_stats path, if disable ol_stats
is triggered for any pdev, then due to MLO link stats we
disable ol_stats on all pdev's. if the pdev deinit is
already happened then we skip disabling it and dont send
h2t complete free nbuf message, creating OOM. Fix is to
remove the pdev deinit check and disable ol_stats only
for particular pdev and not pdev of MLO.
Change-Id: I6171c6f545ed823cdec211c6ac00b8e0ff93211a
CRs-Fixed: 3511913
Optimize Tx and Rx monitor stats update code by replacing
multiple if checks with switch case statements
Change-Id: I07dd7784dccdfe0cf0e1ade822746d0c6f55cd95
CRs-Fixed: 3511037
add multiple history array to keep track of mem allocation and
deallocation for qref table.
Change-Id: I9fa97fbe5a5c36509cbb5a458851a152200318a5
CRs-Fixed: 3475981
Currently there is a self peer created for a
vdev created in station mode, which is not necessary
for kiwi target.
Add support to disable self peer creation
for vdev.
Change-Id: Ib9d63aef392be66bd0675960a0abfc73c6462d2c
CRs-Fixed: 3517791
added a new API to get partner soc by passing chip_id
while adding and deleting flow entry.
Change-Id: Ib1d8c0dedb8e11d164f00791e59cf52ef8332cb5
CRs-Fixed: 3508805
Currently connectivity logging is done for all opmode
but logging should be done only for STA mode.
So to fix the issue add check for opmode and skip
connectivity logging if opmode is not STA
Change-Id: Ie6175a02c8167f5ebfd81553837206640431f701
CRs-Fixed: 3515365
When decap type is invalid, freeing nbuf and while next monitor
buffer tlv picking last nbuf from queue. which has allocated frags
and valid data. expecting MPDU END TLV for previous mpdu
before monitor buffer tlv to allocate new nbuf.
Set rx_hdr_rcvd to false when we receive invalid decap type.
CRs-Fixed: 3503694
Change-Id: I97ede9e52df580769b78afc767ba9528914b3ea5
During the mode0 target recovery cleanup the link peers
before ml peer deletion.
Change-Id: Ie0037056c2b44f50a64787fa75b5c2d8690e4224
CRs-Fixed: 3515517
Support for setting and clearing the IRQ_DISABLE_UNLAZY flag
during registering and freeing of PPEDS interrupts respectively.
Change-Id: I4a512e434315d2c981e890661adb5686bdb563bc
CRs-Fixed: 3509601
On BE Platforms, currently if MLO is disabled, ol_stats does not
get enable on any soc. Fix is to enable ol_stats on particular
soc if MLO is disabled
Change-Id: I715f06776eda9539f68f440f86e3a403a6b14fa5
CRs-Fixed: 3508711
Add soc/pdev level cdp config params, so that these can be used
to get and set config context items.
Change-Id: I6cfeafb4333bf2f267121dce37b64f22cb86e98c
CRs-Fixed: 3502588
Remove prefetch of data + 128 since skb fields in that offset
are not usied when processing. Also, prefetch next->data, so that
there is no cache miss.
Change-Id: Ida9fc7e4db86e181de82acb2364dd63d37d51e2c
CRs-Fixed: 3505042
dp_umac_reset_is_inprogress() unknown symbol issue is seen for the customer
profile. The definition of this API is present in dp_mlo.c file which is
complied when WLAN_MLO_MULTI_CHIP compile time macro is enabled.
For the customer profile, DP_UMAC_HW_RESET_SUPPORT is enabled and
WLAN_MLO_MULTI_CHIP is disabled. Hence unknown symbol issue is seen.
To fix this issue, call dp_umac_reset_is_inprogress() defined in dp_mlo.c
file if DP_UMAC_HW_RESET_SUPPORT, WLAN_MLO_MULTI_CHIP and
WLAN_FEATURE_11BE_MLO are defined.
Change-Id: Ibc91ff73595bc502e970375f59515a2a523e19b2
CRs-Fixed: 3512322
In the case of mode1 target recovery a single soc can go down,
as part of obj_map detach clear the peers if any exists.
Change-Id: I977a152eafe6659b951018f19cf2afc2431e7713
CRs-Fixed: 3512361
In case when repeater is not supported for TX multipass,
there is a compilation error due to implicit definition of
dp_tx_multipass_send_pkt_to_repeater.
Fix this compilation error by adding a stub function.
Change-Id: Iad5d19d1d72fc0d2594c893f610de8647308bce0
CRs-Fixed: 3511618
Add new set and get APIs for cfg items so that
those cfg items can be managed from the external
components.
Change-Id: I52eb747fc6c544cfe43273c3b8b0fcc27b5a4a5f
CRs-Fixed: 3502582
In some mode txrx_stats can't be cleared completely such as NDP.
we need to iterate each vdev and clear their tx/rx stats.
Change-Id: Iab45742dbe914b7354ad5593d7ee14b9e109cef6
CRs-Fixed: 3475177
Function dp_rx_mon_append_nbuf is now accessed outside
the file where it is declared hence make it public
Change-Id: I6b596815a385ba367f70b9e5ea07c94520cca253
CRs-Fixed: 3488043
Move prealloc DP descriptor types to QDF so that
the macros can be used in HIF layer.
Change-Id: I3de60876735e5aa37d80e9e698a86503b18574c1
CRs-Fixed: 3502615
Currently the CMEM allocation code is duplicated
for Cookie conversion and FISA.
Cleanup the CMEM allocation code.
Change-Id: Ifdb912fe464abaa7be0ab8b2294155984dbd662e
CRs-Fixed: 3504668
Currently NSS is required for packet capture mode to derive tx rate
and firmware sends NSS part of ppdu stats in new ppdu stats tlv
HTT_PPDU_STATS_FOR_SMU_TLV.
Add code to parse ppdu stats if feature is enabled via ini and
send the ppdu stats using wdi event to packet capture
component.
Change-Id: I5567007a91093dd342f37458760b3a61c040b778
CRs-Fixed: 3462436
Currently, sysfs_write_user_buffer spinlock is not
released correctly in DP_PRINT_STATS() when the
buffer size reaches max value. This is causing a
soft lockup, when the next DP_PRINT_STATS() call
is waiting to acquire the spinlock.
This change prevents the softlockup by properly
handling the release of the spinlock.
Change-Id: I13c3e26f7a26b501c5d23b8dc4b978f61beeabd0
CRs-Fixed: 3495547
Modify the primary and alternate TX ring ID for IPA.
Primary TX ring id is set to 2, Alternate TX ring id is set to 3.
Change-Id: I88a479f67edc34794ccac5d82c8adc358b27760e
CRs-Fixed: 3445325
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 ALT data ring.
Change-Id: I37d4ed564ca3333effe83277469ae3a9aecf7295
CRs-Fixed: 3445325
Due to a change in proto-type for dp_tx_desc_release, there is
a compilation failure for Rhine targets.
Fix the compilation failure for Rhine targets by passing the
required args for dp_tx_desc_release.
Change-Id: I422c0fe3a4e96c9e2c3cd42963236159a71a244e
CRs-Fixed: 3507470
nbuf is queued to head_nbuf in dp_rx_reo_err_entry_process. Before
reset head_nbuf, free all the nbuf queued to head_nbuf. Otherwise
there is nbuf memory leak.
Change-Id: Ib4bd64b51d750dac972298ddc46acd4294f2ed81
CRs-Fixed: 3449992
In WBM2SW Rx Error path for BE
specific functionality
1) HAL API's/Function pointers are replaced
with specific function calls.
2) Efficient read/write of WBM Error Info
from HAL Rx desc.
3) Minimize reading data from Nbuf TLV.
4) Peer_id fix for MLO clients with security
Change-Id: I1c9e6e767bbf6565567d998ae8e1357398de5803
CRs-Fixed: 3486304
Currently number of elements per page info is used from the
soc->link_desc_pages for both wbm idle link ring and monitor
desc ring replenish.
Chipsets uses SOFTUMAC architecture does not have WBM component.
So, there is no memory allocation for wbm idle links and
soc->link_desc_pages will not get initialized which results in
crash during monitor link desc ring replenish.
Fix this issue by using the number of elements per page info
from the soc->link_desc_pages for the wbm idle link ring replenish
and from the monitor_soc->mon_link_desc_pages for the monitor
link desc ring replenish.
Change-Id: Ie75561b8e2dd2c926b971c133e9bb704b5901bf5
CRs-Fixed: 3494948