diff options
| -rw-r--r-- | drivers/base/Makefile | 5 | ||||
| -rw-r--r-- | drivers/base/firmware.c | 32 |
2 files changed, 35 insertions, 2 deletions
diff --git a/drivers/base/Makefile b/drivers/base/Makefile index a3e459cc1f6e..6fcb7331ddef 100644 --- a/drivers/base/Makefile +++ b/drivers/base/Makefile @@ -2,13 +2,14 @@ obj-y := core.o sys.o interface.o power.o bus.o \ driver.o class.o intf.o platform.o \ - cpu.o + cpu.o firmware.o obj-y += fs/ obj-$(CONFIG_HOTPLUG) += hotplug.o export-objs := core.o power.o sys.o bus.o driver.o \ - class.o intf.o platform.o cpu.o + class.o intf.o platform.o cpu.o \ + firmware.o include $(TOPDIR)/Rules.make diff --git a/drivers/base/firmware.c b/drivers/base/firmware.c new file mode 100644 index 000000000000..8e146ebfdd91 --- /dev/null +++ b/drivers/base/firmware.c @@ -0,0 +1,32 @@ +/* + * firmware.c - firmware subsystem hoohaw. + */ + +#include <linux/kobject.h> +#include <linux/module.h> +#include <linux/init.h> + +static struct subsystem firmware_subsys = { + .kobj = { .name = "firmware" }, +}; + +int firmware_register(struct subsystem * s) +{ + s->parent = &firmware_subsys; + return subsystem_register(s); +} + +void firmware_unregister(struct subsystem * s) +{ + subsystem_unregister(s); +} + +static int __init firmware_init(void) +{ + return subsystem_register(&firmware_subsys); +} + +core_initcall(firmware_init); + +EXPORT_SYMBOL(firmware_register); +EXPORT_SYMBOL(firmware_unregister); |
