Feature #11957
openImplement topo support for controlling the LEDs for NVMe/U.2 drive bays
0%
Description
This issue is to cover the work to scope out and implement the changes needed to allow libtopo to enumerate and control the LEDs for NVME/U.2 drive bays. In particular we would like to be able to enable/disable the Fault and Identify indicator states from software.
The PCIe hotplug framework already implements the base level kernel support for controlling the LEDs on hotpluggable PCI/PCIe devices. Userland consumers can access these facilities via the hotplugd daemon. A C interface for interacting with hotplugd is provided by libhotplug. A CLI interface is provided via cfmadm(1m).
In order to tie this all into libtopo, I think what we'd want to do is implement a new facility provider module (fac_prov_nvme) that would implement a propmethod for the facility/mode property, which could be registered onto nvme topo nodes. This method would leverage the interfaces in libhotplug to control the ident and fault indicators on NVMe devices.