lkml.org 
[lkml]   [2022]   [Aug]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[RFC PATCH v2 0/6] add support for CDX bus controller
    Date
    Devices in FPGA can be added/modified dynamically on run-time.
    These devices are exposed on system bus to embedded CPUs.

    Xilinx CDX bus, caters to the requirement for dynamically
    discovered FPGA devices. These devices are added as platform
    devices where fwnode is created using 'software nodes' in
    Linux framework.

    This RFC:
    - Intrduces the CDX bus controller and platform device
    creation for the devices on the CDX bus.
    - Add rescan and reset support for the CDX buses as well
    as reset of the devices on the CDX bus.
    - VFIO platform reset support for CDX bus.
    - creates a sysfs entry to expose the compatible string
    for platform devices.

    Please NOTE: This is a RFC change which does not yet support
    the CDX bus firmware interface as it is under development, and
    this series aims to get an early feedback from the community.
    There are TODO items mentioned in the patches which needs to
    be updated for complete bus support.

    Changes in v2:
    - introduce basic CDX bus infrastructure
    - fixed code for making compatible visible for devices
    having the 'compatible' property only.
    - moved CDX-MSI domain as part of CDX bus infrastructure
    (previously it was part of irqchip).
    - fixed few prints
    - support rescan and reset of CDX bus
    - add VFIO reset module for CDX bus based devices

    Nipun Gupta (6):
    Documentation: DT: Add entry for CDX controller
    bus/cdx: add the cdx bus driver
    bus/cdx: add cdx-MSI domain with gic-its domain as parent
    bus/cdx: add rescan and reset support
    vfio: platform: reset: add reset for cdx devices
    driver core: add compatible string in sysfs for platform devices

    Documentation/ABI/testing/sysfs-bus-cdx | 34 ++
    Documentation/ABI/testing/sysfs-bus-platform | 8 +
    .../devicetree/bindings/bus/xlnx,cdx.yaml | 110 +++++
    MAINTAINERS | 8 +
    drivers/base/platform.c | 23 ++
    drivers/bus/Kconfig | 1 +
    drivers/bus/Makefile | 3 +
    drivers/bus/cdx/Kconfig | 7 +
    drivers/bus/cdx/Makefile | 3 +
    drivers/bus/cdx/cdx.c | 391 ++++++++++++++++++
    drivers/bus/cdx/cdx.h | 51 +++
    drivers/bus/cdx/cdx_msi_domain.c | 90 ++++
    drivers/vfio/platform/reset/Kconfig | 8 +
    drivers/vfio/platform/reset/Makefile | 1 +
    .../vfio/platform/reset/vfio_platform_cdx.c | 104 +++++
    include/linux/cdx/cdx_bus.h | 53 +++
    16 files changed, 895 insertions(+)
    create mode 100644 Documentation/ABI/testing/sysfs-bus-cdx
    create mode 100644 Documentation/devicetree/bindings/bus/xlnx,cdx.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/cdx_msi_domain.c
    create mode 100644 drivers/vfio/platform/reset/vfio_platform_cdx.c
    create mode 100644 include/linux/cdx/cdx_bus.h

    --
    2.25.1

    \
     
     \ /
      Last update: 2022-08-17 17:06    [W:3.081 / U:0.152 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site