Needed by platform device drivers, such as the upcoming vfio-platform driver, in order to bypass the existing OF, ACPI, id_table and name string matches, and successfully be able to be bound to any device, like so: echo vfio-platform > /sys/bus/platform/devices/fff51000.ethernet/driver_override echo fff51000.ethernet > /sys/bus/platform/devices/fff51000.ethernet/driver/unbind echo fff51000.ethernet > /sys/bus/platform/drivers_probe This mimics "PCI: Introduce new device binding path using pci_dev.driver_override", which is an interface enhancement for more deterministic PCI device binding, e.g., when in the presence of hotplug. Reviewed-by: Alex Williamson <alex.williamson@redhat.com> Reviewed-by: Alexander Graf <agraf@suse.de> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>tirimbino
parent
1cec24c59b
commit
3d713e0e38
@ -0,0 +1,20 @@ |
||||
What: /sys/bus/platform/devices/.../driver_override |
||||
Date: April 2014 |
||||
Contact: Kim Phillips <kim.phillips@freescale.com> |
||||
Description: |
||||
This file allows the driver for a device to be specified which |
||||
will override standard OF, ACPI, ID table, and name matching. |
||||
When specified, only a driver with a name matching the value |
||||
written to driver_override will have an opportunity to bind |
||||
to the device. The override is specified by writing a string |
||||
to the driver_override file (echo vfio-platform > \ |
||||
driver_override) and may be cleared with an empty string |
||||
(echo > driver_override). This returns the device to standard |
||||
matching rules binding. Writing to driver_override does not |
||||
automatically unbind the device from its current driver or make |
||||
any attempt to automatically load the specified driver. If no |
||||
driver with a matching name is currently loaded in the kernel, |
||||
the device will not bind to any driver. This also allows |
||||
devices to opt-out of driver binding using a driver_override |
||||
name such as "none". Only a single driver may be specified in |
||||
the override, there is no support for parsing delimiters. |
Loading…
Reference in new issue