Explorar el Código

qcacmn: Add qdf_nbuf_set_fast_xmit() API support

Add support for filling fast_xmit in SKB for platform
which support skb_recycler feature.

Add a QDF abstraction to update fast_xmit in skb, when it is supported.

Change-Id: Ibc562023ddeb0bf5c2709bbb60b596676c932b5a
CRs-Fixed: 3522028
Devender Kumar hace 2 años
padre
commit
1204ed01ea
Se han modificado 2 ficheros con 28 adiciones y 1 borrados
  1. 11 0
      qdf/inc/qdf_nbuf.h
  2. 17 1
      qdf/linux/src/qdf_nbuf.c

+ 11 - 0
qdf/inc/qdf_nbuf.h

@@ -5626,4 +5626,15 @@ qdf_nbuf_t qdf_get_nbuf_valid_frag(qdf_nbuf_t nbuf);
  */
 bool qdf_nbuf_fast_xmit(qdf_nbuf_t nbuf);
 
+/**
+ * qdf_nbuf_set_fast_xmit() - Set fast_xmit in SKB
+ * @nbuf: qdf_nbuf_t master nbuf
+ * @value: value to set in fast_xmit
+ *
+ * This function set fast_xmit in SKB if it exist.
+ *
+ * Return: void
+ */
+void qdf_nbuf_set_fast_xmit(qdf_nbuf_t nbuf, int value);
+
 #endif /* _QDF_NBUF_H */

+ 17 - 1
qdf/linux/src/qdf_nbuf.c

@@ -2670,14 +2670,30 @@ bool qdf_nbuf_fast_xmit(qdf_nbuf_t nbuf)
 {
 	return nbuf->fast_xmit;
 }
+
+qdf_export_symbol(qdf_nbuf_fast_xmit);
+
+void qdf_nbuf_set_fast_xmit(qdf_nbuf_t nbuf, int value)
+{
+	nbuf->fast_xmit = value;
+}
+
+qdf_export_symbol(qdf_nbuf_set_fast_xmit);
 #else
 bool qdf_nbuf_fast_xmit(qdf_nbuf_t nbuf)
 {
 	return false;
 }
-#endif
+
 qdf_export_symbol(qdf_nbuf_fast_xmit);
 
+void qdf_nbuf_set_fast_xmit(qdf_nbuf_t nbuf, int value)
+{
+}
+
+qdf_export_symbol(qdf_nbuf_set_fast_xmit);
+#endif
+
 #ifdef NBUF_MEMORY_DEBUG
 
 static spinlock_t g_qdf_net_buf_track_lock[QDF_NET_BUF_TRACK_MAX_SIZE];