Lithium HW can parse each MSDU when packets are enqueued to transmit
classifier and each MSDU can get enqueued to different MSDU-Queue.
By default, there are 2 queues per TID – UDP and NON-UDP. Based on
the flow parsing, packets will be queued to either of them.
Enterprise customers uses RAW mode frames which transmit classifier
would not be able to identify L4 protocol for UDP or NON-UDP queue
for encrypted frames.
Customer can also have different application based packets which needs
to be enqueued to differently prioritized queues. They can choose to
tag each MSDU based on application DPI and derive the flow priority
as below –
• UDP
• NON-UDP
• HI-PRIO
• LOW-PRIO
Customer needs API support from host which will provide an ast-index
based on a particular flow id given peer mac address. Based on the mac
address, host will find the associated peer and return the ast_index &
cache set number corresponding to the flow id from peer flow based ast
entry table. Customer will then program this ast-index and ast override
in transmit classifier CMD ring to enqueue MSDU to a specific
flow-queuein TQM.
Host API:
Input parameter – uint8_t *macaddress,uint8_t flowid,uint8_t tid
Output – uint16_t ast_index
Change-Id: I62b2308510ee7a43b153e125dc3bee6abbad0848
Address the compilation issues when the DFS feature Auto channel
switch support is disabled(WLAN_DFS_PRECAC_AUTO_CHAN_SUPPORT=0).
Change-Id: I6eda4bf133552e145a49a60aea50a0ce29a11373
CRs-Fixed: 2608450
1. Hanndle BAR frame.
2. set rate for ACK frame.
3. Check block ack session and use block ack if block
ack session is established.
4. no ACK for broadcast probe request.
5. no ack if the ack policy is set to no ack in qos control.
Change-Id: Id42b0e95fc7ea043d35c8d7d5686f15140acdea6
use resp_type to identify packets with HTT_PPDU_STATS_ACK_EXPECTED_E.
this condition triggers rx legacy ack frame.
Change-Id: I17b2ce428692da655580a9365d1c3d920ac360fc
for probe response with missing payload is not handled properly
causing N -1 probe response count compared to sniffer.
Change-Id: I13b00b35be78b67f2242c84a8a9978814d097a21
Replace QCA_WIFI_QCA8074_VP with CONFIG_WIFI_EMULATION_WIFI_3_0
since VP platform is not being used anymore.
Most of the parameters present inside QCA_WIFI_QCA8074_VP are related
to emulation timeouts. Hence replacing it with a more meaningful flag.
Change-Id: I066cd86fe6ee15a1c3e8d7d656d3cf7d4a4b9d1b
a. On flush tlv from firmware, dequeue msdu from peer tid queue.
b. Fix msdus out of bound crash.
c. Fix non qos tid excess retries.
Change-Id: Iac50ec2e74762138b78ec78ada8c62c58601536e
At present, there is not check while calling multipass processing
and hence no packet gets dropped.
Adding check will drop packet in case of returning return type as
false. Hence modified return type as true so that no packet gets
dropped and existing flow doesn't break.
Change-Id: I49089f155b1b78adb533ca23f3b0f3cad9543135
CRs-Fixed: 2599782
Add WMI change to support extraction of consolidated multi vdev
response handling from TLV.
Change-Id: I5b9697b130ec38ac64de5a63ad8e491b9b786604
CRs-Fixed: 2601729
Add change to support consolidated multi vdev restart response
handling for non-TLV based platforms.
Change-Id: I58445fb66465b987906d23c079813b010976b380
CRs-Fixed: 2593073
1. In CFR RCC mode, when ucode aborts DMA of CFR data, 2 (or)
more PPDU status TLVs are likely to have same phy_addr+cookie in
RX location TLV, so the host will be flushing out the older PPDU
status TLV events instead of DBR events in LUT table,
since DBR events signify the actual DMA completion.
2. Same fix has been made for LUT entry ageout logic.
Change-Id: Ifc0717e97d21ba3463cc2f5ceb2f22a657177002
Earlier, CFR's LUT was dumped when difference between dbr count
and release count is greater than 1. This might be agrressive.
Modified the condition to reflect the worst case where LUT has
no empty entry.
Change-Id: I010431b446ddb66364505f0c8d9a70dd181eb8b1