vme: Convert VME core to register as a subsystem
Previously, VME bridge support was treated as any other driver (using module_init() macro), but if VME bridge and vme_user (staging) drivers were compiled into the kernel, then vme_user would attempt to register itself before the VME core support had been loaded. This would result in a kernel panic. The load order of these built-in drivers is based on the order in which drivers/staging/vme and driver/vme are compiled. This patch changes the VME core driver to use the subsys_initcall() macro which ensures that it is loaded before all other VME drivers regardless of the order in which they are compiled. Tested-by: Aaron Sierra <asierra@xes-inc.com> Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e56b140105
commit
c326cc023e
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
menuconfig VME_BUS
|
menuconfig VME_BUS
|
||||||
tristate "VME bridge support"
|
bool "VME bridge support"
|
||||||
depends on PCI
|
depends on PCI
|
||||||
---help---
|
---help---
|
||||||
If you say Y here you get support for the VME bridge Framework.
|
If you say Y here you get support for the VME bridge Framework.
|
||||||
|
|
|
@ -1525,9 +1525,5 @@ static void __exit vme_exit(void)
|
||||||
bus_unregister(&vme_bus_type);
|
bus_unregister(&vme_bus_type);
|
||||||
}
|
}
|
||||||
|
|
||||||
MODULE_DESCRIPTION("VME bridge driver framework");
|
subsys_initcall(vme_init);
|
||||||
MODULE_AUTHOR("Martyn Welch <martyn.welch@ge.com");
|
|
||||||
MODULE_LICENSE("GPL");
|
|
||||||
|
|
||||||
module_init(vme_init);
|
|
||||||
module_exit(vme_exit);
|
module_exit(vme_exit);
|
||||||
|
|
Loading…
Reference in New Issue