lkml.org 
[lkml]   [2023]   [Jan]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/7] add support for CDX bus
    Date
    Introduces AMD CDX bus, which provides a mechanism to
    discover/rescan CDX devices. The CDX devices are
    memory mapped on system bus for embedded CPUs.

    CDX controller interacts with the firmware to query different
    CDX devices present in the Fabric and expose them to the Linux
    host on CDX bus.

    This patch series:
    - Introduces the CDX bus and CDX devices.
    - Device tree binding for CDX controller
    - Support for CDX bus in arm-smmu-v3 driver
    - Add MCDI (Management CPU Driver Interface) as a protocol
    for communication with RPU Firmware
    - Support RPMSg channel for Firmware communication

    MSI patches for CDX are not added in this series as it's
    support is being revisited as per patch series:
    https://lore.kernel.org/all/20221111133158.196269823@linutronix.de/
    It will be added as separate patches.

    RFC changes with stubs were submitted at:
    https://lore.kernel.org/linux-arm-kernel/20221014044049.2557085-1-nipun.gupta@amd.com/

    Abhijit Gangurde (1):
    bus/cdx: add rpmsg communication channel for CDX

    Nipun Gupta (6):
    bus/cdx: add the cdx bus driver
    iommu/arm-smmu-v3: support ops registration for CDX bus
    dt-bindings: bus: add CDX bus controller device tree bindings
    bus/cdx: add MCDI protocol interface for firmware interaction
    bus/cdx: add cdx controller
    bus/cdx: add device attributes

    Documentation/ABI/testing/sysfs-bus-cdx | 46 +
    .../bindings/bus/xlnx,cdxbus-controller.yaml | 68 ++
    MAINTAINERS | 8 +
    drivers/bus/Kconfig | 1 +
    drivers/bus/Makefile | 2 +
    drivers/bus/cdx/Kconfig | 16 +
    drivers/bus/cdx/Makefile | 8 +
    drivers/bus/cdx/cdx.c | 577 +++++++++++
    drivers/bus/cdx/cdx.h | 62 ++
    drivers/bus/cdx/controller/Kconfig | 30 +
    drivers/bus/cdx/controller/Makefile | 9 +
    drivers/bus/cdx/controller/bitfield.h | 88 ++
    drivers/bus/cdx/controller/cdx_controller.c | 282 ++++++
    drivers/bus/cdx/controller/cdx_controller.h | 30 +
    drivers/bus/cdx/controller/cdx_rpmsg.c | 222 +++++
    drivers/bus/cdx/controller/mc_cdx_pcol.h | 707 ++++++++++++++
    drivers/bus/cdx/controller/mcdi.c | 918 ++++++++++++++++++
    drivers/bus/cdx/controller/mcdi.h | 259 +++++
    drivers/bus/cdx/controller/mcdi_functions.c | 139 +++
    drivers/bus/cdx/controller/mcdi_functions.h | 61 ++
    drivers/iommu/iommu.c | 4 +
    include/linux/cdx/cdx_bus.h | 176 ++++
    include/linux/mod_devicetable.h | 15 +
    scripts/mod/devicetable-offsets.c | 4 +
    scripts/mod/file2alias.c | 12 +
    25 files changed, 3744 insertions(+)
    create mode 100644 Documentation/ABI/testing/sysfs-bus-cdx
    create mode 100644 Documentation/devicetree/bindings/bus/xlnx,cdxbus-controller.yaml
    create mode 100644 drivers/bus/cdx/Kconfig
    create mode 100644 drivers/bus/cdx/Makefile
    create mode 100644 drivers/bus/cdx/cdx.c
    create mode 100644 drivers/bus/cdx/cdx.h
    create mode 100644 drivers/bus/cdx/controller/Kconfig
    create mode 100644 drivers/bus/cdx/controller/Makefile
    create mode 100644 drivers/bus/cdx/controller/bitfield.h
    create mode 100644 drivers/bus/cdx/controller/cdx_controller.c
    create mode 100644 drivers/bus/cdx/controller/cdx_controller.h
    create mode 100644 drivers/bus/cdx/controller/cdx_rpmsg.c
    create mode 100644 drivers/bus/cdx/controller/mc_cdx_pcol.h
    create mode 100644 drivers/bus/cdx/controller/mcdi.c
    create mode 100644 drivers/bus/cdx/controller/mcdi.h
    create mode 100644 drivers/bus/cdx/controller/mcdi_functions.c
    create mode 100644 drivers/bus/cdx/controller/mcdi_functions.h
    create mode 100644 include/linux/cdx/cdx_bus.h

    --
    2.17.1

    \
     
     \ /
      Last update: 2023-03-26 23:44    [W:3.167 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site