diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2008-12-03 06:08:37 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-12-04 12:17:20 -0500 |
commit | d670bd4f803c8b646acd20f3ba21e65458293faf (patch) | |
tree | eabc30aadce1556023c4aa445c649ba9e1d3f352 /arch | |
parent | 478b8fecda511942404ac232897a718cecd13e48 (diff) |
sparc: prepare kernel/ for unification
o sparc32 files with identical names to sparc64 renamed to <name>_32.S
o introduced a few Kconfig helpers to simplify Makefile logic
o refactored Makefile to prepare for unification
- use obj-$(CONFIG_SPARC32) for sparc32 specific files
- use <name>_$(BITS) for files where sparc64 has a _64 variant
- sparc64 directly include a few files where sparc32 builds them,
refer to these files directly (no BITS)
- sneaked in -Werror as used by sparc64
o modified sparc/Makefile to use the new names for head/init_task
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sparc/Kconfig | 21 | ||||
-rw-r--r-- | arch/sparc/Makefile | 4 | ||||
-rw-r--r-- | arch/sparc/kernel/Makefile | 76 | ||||
-rw-r--r-- | arch/sparc/kernel/auxio_32.c (renamed from arch/sparc/kernel/auxio.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/cpu_32.c (renamed from arch/sparc/kernel/cpu.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/etrap_32.S (renamed from arch/sparc/kernel/etrap.S) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/head_32.S (renamed from arch/sparc/kernel/head.S) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/idprom_32.c (renamed from arch/sparc/kernel/idprom.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/init_task_32.c (renamed from arch/sparc/kernel/init_task.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/irq_32.c (renamed from arch/sparc/kernel/irq.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/kgdb_32.c (renamed from arch/sparc/kernel/kgdb.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/module_32.c (renamed from arch/sparc/kernel/module.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/of_device_32.c (renamed from arch/sparc/kernel/of_device.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/process_32.c (renamed from arch/sparc/kernel/process.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/prom_32.c (renamed from arch/sparc/kernel/prom.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/ptrace_32.c (renamed from arch/sparc/kernel/ptrace.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/rtrap_32.S (renamed from arch/sparc/kernel/rtrap.S) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/setup_32.c (renamed from arch/sparc/kernel/setup.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/signal_32.c (renamed from arch/sparc/kernel/signal.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/smp_32.c (renamed from arch/sparc/kernel/smp.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/sparc_ksyms_32.c (renamed from arch/sparc/kernel/sparc_ksyms.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/sys_sparc_32.c (renamed from arch/sparc/kernel/sys_sparc.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/systbls_32.S (renamed from arch/sparc/kernel/systbls.S) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/time_32.c (renamed from arch/sparc/kernel/time.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/trampoline_32.S (renamed from arch/sparc/kernel/trampoline.S) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/traps_32.c (renamed from arch/sparc/kernel/traps.c) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/una_asm_32.S (renamed from arch/sparc/kernel/una_asm.S) | 0 | ||||
-rw-r--r-- | arch/sparc/kernel/unaligned_32.c (renamed from arch/sparc/kernel/unaligned.c) | 0 |
28 files changed, 77 insertions, 24 deletions
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index 26ddeedb5166..7cfe557db23d 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig | |||
@@ -198,6 +198,17 @@ config EMULATED_CMPXCHG | |||
198 | Sparc32 does not have a CAS instruction like sparc64. cmpxchg() | 198 | Sparc32 does not have a CAS instruction like sparc64. cmpxchg() |
199 | is emulated, and therefore it is not completely atomic. | 199 | is emulated, and therefore it is not completely atomic. |
200 | 200 | ||
201 | # Makefile helpers | ||
202 | config SPARC32_SMP | ||
203 | bool | ||
204 | default y | ||
205 | depends on SPARC32 && SMP | ||
206 | |||
207 | config SPARC64_SMP | ||
208 | bool | ||
209 | default y | ||
210 | depends on SPARC64 && SMP | ||
211 | |||
201 | choice | 212 | choice |
202 | prompt "Kernel page size" if SPARC64 | 213 | prompt "Kernel page size" if SPARC64 |
203 | default SPARC64_PAGE_SIZE_8KB | 214 | default SPARC64_PAGE_SIZE_8KB |
@@ -505,6 +516,16 @@ config SUN_OPENPROMFS | |||
505 | Only choose N if you know in advance that you will not need to modify | 516 | Only choose N if you know in advance that you will not need to modify |
506 | OpenPROM settings on the running system. | 517 | OpenPROM settings on the running system. |
507 | 518 | ||
519 | # Makefile helpers | ||
520 | config SPARC32_PCI | ||
521 | bool | ||
522 | default y | ||
523 | depends on SPARC32 && PCI | ||
524 | |||
525 | config SPARC64_PCI | ||
526 | bool | ||
527 | default y | ||
528 | depends on SPARC64 && PCI | ||
508 | 529 | ||
509 | endmenu | 530 | endmenu |
510 | 531 | ||
diff --git a/arch/sparc/Makefile b/arch/sparc/Makefile index b1d691489ed4..f061d0ada158 100644 --- a/arch/sparc/Makefile +++ b/arch/sparc/Makefile | |||
@@ -67,8 +67,8 @@ endif | |||
67 | 67 | ||
68 | endif | 68 | endif |
69 | 69 | ||
70 | head-$(CONFIG_SPARC32) := arch/sparc/kernel/head.o | 70 | head-$(CONFIG_SPARC32) := arch/sparc/kernel/head_$(BITS).o |
71 | head-$(CONFIG_SPARC32) += arch/sparc/kernel/init_task.o | 71 | head-$(CONFIG_SPARC32) += arch/sparc/kernel/init_task_$(BITS).o |
72 | head-$(CONFIG_SPARC64) := arch/sparc64/kernel/head.o | 72 | head-$(CONFIG_SPARC64) := arch/sparc64/kernel/head.o |
73 | head-$(CONFIG_SPARC64) += arch/sparc64/kernel/init_task.o | 73 | head-$(CONFIG_SPARC64) += arch/sparc64/kernel/init_task.o |
74 | 74 | ||
diff --git a/arch/sparc/kernel/Makefile b/arch/sparc/kernel/Makefile index 2d6582095099..6558eea5f0bc 100644 --- a/arch/sparc/kernel/Makefile +++ b/arch/sparc/kernel/Makefile | |||
@@ -2,25 +2,57 @@ | |||
2 | # Makefile for the linux kernel. | 2 | # Makefile for the linux kernel. |
3 | # | 3 | # |
4 | 4 | ||
5 | extra-y := head.o init_task.o vmlinux.lds | 5 | asflags-y := -ansi |
6 | 6 | ccflags-y := -Werror | |
7 | EXTRA_AFLAGS := -ansi | 7 | |
8 | 8 | extra-y := head_$(BITS).o | |
9 | IRQ_OBJS := irq.o sun4m_irq.o sun4c_irq.o sun4d_irq.o | 9 | extra-y += init_task_$(BITS).o |
10 | obj-y := entry.o wof.o wuf.o etrap.o rtrap.o traps.o $(IRQ_OBJS) \ | 10 | extra-y += vmlinux.lds |
11 | process.o signal.o ioport.o setup.o idprom.o \ | 11 | |
12 | sys_sparc.o systbls.o \ | 12 | obj-$(CONFIG_SPARC32) += entry.o wof.o wuf.o |
13 | time.o windows.o cpu.o devices.o \ | 13 | obj-$(CONFIG_SPARC32) += etrap_32.o |
14 | tadpole.o tick14.o ptrace.o \ | 14 | obj-$(CONFIG_SPARC32) += rtrap_32.o |
15 | unaligned.o una_asm.o muldiv.o \ | 15 | obj-y += traps_$(BITS).o |
16 | prom.o of_device.o devres.o dma.o | 16 | |
17 | 17 | # IRQ | |
18 | devres-y = ../../../kernel/irq/devres.o | 18 | obj-y += irq_$(BITS).o |
19 | 19 | obj-$(CONFIG_SPARC32) += sun4m_irq.o sun4c_irq.o sun4d_irq.o | |
20 | obj-$(CONFIG_PCI) += pcic.o | 20 | |
21 | obj-$(CONFIG_SMP) += trampoline.o smp.o sun4m_smp.o sun4d_smp.o | 21 | obj-y += process_$(BITS).o |
22 | obj-$(CONFIG_SUN_AUXIO) += auxio.o | 22 | obj-y += signal_$(BITS).o |
23 | obj-$(CONFIG_SUN_PM) += apc.o pmc.o | 23 | obj-$(CONFIG_SPARC32) += ioport.o |
24 | obj-$(CONFIG_MODULES) += module.o sparc_ksyms.o | 24 | obj-y += setup_$(BITS).o |
25 | obj-$(CONFIG_SPARC_LED) += led.o | 25 | obj-y += idprom_$(BITS).o |
26 | obj-$(CONFIG_KGDB) += kgdb.o | 26 | obj-y += sys_sparc_$(BITS).o |
27 | obj-$(CONFIG_SPARC32) += systbls_32.o | ||
28 | obj-y += time_$(BITS).o | ||
29 | obj-$(CONFIG_SPARC32) += windows.o | ||
30 | obj-y += cpu_$(BITS).o | ||
31 | obj-$(CONFIG_SPARC32) += devices.o | ||
32 | obj-$(CONFIG_SPARC32) += tadpole.o | ||
33 | obj-$(CONFIG_SPARC32) += tick14.o | ||
34 | obj-y += ptrace_$(BITS).o | ||
35 | obj-y += unaligned_$(BITS).o | ||
36 | obj-y += una_asm_$(BITS).o | ||
37 | obj-$(CONFIG_SPARC32) += muldiv.o | ||
38 | obj-y += prom_$(BITS).o | ||
39 | obj-y += of_device_$(BITS).o | ||
40 | |||
41 | # sparc32 do not use GENERIC_HARDIRQS but uses the generic devres implementation | ||
42 | obj-$(CONFIG_SPARC32) += devres.o | ||
43 | devres-y := ../../../kernel/irq/devres.o | ||
44 | |||
45 | obj-$(CONFIG_SPARC32) += dma.o | ||
46 | |||
47 | obj-$(CONFIG_SPARC32_PCI) += pcic.o | ||
48 | |||
49 | obj-$(CONFIG_SMP) += trampoline_$(BITS).o smp_$(BITS).o | ||
50 | obj-$(CONFIG_SPARC32_SMP) += sun4m_smp.o sun4d_smp.o | ||
51 | |||
52 | obj-y += auxio_$(BITS).o | ||
53 | obj-$(CONFIG_SUN_PM) += apc.o pmc.o | ||
54 | |||
55 | obj-$(CONFIG_MODULES) += module_$(BITS).o | ||
56 | obj-$(CONFIG_MODULES) += sparc_ksyms_$(BITS).o | ||
57 | obj-$(CONFIG_SPARC_LED) += led.o | ||
58 | obj-$(CONFIG_KGDB) += kgdb_$(BITS).o | ||
diff --git a/arch/sparc/kernel/auxio.c b/arch/sparc/kernel/auxio_32.c index 09c857215a52..09c857215a52 100644 --- a/arch/sparc/kernel/auxio.c +++ b/arch/sparc/kernel/auxio_32.c | |||
diff --git a/arch/sparc/kernel/cpu.c b/arch/sparc/kernel/cpu_32.c index 1fc17f59c6bf..1fc17f59c6bf 100644 --- a/arch/sparc/kernel/cpu.c +++ b/arch/sparc/kernel/cpu_32.c | |||
diff --git a/arch/sparc/kernel/etrap.S b/arch/sparc/kernel/etrap_32.S index e806fcdc46db..e806fcdc46db 100644 --- a/arch/sparc/kernel/etrap.S +++ b/arch/sparc/kernel/etrap_32.S | |||
diff --git a/arch/sparc/kernel/head.S b/arch/sparc/kernel/head_32.S index 51b40426f9c6..51b40426f9c6 100644 --- a/arch/sparc/kernel/head.S +++ b/arch/sparc/kernel/head_32.S | |||
diff --git a/arch/sparc/kernel/idprom.c b/arch/sparc/kernel/idprom_32.c index 223a6582e1e2..223a6582e1e2 100644 --- a/arch/sparc/kernel/idprom.c +++ b/arch/sparc/kernel/idprom_32.c | |||
diff --git a/arch/sparc/kernel/init_task.c b/arch/sparc/kernel/init_task_32.c index 8e64ebc445ef..8e64ebc445ef 100644 --- a/arch/sparc/kernel/init_task.c +++ b/arch/sparc/kernel/init_task_32.c | |||
diff --git a/arch/sparc/kernel/irq.c b/arch/sparc/kernel/irq_32.c index 93e1d1c65290..93e1d1c65290 100644 --- a/arch/sparc/kernel/irq.c +++ b/arch/sparc/kernel/irq_32.c | |||
diff --git a/arch/sparc/kernel/kgdb.c b/arch/sparc/kernel/kgdb_32.c index 757805ce02ee..757805ce02ee 100644 --- a/arch/sparc/kernel/kgdb.c +++ b/arch/sparc/kernel/kgdb_32.c | |||
diff --git a/arch/sparc/kernel/module.c b/arch/sparc/kernel/module_32.c index 598682f31ebf..598682f31ebf 100644 --- a/arch/sparc/kernel/module.c +++ b/arch/sparc/kernel/module_32.c | |||
diff --git a/arch/sparc/kernel/of_device.c b/arch/sparc/kernel/of_device_32.c index 0a83bd737654..0a83bd737654 100644 --- a/arch/sparc/kernel/of_device.c +++ b/arch/sparc/kernel/of_device_32.c | |||
diff --git a/arch/sparc/kernel/process.c b/arch/sparc/kernel/process_32.c index e8c43ffe317e..e8c43ffe317e 100644 --- a/arch/sparc/kernel/process.c +++ b/arch/sparc/kernel/process_32.c | |||
diff --git a/arch/sparc/kernel/prom.c b/arch/sparc/kernel/prom_32.c index eee5efcfe50e..eee5efcfe50e 100644 --- a/arch/sparc/kernel/prom.c +++ b/arch/sparc/kernel/prom_32.c | |||
diff --git a/arch/sparc/kernel/ptrace.c b/arch/sparc/kernel/ptrace_32.c index 8ce6285a06d5..8ce6285a06d5 100644 --- a/arch/sparc/kernel/ptrace.c +++ b/arch/sparc/kernel/ptrace_32.c | |||
diff --git a/arch/sparc/kernel/rtrap.S b/arch/sparc/kernel/rtrap_32.S index 4da2e1f66290..4da2e1f66290 100644 --- a/arch/sparc/kernel/rtrap.S +++ b/arch/sparc/kernel/rtrap_32.S | |||
diff --git a/arch/sparc/kernel/setup.c b/arch/sparc/kernel/setup_32.c index 24fe3078bd4b..24fe3078bd4b 100644 --- a/arch/sparc/kernel/setup.c +++ b/arch/sparc/kernel/setup_32.c | |||
diff --git a/arch/sparc/kernel/signal.c b/arch/sparc/kernel/signal_32.c index c94f91c8b6e0..c94f91c8b6e0 100644 --- a/arch/sparc/kernel/signal.c +++ b/arch/sparc/kernel/signal_32.c | |||
diff --git a/arch/sparc/kernel/smp.c b/arch/sparc/kernel/smp_32.c index e396c1f17a92..e396c1f17a92 100644 --- a/arch/sparc/kernel/smp.c +++ b/arch/sparc/kernel/smp_32.c | |||
diff --git a/arch/sparc/kernel/sparc_ksyms.c b/arch/sparc/kernel/sparc_ksyms_32.c index b0dfff848653..b0dfff848653 100644 --- a/arch/sparc/kernel/sparc_ksyms.c +++ b/arch/sparc/kernel/sparc_ksyms_32.c | |||
diff --git a/arch/sparc/kernel/sys_sparc.c b/arch/sparc/kernel/sys_sparc_32.c index 03035c852a43..03035c852a43 100644 --- a/arch/sparc/kernel/sys_sparc.c +++ b/arch/sparc/kernel/sys_sparc_32.c | |||
diff --git a/arch/sparc/kernel/systbls.S b/arch/sparc/kernel/systbls_32.S index 7d0807586442..7d0807586442 100644 --- a/arch/sparc/kernel/systbls.S +++ b/arch/sparc/kernel/systbls_32.S | |||
diff --git a/arch/sparc/kernel/time.c b/arch/sparc/kernel/time_32.c index 00f7383c7657..00f7383c7657 100644 --- a/arch/sparc/kernel/time.c +++ b/arch/sparc/kernel/time_32.c | |||
diff --git a/arch/sparc/kernel/trampoline.S b/arch/sparc/kernel/trampoline_32.S index 5e235c52d667..5e235c52d667 100644 --- a/arch/sparc/kernel/trampoline.S +++ b/arch/sparc/kernel/trampoline_32.S | |||
diff --git a/arch/sparc/kernel/traps.c b/arch/sparc/kernel/traps_32.c index 2b7d50659036..2b7d50659036 100644 --- a/arch/sparc/kernel/traps.c +++ b/arch/sparc/kernel/traps_32.c | |||
diff --git a/arch/sparc/kernel/una_asm.S b/arch/sparc/kernel/una_asm_32.S index 8cc03458eb7e..8cc03458eb7e 100644 --- a/arch/sparc/kernel/una_asm.S +++ b/arch/sparc/kernel/una_asm_32.S | |||
diff --git a/arch/sparc/kernel/unaligned.c b/arch/sparc/kernel/unaligned_32.c index c2a28c5ad650..c2a28c5ad650 100644 --- a/arch/sparc/kernel/unaligned.c +++ b/arch/sparc/kernel/unaligned_32.c | |||