android_kernel_xiaomi_sm8350/core/dp/txrx
Chaoli Zhou fd8d282a75 qcacld-3.0: Fix WDI 1.0 MCC TX SMMU fault
Merge from 2517936 & 2490501.
SMMU fault is observed for WDI 1.0 MCC TX when SMMU is enabled.
Issue is that dma_addr passed from IPA driver is iova of IPA
domain. WLAN driver directly uses the iova to do transmission.
Since iova is not mapped in WLAN domain, SMMU fault occurs.
Fix is to map skb to WLAN domain for TX when SMMU is enabled.
After doing DMA map, an offset of frag_header and ipa_header
is added to the iova and skb->cb is updated with the new iova.
After TX completion, skb DMA unmap is done but with the iova
of the above offset included, which leads to unmapped iova error.
Fix is to recalculate the iova and update skb->cb with new iova,
which has frag_header and ipa_header length removed.

Change-Id: Ib0112d6a3de6dc9af43e5c48a49085c7d4f41a9b
CRs-Fixed: 2534845
2019-09-29 09:48:12 -07:00
..
ipv6_defs.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_cfg.c qcacld-3.0: Add support for TCP delayed ack in driver 2019-06-18 22:27:35 -07:00
ol_ctrl_txrx_api.h qcacld-3.0: Consolidate multiple MAC_ADDR_LEN to QDF_MAC_ADDR_SIZE 2019-03-28 16:49:58 -07:00
ol_osif_txrx_api.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_defrag.c qcacld-3.0: Consolidate multiple MAC_ADDR_LEN to QDF_MAC_ADDR_SIZE 2019-03-28 16:49:58 -07:00
ol_rx_defrag.h qcacld-3.0: Consolidate multiple MAC_ADDR_LEN to QDF_MAC_ADDR_SIZE 2019-03-28 16:49:58 -07:00
ol_rx_fwd.c qcacld-3.0: Consolidate multiple MAC_ADDR_LEN to QDF_MAC_ADDR_SIZE 2019-03-28 16:49:58 -07:00
ol_rx_fwd.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_pn.c qcacld-3.0: Replace MAC_ADDRESS_STR with QDF_MAC_ADDR_STR 2019-04-18 13:26:09 -07:00
ol_rx_pn.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_reorder_timeout.c qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_reorder_timeout.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_reorder.c qcacld-3.0: Add support for addba/delba HTT message 2019-08-12 01:27:32 -07:00
ol_rx_reorder.h qcacld-3.0: Featurize partial reorder properly 2019-08-19 02:10:41 -07:00
ol_rx.c qcacld-3.0: update PTP timestamp for Rx packet 2019-09-17 03:56:00 -07:00
ol_rx.h qcacld-3.0: Use new HDD callback for rx mic error 2019-07-22 11:36:11 -07:00
ol_tx_classify.c qcacld-3.0: Ratelimit per packet log in case of disconnect 2019-07-22 02:19:00 -07:00
ol_tx_classify.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_tx_desc.c qcacld-3.0: Fix WDI 1.0 MCC TX SMMU fault 2019-09-29 09:48:12 -07:00
ol_tx_desc.h qcacld-3.0: Remove unnecessary prints from data path 2018-11-16 05:08:30 -08:00
ol_tx_hl.c qcacld-3.0: Set tx_comp_req in the htt header when ptp is enabled 2019-09-27 07:56:27 -07:00
ol_tx_ll_fastpath.c qcacld-3.0: Fix DPTRACE TX and RX counters for HL data path 2019-07-19 04:04:09 -07:00
ol_tx_ll_legacy.c qcacld-3.0: Featurize fastpath feature 2018-06-07 15:47:45 -07:00
ol_tx_ll.c qcacld-3.0: Update data path statistics log level 2018-08-14 02:15:39 -07:00
ol_tx_queue.c qcacld-3.0: Replace MAC_ADDRESS_STR with QDF_MAC_ADDR_STR 2019-04-18 13:26:09 -07:00
ol_tx_queue.h qcacld-3.0: HL: Iterate over txqs of a selected category 2019-08-13 07:33:01 -07:00
ol_tx_sched.c qcacld-3.0: Genoa: SDIO: Handle Tx Padding & Credits 2019-09-08 07:37:21 -07:00
ol_tx_sched.h qcacld-3.0: Genoa: SDIO: Handle Tx Padding & Credits 2019-09-08 07:37:21 -07:00
ol_tx_send.c qcacld-3.0: Deduct HTT credit from TXQ group also 2019-08-26 00:26:46 -07:00
ol_tx_send.h qcacld-3.0: Restart netdev queues when tx_desc get free 2018-06-26 01:35:47 -07:00
ol_tx_throttle.c qcacld-3.0: Remove unnecessary prints from data path 2018-11-16 05:08:30 -08:00
ol_tx.c qcacld-3.0: Remove void pointer usage for part of DP code 2019-07-27 13:42:14 -07:00
ol_tx.h qcacld-3.0: Separate out HL and LL TX data path 2018-08-06 04:21:13 -07:00
ol_txrx_encap.c qcacld-3.0: Consolidate multiple MAC_ADDR_LEN to QDF_MAC_ADDR_SIZE 2019-03-28 16:49:58 -07:00
ol_txrx_encap.h qcacld-3.0: dp: Fix misspellings 2018-05-16 18:01:38 -07:00
ol_txrx_event.c qcacld-3.0: Fix function type for wdi_event_sub 2019-02-23 00:25:49 -08:00
ol_txrx_flow_control.c qcacld-3.0: Add stop_th and start_th for tx flow control V1 2019-04-28 18:46:27 -07:00
ol_txrx_internal.h qcacld-3.0: Add packet drop status 2019-08-16 08:22:41 -07:00
ol_txrx_ipa.c qcacld-3.0: Properly set IPA RX params for WDI 1.0 2019-07-16 18:40:11 -07:00
ol_txrx_ipa.h qcacld-3.0: Export max IPA interface numbers 2019-07-25 02:40:48 -07:00
ol_txrx_legacy_flow_control.c qcacld-3.0: Fix WDI 1.0 MCC TX SMMU fault 2019-09-29 09:48:12 -07:00
ol_txrx_peer_find.c qcacld-3.0: Replace MAC_ADDRESS_STR with QDF_MAC_ADDR_STR 2019-04-18 13:26:09 -07:00
ol_txrx_peer_find.h qcacld-3.0: dp: Replace explicit comparison to NULL 2019-03-22 17:39:28 -07:00
ol_txrx_types.h qcacld-3.0: update PTP timestamp for Rx packet 2019-09-17 03:56:00 -07:00
ol_txrx.c qcacld-3.0: Genoa: SDIO: Handle Tx Padding & Credits 2019-09-08 07:37:21 -07:00
ol_txrx.h qcacld-3.0: Cleanup ol_txrx_get_tx_resource[PEER_ID_PHASE1] 2019-08-17 10:53:38 -07:00
wdi_event_api.h qcacld-3.0: Fix function type for wdi_event_sub 2019-02-23 00:25:49 -08:00
wdi_event.h qcacld-3.0: Move enum WDI_EVENT to common datapath 2019-05-15 05:47:01 -07:00