diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-08-27 15:41:16 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-08-27 15:41:16 -0400 |
| commit | bfb3943bed670a0655aa2f9dcf82222ff09d6dd1 (patch) | |
| tree | cd3907bffb8d62da6fc463bfcb8bc2ec59105dcb /include/linux | |
| parent | 33cbfe54499338af08ab906a99afac247ea533f6 (diff) | |
Revert "driver core: Add support for linking devices during device addition"
This reverts commit 5302dd7dd0b6d04c63cdce51d1e9fda9ef0be886.
Based on a lot of email and in-person discussions, this patch series is
being reworked to address a number of issues that were pointed out that
needed to be taken care of before it should be merged. It will be
resubmitted with those changes hopefully soon.
Cc: Frank Rowand <frowand.list@gmail.com>
Cc: Saravana Kannan <saravanak@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/device.h | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/include/linux/device.h b/include/linux/device.h index 73210745cc6b..ec598ede9455 100644 --- a/include/linux/device.h +++ b/include/linux/device.h | |||
| @@ -78,17 +78,6 @@ extern void bus_remove_file(struct bus_type *, struct bus_attribute *); | |||
| 78 | * -EPROBE_DEFER it will queue the device for deferred probing. | 78 | * -EPROBE_DEFER it will queue the device for deferred probing. |
| 79 | * @uevent: Called when a device is added, removed, or a few other things | 79 | * @uevent: Called when a device is added, removed, or a few other things |
| 80 | * that generate uevents to add the environment variables. | 80 | * that generate uevents to add the environment variables. |
| 81 | * @add_links: Called, perhaps multiple times per device, after a device is | ||
| 82 | * added to this bus. The function is expected to create device | ||
| 83 | * links to all the suppliers of the input device that are | ||
| 84 | * available at the time this function is called. As in, the | ||
| 85 | * function should NOT stop at the first failed device link if | ||
| 86 | * other unlinked supplier devices are present in the system. | ||
| 87 | * | ||
| 88 | * Return 0 if device links have been successfully created to all | ||
| 89 | * the suppliers of this device. Return an error if some of the | ||
| 90 | * suppliers are not yet available and this function needs to be | ||
| 91 | * reattempted in the future. | ||
| 92 | * @probe: Called when a new device or driver add to this bus, and callback | 81 | * @probe: Called when a new device or driver add to this bus, and callback |
| 93 | * the specific driver's probe to initial the matched device. | 82 | * the specific driver's probe to initial the matched device. |
| 94 | * @remove: Called when a device removed from this bus. | 83 | * @remove: Called when a device removed from this bus. |
| @@ -133,7 +122,6 @@ struct bus_type { | |||
| 133 | 122 | ||
| 134 | int (*match)(struct device *dev, struct device_driver *drv); | 123 | int (*match)(struct device *dev, struct device_driver *drv); |
| 135 | int (*uevent)(struct device *dev, struct kobj_uevent_env *env); | 124 | int (*uevent)(struct device *dev, struct kobj_uevent_env *env); |
| 136 | int (*add_links)(struct device *dev); | ||
| 137 | int (*probe)(struct device *dev); | 125 | int (*probe)(struct device *dev); |
| 138 | int (*remove)(struct device *dev); | 126 | int (*remove)(struct device *dev); |
| 139 | void (*shutdown)(struct device *dev); | 127 | void (*shutdown)(struct device *dev); |
| @@ -1143,13 +1131,11 @@ enum dl_dev_state { | |||
| 1143 | * struct dev_links_info - Device data related to device links. | 1131 | * struct dev_links_info - Device data related to device links. |
| 1144 | * @suppliers: List of links to supplier devices. | 1132 | * @suppliers: List of links to supplier devices. |
| 1145 | * @consumers: List of links to consumer devices. | 1133 | * @consumers: List of links to consumer devices. |
| 1146 | * @needs_suppliers: Hook to global list of devices waiting for suppliers. | ||
| 1147 | * @status: Driver status information. | 1134 | * @status: Driver status information. |
| 1148 | */ | 1135 | */ |
| 1149 | struct dev_links_info { | 1136 | struct dev_links_info { |
| 1150 | struct list_head suppliers; | 1137 | struct list_head suppliers; |
| 1151 | struct list_head consumers; | 1138 | struct list_head consumers; |
| 1152 | struct list_head needs_suppliers; | ||
| 1153 | enum dl_dev_state status; | 1139 | enum dl_dev_state status; |
| 1154 | }; | 1140 | }; |
| 1155 | 1141 | ||
