From 1204ed01ea9a99242f194e9bceeec84b409f6dcc Mon Sep 17 00:00:00 2001 From: Devender Kumar Date: Tue, 30 May 2023 10:40:06 +0530 Subject: [PATCH] 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 --- qdf/inc/qdf_nbuf.h | 11 +++++++++++ qdf/linux/src/qdf_nbuf.c | 18 +++++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/qdf/inc/qdf_nbuf.h b/qdf/inc/qdf_nbuf.h index 73821a5c35..2b27d3f1f3 100644 --- a/qdf/inc/qdf_nbuf.h +++ b/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 */ diff --git a/qdf/linux/src/qdf_nbuf.c b/qdf/linux/src/qdf_nbuf.c index 9e3baa1047..6e75639d9f 100644 --- a/qdf/linux/src/qdf_nbuf.c +++ b/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];