diff options
Diffstat (limited to 'arch/m68k/kernel')
-rw-r--r-- | arch/m68k/kernel/Makefile | 2 | ||||
-rw-r--r-- | arch/m68k/kernel/setup.c | 9 | ||||
-rw-r--r-- | arch/m68k/kernel/vmlinux-std.lds | 3 | ||||
-rw-r--r-- | arch/m68k/kernel/vmlinux-sun3.lds | 7 |
4 files changed, 15 insertions, 6 deletions
diff --git a/arch/m68k/kernel/Makefile b/arch/m68k/kernel/Makefile index 7a62a718143b..3a7f62225504 100644 --- a/arch/m68k/kernel/Makefile +++ b/arch/m68k/kernel/Makefile | |||
@@ -16,5 +16,3 @@ devres-y = ../../../kernel/irq/devres.o | |||
16 | 16 | ||
17 | obj-$(CONFIG_PCI) += bios32.o | 17 | obj-$(CONFIG_PCI) += bios32.o |
18 | obj-y$(CONFIG_MMU_SUN3) += dma.o # no, it's not a typo | 18 | obj-y$(CONFIG_MMU_SUN3) += dma.o # no, it's not a typo |
19 | |||
20 | EXTRA_AFLAGS := -traditional | ||
diff --git a/arch/m68k/kernel/setup.c b/arch/m68k/kernel/setup.c index a9fb83a8c180..ea1e44da19b9 100644 --- a/arch/m68k/kernel/setup.c +++ b/arch/m68k/kernel/setup.c | |||
@@ -26,6 +26,7 @@ | |||
26 | 26 | ||
27 | #include <asm/bootinfo.h> | 27 | #include <asm/bootinfo.h> |
28 | #include <asm/setup.h> | 28 | #include <asm/setup.h> |
29 | #include <asm/fpu.h> | ||
29 | #include <asm/irq.h> | 30 | #include <asm/irq.h> |
30 | #include <asm/io.h> | 31 | #include <asm/io.h> |
31 | #include <asm/machdep.h> | 32 | #include <asm/machdep.h> |
@@ -40,6 +41,11 @@ | |||
40 | #include <asm/dvma.h> | 41 | #include <asm/dvma.h> |
41 | #endif | 42 | #endif |
42 | 43 | ||
44 | #if !FPSTATESIZE || !NR_IRQS | ||
45 | #warning No CPU/platform type selected, your kernel will not work! | ||
46 | #warning Are you building an allnoconfig kernel? | ||
47 | #endif | ||
48 | |||
43 | unsigned long m68k_machtype; | 49 | unsigned long m68k_machtype; |
44 | EXPORT_SYMBOL(m68k_machtype); | 50 | EXPORT_SYMBOL(m68k_machtype); |
45 | unsigned long m68k_cputype; | 51 | unsigned long m68k_cputype; |
@@ -116,6 +122,7 @@ extern int bvme6000_parse_bootinfo(const struct bi_record *); | |||
116 | extern int mvme16x_parse_bootinfo(const struct bi_record *); | 122 | extern int mvme16x_parse_bootinfo(const struct bi_record *); |
117 | extern int mvme147_parse_bootinfo(const struct bi_record *); | 123 | extern int mvme147_parse_bootinfo(const struct bi_record *); |
118 | extern int hp300_parse_bootinfo(const struct bi_record *); | 124 | extern int hp300_parse_bootinfo(const struct bi_record *); |
125 | extern int apollo_parse_bootinfo(const struct bi_record *); | ||
119 | 126 | ||
120 | extern void config_amiga(void); | 127 | extern void config_amiga(void); |
121 | extern void config_atari(void); | 128 | extern void config_atari(void); |
@@ -183,6 +190,8 @@ static void __init m68k_parse_bootinfo(const struct bi_record *record) | |||
183 | unknown = mvme147_parse_bootinfo(record); | 190 | unknown = mvme147_parse_bootinfo(record); |
184 | else if (MACH_IS_HP300) | 191 | else if (MACH_IS_HP300) |
185 | unknown = hp300_parse_bootinfo(record); | 192 | unknown = hp300_parse_bootinfo(record); |
193 | else if (MACH_IS_APOLLO) | ||
194 | unknown = apollo_parse_bootinfo(record); | ||
186 | else | 195 | else |
187 | unknown = 1; | 196 | unknown = 1; |
188 | } | 197 | } |
diff --git a/arch/m68k/kernel/vmlinux-std.lds b/arch/m68k/kernel/vmlinux-std.lds index 7537cc5e6159..99b0784c0552 100644 --- a/arch/m68k/kernel/vmlinux-std.lds +++ b/arch/m68k/kernel/vmlinux-std.lds | |||
@@ -1,6 +1,7 @@ | |||
1 | /* ld script to make m68k Linux kernel */ | 1 | /* ld script to make m68k Linux kernel */ |
2 | 2 | ||
3 | #include <asm-generic/vmlinux.lds.h> | 3 | #include <asm-generic/vmlinux.lds.h> |
4 | #include <asm/page.h> | ||
4 | 5 | ||
5 | OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k") | 6 | OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k") |
6 | OUTPUT_ARCH(m68k) | 7 | OUTPUT_ARCH(m68k) |
@@ -41,7 +42,7 @@ SECTIONS | |||
41 | _edata = .; /* End of data section */ | 42 | _edata = .; /* End of data section */ |
42 | 43 | ||
43 | /* will be freed after init */ | 44 | /* will be freed after init */ |
44 | . = ALIGN(4096); /* Init code and data */ | 45 | . = ALIGN(PAGE_SIZE); /* Init code and data */ |
45 | __init_begin = .; | 46 | __init_begin = .; |
46 | .init.text : { | 47 | .init.text : { |
47 | _sinittext = .; | 48 | _sinittext = .; |
diff --git a/arch/m68k/kernel/vmlinux-sun3.lds b/arch/m68k/kernel/vmlinux-sun3.lds index cdc313e7c299..8a4919e4d36a 100644 --- a/arch/m68k/kernel/vmlinux-sun3.lds +++ b/arch/m68k/kernel/vmlinux-sun3.lds | |||
@@ -1,6 +1,7 @@ | |||
1 | /* ld script to make m68k Linux kernel */ | 1 | /* ld script to make m68k Linux kernel */ |
2 | 2 | ||
3 | #include <asm-generic/vmlinux.lds.h> | 3 | #include <asm-generic/vmlinux.lds.h> |
4 | #include <asm/page.h> | ||
4 | 5 | ||
5 | OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k") | 6 | OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k") |
6 | OUTPUT_ARCH(m68k) | 7 | OUTPUT_ARCH(m68k) |
@@ -34,7 +35,7 @@ SECTIONS | |||
34 | _edata = .; | 35 | _edata = .; |
35 | 36 | ||
36 | /* will be freed after init */ | 37 | /* will be freed after init */ |
37 | . = ALIGN(8192); /* Init code and data */ | 38 | . = ALIGN(PAGE_SIZE); /* Init code and data */ |
38 | __init_begin = .; | 39 | __init_begin = .; |
39 | .init.text : { | 40 | .init.text : { |
40 | _sinittext = .; | 41 | _sinittext = .; |
@@ -61,12 +62,12 @@ __init_begin = .; | |||
61 | } | 62 | } |
62 | SECURITY_INIT | 63 | SECURITY_INIT |
63 | #ifdef CONFIG_BLK_DEV_INITRD | 64 | #ifdef CONFIG_BLK_DEV_INITRD |
64 | . = ALIGN(8192); | 65 | . = ALIGN(PAGE_SIZE); |
65 | __initramfs_start = .; | 66 | __initramfs_start = .; |
66 | .init.ramfs : { *(.init.ramfs) } | 67 | .init.ramfs : { *(.init.ramfs) } |
67 | __initramfs_end = .; | 68 | __initramfs_end = .; |
68 | #endif | 69 | #endif |
69 | . = ALIGN(8192); | 70 | . = ALIGN(PAGE_SIZE); |
70 | __init_end = .; | 71 | __init_end = .; |
71 | .data.init.task : { *(.data.init_task) } | 72 | .data.init.task : { *(.data.init_task) } |
72 | 73 | ||