diff options
| author | David S. Miller <davem@nuts.ninka.net> | 2002-06-05 13:22:35 -0700 |
|---|---|---|
| committer | David S. Miller <davem@nuts.ninka.net> | 2002-06-05 13:22:35 -0700 |
| commit | fe91ab5e76a725c8be3cfb22f343327a53437359 (patch) | |
| tree | 812e4996739a7d570e7c383641a572e911431fde /include/linux | |
| parent | 20906bc5579ea0360ba6a426c3f366b7ab5e5dd8 (diff) | |
Fix generic device layer init sequence.
Generic BUS objects have to be registered before
devices assosciated with them are probed. Therefore
subsys_initcall is inappropriate for such setups.
It does not work to use core_initcall for this because
the generic device layer bits need to be setup first too.
So we rename unused_initcall to postcore_initcall and use
this new initcall level for generic BUS object init.
This fixes bootup on Alpha, and Sparc64. X86 was working
by what looks to be luck in link order.
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/init.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/init.h b/include/linux/init.h index ca7e75f37883..b45b95c5e640 100644 --- a/include/linux/init.h +++ b/include/linux/init.h @@ -61,7 +61,7 @@ extern initcall_t __initcall_start, __initcall_end; static initcall_t __initcall_##fn __attribute__ ((unused,__section__ (".initcall" level ".init"))) = fn #define core_initcall(fn) __define_initcall("1",fn) -#define unused_initcall(fn) __define_initcall("2",fn) +#define postcore_initcall(fn) __define_initcall("2",fn) #define arch_initcall(fn) __define_initcall("3",fn) #define subsys_initcall(fn) __define_initcall("4",fn) #define fs_initcall(fn) __define_initcall("5",fn) @@ -160,7 +160,7 @@ typedef void (*__cleanup_module_func_t)(void); #define __setup(str,func) /* nothing */ #define core_initcall(fn) module_init(fn) -#define unused_initcall(fn) module_init(fn) +#define postcore_initcall(fn) module_init(fn) #define arch_initcall(fn) module_init(fn) #define subsys_initcall(fn) module_init(fn) #define fs_initcall(fn) module_init(fn) |
