bus: mhi: ep: Add support for queueing SKBs to the host
authorManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Mon, 29 Nov 2021 10:02:42 +0000 (15:32 +0530)
committerManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Mon, 4 Apr 2022 04:47:51 +0000 (10:17 +0530)
commitf2a72d2410be8ad33a78b6d989861440def2c736
treece8a4c9f5b8e28e15faa4e5ec1c50c830a7e5afe
parent494a6f63937744d447630c9ab2f4a58f105b69f5
bus: mhi: ep: Add support for queueing SKBs to the host

Add support for queueing SKBs to the host over the transfer ring of the
relevant channel. The mhi_ep_queue_skb() API will be used by the client
networking drivers to queue the SKBs to the host over MHI bus.

The host will add ring elements to the transfer ring periodically for
the device and the device will write SKBs to the ring elements. If a
single SKB doesn't fit in a ring element (TRE), it will be placed in
multiple ring elements and the overflow event will be sent for all ring
elements except the last one. For the last ring element, the EOT event
will be sent indicating the packet boundary.

Reviewed-by: Alex Elder <elder@linaro.org>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
drivers/bus/mhi/ep/main.c
include/linux/mhi_ep.h