xref: /openbmc/linux/drivers/base/firmware.c (revision a1bdc7aad8b557176ccecff1da137ebe3090871e)
11da177e4SLinus Torvalds /*
21da177e4SLinus Torvalds  * firmware.c - firmware subsystem hoohaw.
31da177e4SLinus Torvalds  *
41da177e4SLinus Torvalds  * Copyright (c) 2002-3 Patrick Mochel
51da177e4SLinus Torvalds  * Copyright (c) 2002-3 Open Source Development Labs
61da177e4SLinus Torvalds  *
71da177e4SLinus Torvalds  * This file is released under the GPLv2
81da177e4SLinus Torvalds  *
91da177e4SLinus Torvalds  */
101da177e4SLinus Torvalds 
111da177e4SLinus Torvalds #include <linux/kobject.h>
121da177e4SLinus Torvalds #include <linux/module.h>
131da177e4SLinus Torvalds #include <linux/init.h>
14*a1bdc7aaSBen Dooks #include <linux/device.h>
15*a1bdc7aaSBen Dooks 
16*a1bdc7aaSBen Dooks #include "base.h"
171da177e4SLinus Torvalds 
181da177e4SLinus Torvalds static decl_subsys(firmware, NULL, NULL);
191da177e4SLinus Torvalds 
201da177e4SLinus Torvalds int firmware_register(struct subsystem * s)
211da177e4SLinus Torvalds {
221da177e4SLinus Torvalds 	kset_set_kset_s(s, firmware_subsys);
231da177e4SLinus Torvalds 	return subsystem_register(s);
241da177e4SLinus Torvalds }
251da177e4SLinus Torvalds 
261da177e4SLinus Torvalds void firmware_unregister(struct subsystem * s)
271da177e4SLinus Torvalds {
281da177e4SLinus Torvalds 	subsystem_unregister(s);
291da177e4SLinus Torvalds }
301da177e4SLinus Torvalds 
311da177e4SLinus Torvalds int __init firmware_init(void)
321da177e4SLinus Torvalds {
331da177e4SLinus Torvalds 	return subsystem_register(&firmware_subsys);
341da177e4SLinus Torvalds }
351da177e4SLinus Torvalds 
361da177e4SLinus Torvalds EXPORT_SYMBOL_GPL(firmware_register);
371da177e4SLinus Torvalds EXPORT_SYMBOL_GPL(firmware_unregister);
38