aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/mei/init.c
diff options
context:
space:
mode:
authorAlexander Usyskin <alexander.usyskin@intel.com>2016-02-07 23:35:41 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-02-07 14:47:20 -0800
commita816a00ece63d16ade7e9c0ca8b5a7e4c5ea2453 (patch)
tree4ce36a74010f7f8b65d0ab7520c8ad701eda445a /drivers/misc/mei/init.c
parentmei: drop reserved host client ids (diff)
downloadlinux-dev-a816a00ece63d16ade7e9c0ca8b5a7e4c5ea2453.tar.xz
linux-dev-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/init.c')
-rw-r--r--drivers/misc/mei/init.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/misc/mei/init.c b/drivers/misc/mei/init.c
index cfcb46da13f1..52fde2b498ef 100644
--- a/drivers/misc/mei/init.c
+++ b/drivers/misc/mei/init.c
@@ -93,6 +93,7 @@ void mei_cancel_work(struct mei_device *dev)
{
cancel_work_sync(&dev->init_work);
cancel_work_sync(&dev->reset_work);
+ cancel_work_sync(&dev->bus_rescan_work);
cancel_delayed_work(&dev->timer_work);
}
@@ -394,6 +395,7 @@ void mei_device_init(struct mei_device *dev,
INIT_DELAYED_WORK(&dev->timer_work, mei_timer);
INIT_WORK(&dev->init_work, mei_host_client_init);
INIT_WORK(&dev->reset_work, mei_reset_work);
+ INIT_WORK(&dev->bus_rescan_work, mei_cl_bus_rescan_work);
INIT_LIST_HEAD(&dev->iamthif_cl.link);
mei_io_list_init(&dev->amthif_cmd_list);