Add provision to call sync prevent suspend which will wait for
system to resume and increment usage_count before returning.
Change-Id: I855e3fc2660dc7f3f78bb70f8eef6228cbef96d3
CRs-Fixed: 3253335
Add API to check ICMPV4 and ICMPV6 are redirect or not
This is to avoid a security breach.
Change-Id: I61e7c54c6d9279c1e7d2f316381fbc1c83ce5b4a
CRs-Fixed: 3233925
Before GKI enforcement and driver modulization, vendor drivers’
data section was part of vmlinux and they were registered with
minidump and collected when crash happens.
With GKI, vendor modules’ data section is part of va-malloc
region, which is virtually contiguous but physically not. It
is difficult to fit into the existing PA based minidump framework.
New VA-minidump driver allocates some CMA region which is registered
as one entry in minidump infrastructure. During panic, the driver
creates an ELF which is based on VA, copies it into that CMA region,
and finally it gets dumped as md_KVA_DUMP.bin.
This change makes use of this VA-minidump framework and implement
the APIs accordingly.
Change-Id: Ib1282990c91408bcd4e68365afe694830b90d0ac
CRs-Fixed: 3232060
Change macro IPA_WDI3_RX_TWO_PIPES to IPA_WDI3_VLAN_SUPPORT to represent
the feature supported under this macro
Change-Id: Ie1e387d641052cd5690c63f0c1216f4852544605
CRs-Fixed: 3250264
Set function pointer for SCS peer lookup and rule handler.
Add a new module id for SCS.
SCS database maintained in dp_peer structure is redundant as
same info is maintained in control peer. Therefore remove
SCS database from dp_peer structure and also remove APIs
which access/update this database.
Change-Id: I951f12de487a4be3ae169d1e309352e4e5031fc9
CRs-Fixed: 3226693
In hypervisor system, lock may hold too long due to context switches
and system calls at host which is leading to stolen time. Sometimes
this delay will be larger than 100 ms.
To address this issue, it needs to increase irq save spin lock detection
threshold to 100+ ms for hypervisor system.
Change-Id: I6ea11b96e786c7f45bc84b29e0315e690552569f
CRs-Fixed: 3125904
To support the EasyMesh feature WDS need to be enable and
same status need to be given to IPA driver for that add
new AST definition and declaration.
CRs-Fixed: 3226348
Change-Id: Id2c38b55310f6f0ef9e3d42d606feca16c7d9d78
Wrong value of tx status sent to supplicant for Datapath frame
via diag logging.
Convert the tx status value to enum diag_tx_status specific value.
Change-Id: I3bcf47ed5265d82fb64f1499f79e89be52d23a3e
CRs-Fixed: 3236391
DHCP and EAP logs are sent through the
vendor event to the supplicant.
Modify the DHCP and EAP log flow through
the diag event to the supplicant in order to maintain single
logging infrastructure.
Change-Id: I43025f393615451f83e3846c767c4572d108462e
CRs-Fixed: 3219460
1. Remove prints in per packet path
2. Add prefecth for skb shinfo
3. Avoid qdf_get_cpu() in DP tx
Change-Id: I86d196cc7865a2d5b3a5a6098f6f7d84397a60d0
CRs-Fixed: 3227568
Add new QDF enum for packet type and make
changes to pass status and type to packetlog callback APIs as QDF type
Change-Id: I423839e42b316ce43feaae34e297d3d8f0dee7ba
CRs-Fixed: 3224881
With restructured internal hif runtime pm. Modules using the
runtime pm module need to get registered with runtime pm modules
with their static IDs. QDF wrappers for allowing and preventing
runtime pm suspend are depreciated.
This change introduces ID for various modules and new qdf
wrappers, qdf_runtime_pm_get and qdf_runtime_pm_put are
introduced.
Change-Id: I111efe4aa980a26dbd7da30f031b8daba1c870f2
CRs-Fixed: 3169417
Incorrect value of macro QDF_MON_STATUS_USIG_MU_VALIDATE2_SHIFT
leads to non-zero value of field "Punctured Channel Info" in
USIG TLV in radiotap header even if puncturing is not enabled.
Correct the value of macro QDF_MON_STATUS_USIG_MU_VALIDATE2_SHIFT to 14.
Also use correct set of macros for setting of usig_mask.
Change-Id: I4a5594f784137238ee4aa072c7595e83673c1960
CRs-Fixed: 3218536
Add eMLSR support for ML STA. It consists of 2 changes-
1) Since POLICY_MGR_HW_MODE_EMLSR_MODE_BITPOS macro has value of 32, a new
SET BIT function has been implemented to accommodate the 64-bit operation.
2) Add eMLSR related params to peer assoc mlo param struct to update FW
via peer assoc request.
Change-Id: I6e54c632677eacabc57338b0f159d97023b100f2
CRs-Fixed: 3185010
Use microsecond timestamping for the tx descriptors
for capturing the latencies more accurately. It will help
to determine the appropriate bucket.
Change-Id: I216e083a7c89b01b6f2f384c1c0a85ca323d3a3e
CRs-Fixed: 3165153
Add rssi dbm support bit for rssi_comb calculation
using parameters received from the fw.
Change-Id: Ice57ed69db74852a8b03752632bae747c043e93d
CRs-Fixed: 3183406
calculate rssi_comb and rssi per chain values using
parameters received from the fw.
Change-Id: Ide56549c7d7ee9bde609dc6764013d509f7ccac0
CRs-Fixed: 3157484
Introduce new QDF API's to handle skb and net dev handling in
os abstract code.
Change-Id: If5a460df2c6c1b4068909fed6e5b3036623c2093
CRs-Fixed: 3164916
Add function to setup/reset lite monitor filters
whenever lite monitor mode is enabled/disabled
respectively through cmd line.
Also add function to configure rx header tlv dma length.
Change-Id: Ia5d8bc36e1d033b3e15737bb6b9854f6a7cdd5df
CRs-Fixed: 3143570
Populate punctured pattern from WIFIPHYRX_COMMON_USER_INFO_E
And get puncture type from puncture pattern.
Change-Id: I3a5ba4c7c478d15cf3c3cfdcfd0573775ae342ca
CRs-Fixed: 3166010
Send kernel timestamp to userspace via a
new vendor attribute
QCA_WLAN_VENDOR_ATTR_DIAG_KERNEL_TIMESTAMP.
Change-Id: Iec957f0516c06369e0d2991d96936cb1f7fff5f4
CRs-Fixed: 3150781
Add support to change the number of elements in multi pages
alloc function. This is needed to increase the number of tx_descs.
Change-Id: I29ee2764c24c6f83b0c2cff1062ec7239dcc0b4b
CRs-Fixed: 3130833
Fill tx flags in radiotap header based on tx status for
tx packets capture in packet capture component.
Change-Id: I52da01a2c0677d32bfb05a1f3095a0e6df084fca
CRs-Fixed: 3132140
Firmware doesn't expect any vdev commands from host while RSO stop
is happening. It sends a response to the RSO_STOP command once
it's done with cleanup. Host needs to run a timer and wait for a
maximum of 6 seconds for the response. Host can stop the timer and
allow the commands to firmware in the below cases,
1. RSO_STOP response with success status
2. RSO_STOP response with HO_FAIL status followed by
HO_FAIL event: Host needs to wait till HO_FAIL event is
received
If firmware doesn't send any response in the 6 seconds wait, issue
a recovery to help to check the firmware state.
Change-Id: I4577f9b0aac71c0c86bd32b59e69d9527bf107b9
CRs-Fixed: 3106032
Added change:
1. Set/reset RXDMA MON STATUS ring filter setting and send HTT
message to capture undecoded frame
2. Handle undecoded frame to update cdp_rx_indication_ppdu structure
from hal ppdu_info rx status and generate WDI event to deliver it
to upper layer
Change-Id: I14485f28333b113b5a2fab639611551c2b08af2b
The current WLAN driver only supports single radio for IPA, but with
2X_PINE product WLAN driver need to support multiple radio for IPA
driver, which can be done by adding the support for multiple radios
via QDF layer.
Change-Id: I8850e1df56690cfe704b8fb7487c141a8ed21412
Add support for section parsing in ini, such that we could
read specific section of the file and update the ini values
instead of redundant values or updating the same in the
scripts based on the config
Change-Id: Ibdb08a04d709746c04c3e7c47ee3bb4a7ce85346
CRs-Fixed: 3107545
Add support to update tsf timestamp on driver entry and
exit in data packet. This helps debug latency issue in
XR usecases
Change-Id: I00dcf2416513b94701c11f2a07b2dc74b665f573
CRs-Fixed: 3116365
simple Alloc is being used in RX path which avoids
certain debug logic. during free of nbuf we should
avoid this debug logic else it will report it as
double free, this will be triggered only when debug
is enabled
Change-Id: Iadb40071fb733cc4de3291784df5075d5a099a8e
Add function pointers to free buffer address stored in status buffer
and support tx monitor in legacy and Waikiki flow.
Change-Id: I28612d388009292ff751fe514183fb801909f485
Introduce qdf wrapper API
1. frag is added to nbuf fragment array. If frag can't be fit in that nbuf
a new nbuf is allocated and frag is added to the new nbuf. Once added
nbuf is added as a fraglist to head nbuf. On a subsequent call, frag is
added to the last nbuf in a fraglist.
2. get reference for fragment.
Change-Id: Ia4ccbc48e54b08d6b9d4f0cf5089fbf43ee8b496