diff options
| author | Will Huang <wilhuang@codeaurora.org> | 2018-10-19 13:49:56 +0800 |
|---|---|---|
| committer | nshrivas <nshrivas@codeaurora.org> | 2018-10-26 04:27:55 -0700 |
| commit | 82c96478daa3f3678d22ea59a8c36dd09dd4292d (patch) | |
| tree | b04e576d67c3686ca3ba11c777e724c1e2417ea5 | |
| parent | 1adbe671436e8d0bdc57b451e1f7511c17aecf8d (diff) | |
qcacmn: Add bi-direction dma map flag to qdf_nbuf_cb
In case of 11w PMF tx frame, some target would dma write to this tx
buffer, it may cause smmu check fault.
Add a bi-direction map flag to mcl skb.cb[] for this special case.
Change-Id: I72a2c11abb9f3e7e8fb9c6f5290cd4f8d209b19a
CRs-Fixed: 2337204
| -rw-r--r-- | qdf/linux/src/i_qdf_nbuf.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/qdf/linux/src/i_qdf_nbuf.h b/qdf/linux/src/i_qdf_nbuf.h index 4e797fe8629a..ab65c2655853 100644 --- a/qdf/linux/src/i_qdf_nbuf.h +++ b/qdf/linux/src/i_qdf_nbuf.h @@ -117,6 +117,8 @@ typedef union { * @tx.trace.vdev_id : vdev (for protocol trace) * @tx.ipa.owned : packet owned by IPA * @tx.ipa.priv : private data, used by IPA + * @tx.dma_option.bi_map: flag to do special dma map with QDF_DMA_BIDIRECTIONAL + * @tx.dma_option.reserved: reserved bits for future use * @tx.desc_id : tx desc id, used to sync between host and fw */ struct qdf_nbuf_cb { @@ -192,8 +194,12 @@ struct qdf_nbuf_cb { uint32_t owned:1, priv:31; } ipa; /* 4 */ + struct { + uint8_t bi_map:1, + reserved:7; + } dma_option; /* 1 byte */ uint16_t desc_id; /* 2 bytes */ - } mcl;/* 14 bytes*/ + } mcl;/* 15 bytes*/ } dev; } tx; /* 40 bytes */ } u; @@ -298,6 +304,8 @@ struct qdf_nbuf_cb { (((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.mcl.ipa.owned) #define QDF_NBUF_CB_TX_IPA_PRIV(skb) \ (((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.mcl.ipa.priv) +#define QDF_NBUF_CB_TX_DMA_BI_MAP(skb) \ + (((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.mcl.dma_option.bi_map) #define QDF_NBUF_CB_TX_DESC_ID(skb) \ (((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.mcl.desc_id) #define QDF_NBUF_CB_TX_FTYPE(skb) \ |
