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: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Tomas Winkler 2013-03-27 16:58:30 +02:00 committed by Greg Kroah-Hartman
parent b68301e9ac
commit 40e0b67be0
5 changed files with 19 additions and 7 deletions

View 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.

View 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

View 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);

View 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);

View 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");