lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230515070053.GE5143@thinkpad>
Date:   Mon, 15 May 2023 12:30:53 +0530
From:   Manivannan Sadhasivam <mani@...nel.org>
To:     Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>
Cc:     lpieralisi@...nel.org, kw@...ux.com, kishon@...nel.org,
        bhelgaas@...gle.com, linux-pci@...r.kernel.org,
        linux-kernel@...r.kernel.org, linux-arm-msm@...r.kernel.org
Subject: Re: [PATCH v3 0/7] Add support for MHI Endpoint function driver

On Tue, Mar 14, 2023 at 10:16:16AM +0530, Manivannan Sadhasivam wrote:
> Hello,
> 
> This series adds support for Modem Host Interface (MHI) Endpoint function
> driver and few updates to the PCI endpoint core.
> 
> MHI
> ===
> 
> MHI is the communication protocol used by the host machines to control and
> communicate with the Qualcomm modems/WLAN devices over any high speed physical
> bus like PCIe. In Linux kernel, MHI is modeled as a bus driver [1] and there
> are two instances of MHI used in a typical setup.
> 
> 1. MHI host - MHI implementation for the host machines like x86/ARM64.
> 2. MHI Endpoint - MHI implementation for the endpoint devices like modems.
> 
> MHI EPF
> =======
> 
> The MHI Endpoint function driver (MHI EPF) is used on the MHI endpoint devices
> like modems. The MHI EPF driver sits in between the PCIe EP and MHI EP bus and
> carries out all of the PCIe related activities like BAR config, PCIe Event
> handling, MMIO read/write etc,... for the MHI EP bus.
> 
> Below is the simple representation of the setup:
> 
> 
>                  +----------------------------------------------------+
>                  |                  Endpoint CPU                      |                   
>                  |                                                    |
> +------------+   |   +------------+   +-----------+   +-----------+   |
> |            |   |   |            |   |           |   |           |   |
> |            |   |   |   MHI EP   |   |           |   |           |   | PCIe Bus
> |  Modem DSP +---+---+    Bus     +---+  MHI EPF  +---+  PCIe EP  +---+---------
> |            |   |   |            |   |           |   |           |   |
> |            |   |   |            |   |           |   |           |   |
> +------------+   |   +------------+   +-----------+   +-----------+   |
>                  |                                                    |
>                  |                                                    |
>                  +----------------------------------------------------+
> 
> The data packets will be read from the Modem DSP by the MHI stack and will be
> transmitted to the host machine over PCIe bus with the help of MHI EPF driver.
> 
> Test setup
> ==========
> 
> This series has been tested on Snapdragon X55 modem a.k.a SDX55 connected to
> the ARM64 host machine.
> 

Lorenzo, gentle ping on this series.

- Mani

> Thanks,
> Mani
> 
> [1] https://www.kernel.org/doc/html/latest/mhi/mhi.html
> 
> Changes in v3:
> 
> * Fixed the probe function of EPF_VNTB driver
> 
> Changes in v2:
> 
> * Rebased on top of v6.3-rc1
> * Switched to the new callback interface for passing events from EPC to EPF
> * Dropped one patch related to notifier
> 
> Manivannan Sadhasivam (7):
>   PCI: endpoint: Pass EPF device ID to the probe function
>   PCI: endpoint: Warn and return if EPC is started/stopped multiple
>     times
>   PCI: endpoint: Add linkdown notifier support
>   PCI: endpoint: Add BME notifier support
>   PCI: qcom-ep: Add support for Link down notification
>   PCI: qcom-ep: Add support for BME notification
>   PCI: endpoint: Add PCI Endpoint function driver for MHI bus
> 
>  drivers/pci/controller/dwc/pcie-qcom-ep.c     |   2 +
>  drivers/pci/endpoint/functions/Kconfig        |  10 +
>  drivers/pci/endpoint/functions/Makefile       |   1 +
>  drivers/pci/endpoint/functions/pci-epf-mhi.c  | 454 ++++++++++++++++++
>  drivers/pci/endpoint/functions/pci-epf-ntb.c  |   3 +-
>  drivers/pci/endpoint/functions/pci-epf-test.c |   2 +-
>  drivers/pci/endpoint/functions/pci-epf-vntb.c |   2 +-
>  drivers/pci/endpoint/pci-ep-cfs.c             |   3 +
>  drivers/pci/endpoint/pci-epc-core.c           |  52 ++
>  drivers/pci/endpoint/pci-epf-core.c           |   8 +-
>  include/linux/pci-epc.h                       |   2 +
>  include/linux/pci-epf.h                       |   8 +-
>  12 files changed, 540 insertions(+), 7 deletions(-)
>  create mode 100644 drivers/pci/endpoint/functions/pci-epf-mhi.c
> 
> -- 
> 2.25.1
> 

-- 
மணிவண்ணன் சதாசிவம்

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ