Ver código fonte

qcacmn: Add QDF abstraction for dmac_inv_range

Add qdf wrapper for function dmac_inv_range. This
invalidates the specified virtual address range.

Change-Id: Ia3f92cb5136dbdbfea1e9cda8a52b474456a4e0a
CRs-Fixed: 2634679
Varsha Mishra 5 anos atrás
pai
commit
5cd2a434e1
3 arquivos alterados com 30 adições e 1 exclusões
  1. 13 0
      qdf/inc/qdf_nbuf.h
  2. 3 0
      qdf/linux/src/i_qdf_nbuf_m.h
  3. 14 1
      qdf/linux/src/i_qdf_nbuf_w.h

+ 13 - 0
qdf/inc/qdf_nbuf.h

@@ -934,6 +934,19 @@ qdf_nbuf_sync_for_cpu(qdf_device_t osdev, qdf_nbuf_t buf, qdf_dma_dir_t dir)
 	__qdf_nbuf_sync_for_cpu(osdev, buf, dir);
 }
 
+/**
+ * qdf_nbuf_dma_inv_range() - Invalidate the specified virtual address range
+ * @buf_start: start address
+ * @buf_end: end address
+ *
+ * Return: none
+ */
+static inline void
+qdf_nbuf_dma_inv_range(const void *buf_start, const void *buf_end)
+{
+	__qdf_nbuf_dma_inv_range(buf_start, buf_end);
+}
+
 static inline int qdf_nbuf_get_num_frags(qdf_nbuf_t buf)
 {
 	return __qdf_nbuf_get_num_frags(buf);

+ 3 - 0
qdf/linux/src/i_qdf_nbuf_m.h

@@ -163,4 +163,7 @@ qdf_nbuf_deinit_replenish_timer(void)
 	__qdf_nbuf_deinit_replenish_timer();
 }
 
+static inline void
+__qdf_nbuf_dma_inv_range(const void *buf_start, const void *buf_end) {}
+
 #endif /*_I_QDF_NBUF_M_H */

+ 14 - 1
qdf/linux/src/i_qdf_nbuf_w.h

@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014-2019 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2014-2020 The Linux Foundation. All rights reserved.
  *
  * Permission to use, copy, modify, and/or distribute this software for
  * any purpose with or without fee is hereby granted, provided that the
@@ -134,4 +134,17 @@ static inline uint8_t *__qdf_nbuf_pull_head(struct sk_buff *skb, size_t size)
 static inline void qdf_nbuf_init_replenish_timer(void) {}
 static inline void qdf_nbuf_deinit_replenish_timer(void) {}
 
+/**
+ * __qdf_nbuf_dma_inv_range() - nbuf invalidate
+ * @buf_start: from
+ * @buf_end: to address to invalidate
+ *
+ * Return: none
+ */
+static inline void
+__qdf_nbuf_dma_inv_range(const void *buf_start, const void *buf_end)
+{
+	dmac_inv_range(buf_start, buf_end);
+}
+
 #endif /*_I_QDF_NBUF_W_H */