Revert "driver core: Add sync_state driver/bus callback"
[sfrench/cifs-2.6.git] / include / linux / device.h
index 76496497e7530fce4f7d315a16962f82ffa32525..90142ec9ce8417686cd1263ec4868bb6d49297e7 100644 (file)
@@ -84,8 +84,6 @@ extern void bus_remove_file(struct bus_type *, struct bus_attribute *);
  *             available at the time this function is called.  As in, the
  *             function should NOT stop at the first failed device link if
  *             other unlinked supplier devices are present in the system.
- *             This is necessary for the sync_state() callback to work
- *             correctly.
  *
  *             Return 0 if device links have been successfully created to all
  *             the suppliers of this device.  Return an error if some of the
@@ -93,13 +91,6 @@ extern void bus_remove_file(struct bus_type *, struct bus_attribute *);
  *             reattempted in the future.
  * @probe:     Called when a new device or driver add to this bus, and callback
  *             the specific driver's probe to initial the matched device.
- * @sync_state:        Called to sync device state to software state after all the
- *             state tracking consumers linked to this device (present at
- *             the time of late_initcall) have successfully bound to a
- *             driver. If the device has no consumers, this function will
- *             be called at late_initcall_sync level. If the device has
- *             consumers that are never bound to a driver, this function
- *             will never get called until they do.
  * @remove:    Called when a device removed from this bus.
  * @shutdown:  Called at shut-down time to quiesce the device.
  *
@@ -144,7 +135,6 @@ struct bus_type {
        int (*uevent)(struct device *dev, struct kobj_uevent_env *env);
        int (*add_links)(struct device *dev);
        int (*probe)(struct device *dev);
-       void (*sync_state)(struct device *dev);
        int (*remove)(struct device *dev);
        void (*shutdown)(struct device *dev);
 
@@ -376,13 +366,6 @@ enum probe_type {
  * @probe:     Called to query the existence of a specific device,
  *             whether this driver can work with it, and bind the driver
  *             to a specific device.
- * @sync_state:        Called to sync device state to software state after all the
- *             state tracking consumers linked to this device (present at
- *             the time of late_initcall) have successfully bound to a
- *             driver. If the device has no consumers, this function will
- *             be called at late_initcall_sync level. If the device has
- *             consumers that are never bound to a driver, this function
- *             will never get called until they do.
  * @remove:    Called when the device is removed from the system to
  *             unbind a device from this driver.
  * @shutdown:  Called at shut-down time to quiesce the device.
@@ -423,7 +406,6 @@ struct device_driver {
 
        int (*edit_links)(struct device *dev);
        int (*probe) (struct device *dev);
-       void (*sync_state)(struct device *dev);
        int (*remove) (struct device *dev);
        void (*shutdown) (struct device *dev);
        int (*suspend) (struct device *dev, pm_message_t state);
@@ -1177,14 +1159,12 @@ enum dl_dev_state {
  * @suppliers: List of links to supplier devices.
  * @consumers: List of links to consumer devices.
  * @needs_suppliers: Hook to global list of devices waiting for suppliers.
- * @defer_sync: Hook to global list of devices that have deferred sync_state.
  * @status: Driver status information.
  */
 struct dev_links_info {
        struct list_head suppliers;
        struct list_head consumers;
        struct list_head needs_suppliers;
-       struct list_head defer_sync;
        enum dl_dev_state status;
 };
 
@@ -1262,9 +1242,6 @@ struct dev_links_info {
  *              device.
  * @has_edit_links: This device has a driver than is capable of
  *                 editing the device links created by driver core.
- * @state_synced: The hardware state of this device has been synced to match
- *               the software state of this device by calling the driver/bus
- *               sync_state() callback.
  * @dma_coherent: this particular device is dma coherent, even if the
  *             architecture supports non-coherent devices.
  *
@@ -1362,7 +1339,6 @@ struct device {
        bool                    offline:1;
        bool                    of_node_reused:1;
        bool                    has_edit_links:1;
-       bool                    state_synced:1;
 #if defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE) || \
     defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU) || \
     defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU_ALL)
@@ -1707,8 +1683,6 @@ struct device_link *device_link_add(struct device *consumer,
 void device_link_del(struct device_link *link);
 void device_link_remove(void *consumer, struct device *supplier);
 void device_link_remove_from_wfs(struct device *consumer);
-void device_links_supplier_sync_state_pause(void);
-void device_links_supplier_sync_state_resume(void);
 
 #ifndef dev_fmt
 #define dev_fmt(fmt) fmt