On 12/2/21 5:35 AM, Manivannan Sadhasivam wrote:
Hello, This series adds initial support for the Qualcomm specific Modem Host Interface (MHI) bus in endpoint devices like SDX55 modems. The MHI bus in endpoint devices communicates with the MHI bus in host machines like x86 over any physical bus like PCIe for data connectivity. The MHI host support is already in mainline [1] and been used by PCIe based modems and WLAN devices running vendor code (downstream).
Today I'm offering some initial review comments on this series. I told you offline I had quite a few comments. When I looked at the code a week or two ago I looked at the end result... So my notes didn't line up well with the way you built it up incrementally. (Still, the way you did it is generally good for review.) I got through patch 9 and kind of petered out. I can look at the rest tomorrow and/or can give you a chance to update before I review more. I'll let you decide... -Alex
Overview ======== This series aims at adding the MHI support in the endpoint devices with the goal of getting data connectivity using the mainline kernel running on the modems. Modems here refer to the combination of an APPS processor (Cortex A grade) and a baseband processor (DSP). The MHI bus is located in the APPS processor and it transfers data packets from the baseband processor to the host machine. The MHI Endpoint (MHI EP) stack proposed here is inspired by the downstream code written by Qualcomm. But the complete stack is mostly re-written to adapt to the "bus" framework and made it modular so that it can work with the upstream subsystems like "PCI Endpoint". The code structure of the MHI endpoint stack follows the MHI host stack to maintain uniformity. With this initial MHI EP stack (along with few other drivers), we can establish the network interface between host and endpoint over the MHI software channels (IP_SW0) and can do things like IP forwarding, SSH, etc...
. . .