Re: [PATCH v4] PCI: hotplug: Add OCTEON PCI hotplug controller driver
From: Bjorn Helgaas
Date: Mon Nov 11 2024 - 15:15:00 EST
On Mon, Nov 11, 2024 at 07:15:11PM +0530, Shijith Thotton wrote:
> This patch introduces a PCI hotplug controller driver for the OCTEON
> PCIe device. The OCTEON PCIe device is a multi-function device where the
> first function serves as the PCI hotplug controller.
>
> +--------------------------------+
> | Root Port |
> +--------------------------------+
> |
> PCIe
> |
> +---------------------------------------------------------------+
> | OCTEON PCIe Multifunction Device |
> +---------------------------------------------------------------+
> | | | |
> | | | |
> +---------------------+ +----------------+ +-----+ +----------------+
> | Function 0 | | Function 1 | | ... | | Function 7 |
> | (Hotplug controller)| | (Hotplug slot) | | | | (Hotplug slot) |
> +---------------------+ +----------------+ +-----+ +----------------+
> |
> |
> +-------------------------+
> | Controller Firmware |
> +-------------------------+
>
> The hotplug controller driver enables hotplugging of non-controller
> functions within the same device. During probing, the driver removes
> the non-controller functions and registers them as PCI hotplug slots.
> These slots are added back by the driver, only upon request from the
> device firmware.
>
> The controller uses MSI-X interrupts to notify the host of hotplug
> events initiated by the OCTEON firmware. Additionally, the driver
> allows users to enable or disable individual functions via sysfs slot
> entries, as provided by the PCI hotplug framework.
Can we say something here about what the benefit of this driver is?
For example, does it save power?
What causes the function 0 firmware to request a hot-add or
hot-removal of another function?
Bjorn