Lines Matching +full:bus +full:- +full:specific

18 The driver must initialize at least the name and bus fields. It should
33 .bus = &pci_bus_type,
42 model because the bus they belong to has a bus-specific structure with
43 bus-specific fields that cannot be generalized.
48 completely bus-specific. Defining them as bus-specific entities would
49 sacrifice type-safety, so we keep bus-specific structures around.
51 Bus-specific drivers should include a generic struct device_driver in
52 the definition of the bus-specific driver. Like this::
59 A definition that included bus-specific fields would look like
66 .bus = &pci_bus_type,
85 no bus-specific fields (i.e. don't have a bus-specific driver
89 Most drivers, however, will have a bus-specific structure and will
90 need to register with the bus using something like pci_driver_register.
96 used by the device model core or the bus driver.
99 Transition Bus Drivers
104 let the bus wrapper fill in the fields. For the callbacks, the bus can
105 define generic callbacks that forward the call to the bus-specific
134 bus's directory. In this directory, the driver can export an interface
151 The probe() entry is called in task context, with the bus's rwsem locked
153 container_of() to convert "dev" to a bus-specific type, both in probe()
156 addition to dev->platform_data to initialize the driver.
158 This callback holds the driver-specific logic to bind the driver to a
171 Optionally, probe() may return -EPROBE_DEFER if the driver depends on
175 must defer, it should return -EPROBE_DEFER as early as possible to
180 -EPROBE_DEFER must not be returned if probe() has already created
182 in a cleanup path. If -EPROBE_DEFER is returned after a child
243 it into a supported low-power state.