mei: move mei-me to separate module
authorTomas Winkler <tomas.winkler@intel.com>
Wed, 27 Mar 2013 14:58:30 +0000 (16:58 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 29 Mar 2013 15:32:21 +0000 (08:32 -0700)
mei layer provides host bus message layer, client management,
and os interface

mei-me - provides access to ME hardware through
the pci bus

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/mei/Kconfig
drivers/misc/mei/Makefile
drivers/misc/mei/init.c
drivers/misc/mei/interrupt.c
drivers/misc/mei/main.c

index d21b4d006a5519c7a658558a115b8044d5c7b2d0..c76fa31e9bf6926aac9cc181846d383f1325c8da 100644 (file)
@@ -10,10 +10,9 @@ config INTEL_MEI
          <http://software.intel.com/en-us/manageability/>
 
 config INTEL_MEI_ME
-       bool "ME Enabled Intel Chipsets"
-       depends on INTEL_MEI
+       tristate "ME Enabled Intel Chipsets"
+       select INTEL_MEI
        depends on X86 && PCI && WATCHDOG_CORE
-       default y
        help
          MEI support for ME Enabled Intel chipsets.
 
index 040af6c7b147dbb95a437937ab29638c6f573fe5..2c336d08774928c3fdf75bd72dc38eeaff1fde28 100644 (file)
@@ -10,5 +10,7 @@ mei-objs += client.o
 mei-objs += main.o
 mei-objs += amthif.o
 mei-objs += wd.o
-mei-$(CONFIG_INTEL_MEI_ME) += pci-me.o
-mei-$(CONFIG_INTEL_MEI_ME) += hw-me.o
+
+obj-$(CONFIG_INTEL_MEI_ME) += mei-me.o
+mei-me-objs := pci-me.o
+mei-me-objs += hw-me.o
index b3f7c3e761a0dbd2300ce05b961a0aa34f412cb8..c1c8d760bc34dd3fd96120567191ad13040203a6 100644 (file)
@@ -14,6 +14,7 @@
  *
  */
 
+#include <linux/export.h>
 #include <linux/pci.h>
 #include <linux/sched.h>
 #include <linux/wait.h>
@@ -67,6 +68,7 @@ void mei_device_init(struct mei_device *dev)
        mei_io_list_init(&dev->amthif_rd_complete_list);
 
 }
+EXPORT_SYMBOL_GPL(mei_device_init);
 
 /**
  * mei_start - initializes host and fw to start work.
@@ -136,6 +138,7 @@ err:
        mutex_unlock(&dev->device_lock);
        return -ENODEV;
 }
+EXPORT_SYMBOL_GPL(mei_start);
 
 /**
  * mei_reset - resets host and fw.
@@ -203,6 +206,7 @@ void mei_reset(struct mei_device *dev, int interrupts_enabled)
        /* remove all waiting requests */
        mei_cl_all_write_clear(dev);
 }
+EXPORT_SYMBOL_GPL(mei_reset);
 
 void mei_stop(struct mei_device *dev)
 {
@@ -222,9 +226,8 @@ void mei_stop(struct mei_device *dev)
        flush_scheduled_work();
 
        mei_watchdog_unregister(dev);
-
 }
-
+EXPORT_SYMBOL_GPL(mei_stop);
 
 
 
index 73fbce3e77460f83cdce0a5034c52353b2606991..6ce45ef2cd6cb8f8c86ed7524722f882a2f55244 100644 (file)
@@ -15,6 +15,7 @@
  */
 
 
+#include <linux/export.h>
 #include <linux/pci.h>
 #include <linux/kthread.h>
 #include <linux/interrupt.h>
@@ -78,6 +79,7 @@ void mei_irq_compl_handler(struct mei_device *dev, struct mei_cl_cb *compl_list)
                        mei_cl_complete_handler(cl, cb);
        }
 }
+EXPORT_SYMBOL_GPL(mei_irq_compl_handler);
 /**
  * _mei_irq_thread_state_ok - checks if mei header matches file private data
  *
@@ -440,6 +442,7 @@ int mei_irq_read_handler(struct mei_device *dev,
 end:
        return ret;
 }
+EXPORT_SYMBOL_GPL(mei_irq_read_handler);
 
 
 /**
@@ -590,6 +593,7 @@ int mei_irq_write_handler(struct mei_device *dev, struct mei_cl_cb *cmpl_list)
        }
        return 0;
 }
+EXPORT_SYMBOL_GPL(mei_irq_write_handler);
 
 
 
index 903f809b21f79302fedca41a843f6add85ebe12c..27b3df2ba0700908afc0457f8db859be167dd4a0 100644 (file)
@@ -758,12 +758,16 @@ int mei_register(struct device *dev)
        mei_misc_device.parent = dev;
        return misc_register(&mei_misc_device);
 }
+EXPORT_SYMBOL_GPL(mei_register);
 
 void mei_deregister(void)
 {
        misc_deregister(&mei_misc_device);
        mei_misc_device.parent = NULL;
 }
+EXPORT_SYMBOL_GPL(mei_deregister);
 
+MODULE_AUTHOR("Intel Corporation");
+MODULE_DESCRIPTION("Intel(R) Management Engine Interface");
 MODULE_LICENSE("GPL v2");