qcacmn: Add fastpath Rx support
With dedicated CE for Rx and Tx completion HTT messages, skip processing in Host Target Communication layer. Do special handling in HIF-CE and HTT layer, this optimization results in 3-4% CPU utilization gain. Change-Id: I400148a0e24ac62dd09e2a95d5f35d94d83fe2df CRs-Fixed: 987182
This commit is contained in:

committad av
Gerrit - the friendly Code Review server

förälder
c7d5429428
incheckning
7399f148b5
@@ -184,4 +184,16 @@ static inline unsigned char *os_malloc(osdev_t nic_dev,
|
||||
#define SET_NETDEV_DEV(ndev, pdev)
|
||||
#endif
|
||||
|
||||
#define OS_SYNC_SINGLE_FOR_CPU(pdev, paddr_lo, len, oprn) \
|
||||
{ \
|
||||
dma_sync_single_for_cpu(pdev, paddr_lo, len, oprn); \
|
||||
}
|
||||
|
||||
#define OS_SYNC_SINGLE_FOR_DEVICE(pdev, paddr_lo, len, oprn) \
|
||||
{ \
|
||||
dma_sync_single_for_device(pdev, paddr_lo, len, oprn);\
|
||||
}
|
||||
|
||||
#define SLOTS_PER_TX 2
|
||||
|
||||
#endif /* end of _OSDEP_H */
|
||||
|
@@ -420,6 +420,24 @@ static inline void qdf_nbuf_free(qdf_nbuf_t buf)
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef WLAN_FEATURE_FASTPATH
|
||||
/**
|
||||
* qdf_nbuf_init_fast() - before put buf into pool,turn it to init state
|
||||
*
|
||||
* @buf: buf instance
|
||||
* Return: data pointer of this buf where new data has to be
|
||||
* put, or NULL if there is not enough room in this buf.
|
||||
*/
|
||||
|
||||
static inline void
|
||||
qdf_nbuf_init_fast(qdf_nbuf_t nbuf)
|
||||
{
|
||||
atomic_set(&nbuf->users, 1);
|
||||
nbuf->data = nbuf->head + NET_SKB_PAD;
|
||||
skb_reset_tail_pointer(nbuf);
|
||||
}
|
||||
#endif /* WLAN_FEATURE_FASTPATH */
|
||||
|
||||
static inline void qdf_nbuf_tx_free(qdf_nbuf_t buf_list, int tx_err)
|
||||
{
|
||||
__qdf_nbuf_tx_free(buf_list, tx_err);
|
||||
|
Referens i nytt ärende
Block a user