summaryrefslogtreecommitdiffstats
path: root/drivers/misc/mei/mei_dev.h
diff options
context:
space:
mode:
authorAlexander Usyskin <alexander.usyskin@intel.com>2016-02-07 22:35:41 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-02-07 23:47:20 +0100
commita816a00ece63d16ade7e9c0ca8b5a7e4c5ea2453 (patch)
tree4ce36a74010f7f8b65d0ab7520c8ad701eda445a /drivers/misc/mei/mei_dev.h
parentmei: drop reserved host client ids (diff)
downloadlinux-a816a00ece63d16ade7e9c0ca8b5a7e4c5ea2453.tar.xz
linux-a816a00ece63d16ade7e9c0ca8b5a7e4c5ea2453.zip
mei: bus: run rescan on me_clients list change
Since clients can be now added and removed during runtime we need to run bus rescan whenever me_clients list is modified. Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/mei/mei_dev.h')
-rw-r--r--drivers/misc/mei/mei_dev.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/misc/mei/mei_dev.h b/drivers/misc/mei/mei_dev.h
index 320ddae5ee1e..c31adb8a0cff 100644
--- a/drivers/misc/mei/mei_dev.h
+++ b/drivers/misc/mei/mei_dev.h
@@ -304,6 +304,7 @@ struct mei_hw_ops {
/* MEI bus API*/
void mei_cl_bus_rescan(struct mei_device *bus);
+void mei_cl_bus_rescan_work(struct work_struct *work);
void mei_cl_bus_dev_fixup(struct mei_cl_device *dev);
ssize_t __mei_cl_send(struct mei_cl *cl, u8 *buf, size_t length,
bool blocking);
@@ -410,6 +411,7 @@ const char *mei_pg_state_str(enum mei_pg_state state);
*
* @init_work : work item for the device init
* @reset_work : work item for the device reset
+ * @bus_rescan_work : work item for the bus rescan
*
* @device_list : mei client bus list
* @cl_bus_lock : client bus list lock
@@ -501,6 +503,7 @@ struct mei_device {
struct work_struct init_work;
struct work_struct reset_work;
+ struct work_struct bus_rescan_work;
/* List of bus devices */
struct list_head device_list;