aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/mei/main.c
diff options
context:
space:
mode:
authorSamuel Ortiz <sameo@linux.intel.com>2012-11-18 08:13:20 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-21 15:43:58 -0500
commitc1174c0edf546805a0ebc10d5d6154edbb56e1cf (patch)
treef1cc9084b89fa8965db5759d84e3094967575b3a /drivers/misc/mei/main.c
parentbe9d87a790765bcc85d8bdab8a9be31cf7457b28 (diff)
mei: Simplify the ME client enumeration code
After enumerating all ME clients we call the client init functions for all matching UUIDs from a separate context. This remove the hackish cascading client initialisation process that was interleaving properties and connection command replies. Signed-off-by: Samuel Ortiz <sameo@linux.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/main.c')
-rw-r--r--drivers/misc/mei/main.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/misc/mei/main.c b/drivers/misc/mei/main.c
index 251aafff5492..7c9c381e5c9a 100644
--- a/drivers/misc/mei/main.c
+++ b/drivers/misc/mei/main.c
@@ -829,6 +829,8 @@ static int __devinit mei_probe(struct pci_dev *pdev,
829 goto disable_msi; 829 goto disable_msi;
830 } 830 }
831 INIT_DELAYED_WORK(&dev->timer_work, mei_timer); 831 INIT_DELAYED_WORK(&dev->timer_work, mei_timer);
832 INIT_WORK(&dev->init_work, mei_host_client_init);
833
832 if (mei_hw_init(dev)) { 834 if (mei_hw_init(dev)) {
833 dev_err(&pdev->dev, "init hw failure.\n"); 835 dev_err(&pdev->dev, "init hw failure.\n");
834 err = -ENODEV; 836 err = -ENODEV;