Speaker
Description
On x86 / ACPI platforms, devices on enumerable busses can normally be seen directly by the OS. On device tree platforms, these devices sometimes require extra power sequencing like toggling regulator supplies or GPIO lines. Over the years most of these cases have been solved, but there are still some gaps.
As of kernel version v7.0, support for power sequencing generic PCI devices, ones that have no extra toggles that are not part of PCI specification, and M.2 M-key slots is available [link]. v7.1 then adds support for the PCI part of E-key slots [link].
Support for the USB part of M.2 E-key slots is WIP by the author [link]. Support for onboard USB devices and USB type A connectors is provided
by the onboard device driver.
This session intends to give a quick overview of the current status and discuss whether parts of this could be moved or integrated at the driver core level. These include:
- Bus code integration for acquiring power sequencers
- Creating stub platform devices to provide power control functionality
- USB onboard devices
- PCI pwrctrl devices
Such mechanisms could then be reused for the MDIO bus.