bus: mhi: ep: Add support for registering MHI endpoint controllers
authorManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Tue, 5 Apr 2022 13:57:37 +0000 (19:27 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 26 Apr 2022 11:17:40 +0000 (13:17 +0200)
commitd434743e5cac3558381b767f343eef5af246a4dc
tree00dd17a96a5d645089a92ec1aa4c7f5255824480
parente88a6a8fece9b92be4f55735134a022061e6e68b
bus: mhi: ep: Add support for registering MHI endpoint controllers

This commit adds support for registering MHI endpoint controller drivers
with the MHI endpoint stack. MHI endpoint controller drivers manage
the interaction with the host machines (such as x86). They are also the
MHI endpoint bus master in charge of managing the physical link between
the host and endpoint device. Eventhough the MHI spec is bus agnostic,
the current implementation is entirely based on PCIe bus.

The endpoint controller driver encloses all information about the
underlying physical bus like PCIe. The registration process involves
parsing the channel configuration and allocating an MHI EP device.

Channels used in the endpoint stack follows the perspective of the MHI
host stack. i.e.,

UL - From host to endpoint
DL - From endpoint to host

Reviewed-by: Alex Elder <elder@linaro.org>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Link: https://lore.kernel.org/r/20220405135754.6622-2-manivannan.sadhasivam@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/bus/mhi/Kconfig
drivers/bus/mhi/Makefile
drivers/bus/mhi/ep/Kconfig [new file with mode: 0644]
drivers/bus/mhi/ep/Makefile [new file with mode: 0644]
drivers/bus/mhi/ep/internal.h [new file with mode: 0644]
drivers/bus/mhi/ep/main.c [new file with mode: 0644]
include/linux/mhi_ep.h [new file with mode: 0644]