Commit 40e0b67b authored by Tomas Winkler's avatar Tomas Winkler Committed by Greg Kroah-Hartman

mei: move mei-me to separate module

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: default avatarTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent b68301e9
...@@ -10,10 +10,9 @@ config INTEL_MEI ...@@ -10,10 +10,9 @@ config INTEL_MEI
<http://software.intel.com/en-us/manageability/> <http://software.intel.com/en-us/manageability/>
config INTEL_MEI_ME config INTEL_MEI_ME
bool "ME Enabled Intel Chipsets" tristate "ME Enabled Intel Chipsets"
depends on INTEL_MEI select INTEL_MEI
depends on X86 && PCI && WATCHDOG_CORE depends on X86 && PCI && WATCHDOG_CORE
default y
help help
MEI support for ME Enabled Intel chipsets. MEI support for ME Enabled Intel chipsets.
......
...@@ -10,5 +10,7 @@ mei-objs += client.o ...@@ -10,5 +10,7 @@ mei-objs += client.o
mei-objs += main.o mei-objs += main.o
mei-objs += amthif.o mei-objs += amthif.o
mei-objs += wd.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
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
* *
*/ */
#include <linux/export.h>
#include <linux/pci.h> #include <linux/pci.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/wait.h> #include <linux/wait.h>
...@@ -67,6 +68,7 @@ void mei_device_init(struct mei_device *dev) ...@@ -67,6 +68,7 @@ void mei_device_init(struct mei_device *dev)
mei_io_list_init(&dev->amthif_rd_complete_list); mei_io_list_init(&dev->amthif_rd_complete_list);
} }
EXPORT_SYMBOL_GPL(mei_device_init);
/** /**
* mei_start - initializes host and fw to start work. * mei_start - initializes host and fw to start work.
...@@ -136,6 +138,7 @@ int mei_start(struct mei_device *dev) ...@@ -136,6 +138,7 @@ int mei_start(struct mei_device *dev)
mutex_unlock(&dev->device_lock); mutex_unlock(&dev->device_lock);
return -ENODEV; return -ENODEV;
} }
EXPORT_SYMBOL_GPL(mei_start);
/** /**
* mei_reset - resets host and fw. * mei_reset - resets host and fw.
...@@ -203,6 +206,7 @@ void mei_reset(struct mei_device *dev, int interrupts_enabled) ...@@ -203,6 +206,7 @@ void mei_reset(struct mei_device *dev, int interrupts_enabled)
/* remove all waiting requests */ /* remove all waiting requests */
mei_cl_all_write_clear(dev); mei_cl_all_write_clear(dev);
} }
EXPORT_SYMBOL_GPL(mei_reset);
void mei_stop(struct mei_device *dev) void mei_stop(struct mei_device *dev)
{ {
...@@ -222,9 +226,8 @@ void mei_stop(struct mei_device *dev) ...@@ -222,9 +226,8 @@ void mei_stop(struct mei_device *dev)
flush_scheduled_work(); flush_scheduled_work();
mei_watchdog_unregister(dev); mei_watchdog_unregister(dev);
} }
EXPORT_SYMBOL_GPL(mei_stop);
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
*/ */
#include <linux/export.h>
#include <linux/pci.h> #include <linux/pci.h>
#include <linux/kthread.h> #include <linux/kthread.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
...@@ -78,6 +79,7 @@ void mei_irq_compl_handler(struct mei_device *dev, struct mei_cl_cb *compl_list) ...@@ -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); 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 * _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, ...@@ -440,6 +442,7 @@ int mei_irq_read_handler(struct mei_device *dev,
end: end:
return ret; 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) ...@@ -590,6 +593,7 @@ int mei_irq_write_handler(struct mei_device *dev, struct mei_cl_cb *cmpl_list)
} }
return 0; return 0;
} }
EXPORT_SYMBOL_GPL(mei_irq_write_handler);
......
...@@ -758,12 +758,16 @@ int mei_register(struct device *dev) ...@@ -758,12 +758,16 @@ int mei_register(struct device *dev)
mei_misc_device.parent = dev; mei_misc_device.parent = dev;
return misc_register(&mei_misc_device); return misc_register(&mei_misc_device);
} }
EXPORT_SYMBOL_GPL(mei_register);
void mei_deregister(void) void mei_deregister(void)
{ {
misc_deregister(&mei_misc_device); misc_deregister(&mei_misc_device);
mei_misc_device.parent = NULL; 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"); MODULE_LICENSE("GPL v2");
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment