Messages in this thread | | | From | "Gupta, Nipun" <> | Subject | RE: [RFC PATCH 0/2] add support for CDX bus MSI domain | Date | Thu, 4 Aug 2022 04:23:38 +0000 |
| |
[AMD Official Use Only - General]
> -----Original Message----- > From: Robin Murphy <robin.murphy@arm.com> > Sent: Wednesday, August 3, 2022 7:46 PM > To: Gupta, Nipun <Nipun.Gupta@amd.com>; linux-kernel@vger.kernel.org; > linux-arm-kernel@lists.infradead.org; gregkh@linuxfoundation.org; > rafael@kernel.org; maz@kernel.org; tglx@linutronix.de > Cc: okaya@kernel.org; Anand, Harpreet <harpreet.anand@amd.com>; > Simek, Michal <michal.simek@amd.com>; Agarwal, Nikhil > <nikhil.agarwal@amd.com> > Subject: Re: [RFC PATCH 0/2] add support for CDX bus MSI domain > > [CAUTION: External Email] > > On 2022-08-03 13:26, Nipun Gupta wrote: > > Devices in FPGA can be added/modified dynamically on run-time. > > These devices are exposed on system bus to embedded CPUs. > > > > CDX is an upcoming bus, that 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 targets to solves 2 issues when adding devices > > dynamically using platform_device_register API. > > > > 1. It creates a MSI domain for CDX bus devices, which can > > discover device ID used by GIC ITS without depending > > on of_node. > > 2. Since these devices are not present in device tree, it > > creates a sysfs entry to expose the compatible string. > > Isn't this pretty much what CONFIG_OF_DYNAMIC is for? From the look of > these patches this thing is still completely tied to devicetree, so why > reinvent that wheel?
According to our analysis, device tree modification via OF_DYNAMIC is mostly designed as a boot time patching mechanism but it was never designed to be runtime used as a "bus" mechanism.
Most firmware patches ACPI/DT during boot but we want to go beyond boot time configuration and would like to be able to dynamically remove/insert objects during FPGA servicing. As an example, a new FPGA can be programmed to the system where either the attributes are changed or new devices are introduced.
Another concern about OF_DYNAMIC is about security. We'd like to keep device-tree contents intact at boot and never touch again as a good security principle.
> > Robin. > > > Nipun Gupta (2): > > irqchip: cdx-bus: add cdx-MSI domain with gic-its domain as parent > > driver core: add compatible string in sysfs for platform devices > > > > drivers/base/platform.c | 15 +++ > > drivers/irqchip/Makefile | 1 + > > drivers/irqchip/irq-gic-v3-its-cdx-msi.c | 114 +++++++++++++++++++++++ > > include/linux/cdx/cdx.h | 15 +++ > > 4 files changed, 145 insertions(+) > > create mode 100644 drivers/irqchip/irq-gic-v3-its-cdx-msi.c > > create mode 100644 include/linux/cdx/cdx.h > >
| |