diff options
-rw-r--r-- | arch/powerpc/Kconfig | 4 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_32.S | 122 | ||||
-rw-r--r-- | arch/powerpc/kernel/irq.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/44x_mmu.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/4xx_mmu.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/fsl_booke_mmu.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/init_32.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/init_64.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/mem.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/mmu_context_32.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/mmu_decl.h | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/pgtable_32.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/pgtable_64.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/ppc_mmu_32.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/tlb_32.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/tlb_64.c | 1 | ||||
-rw-r--r-- | arch/powerpc/platforms/Kconfig | 7 | ||||
-rw-r--r-- | arch/powerpc/platforms/apus/Kconfig | 130 | ||||
-rw-r--r-- | include/asm-powerpc/pgtable-ppc32.h | 26 |
19 files changed, 5 insertions, 298 deletions
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 12830a77d163..882f8a1d2c7c 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig | |||
@@ -436,9 +436,9 @@ config PCI | |||
436 | bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_86xx \ | 436 | bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_86xx \ |
437 | || PPC_MPC52xx || (EMBEDDED && (PPC_PSERIES || PPC_ISERIES)) \ | 437 | || PPC_MPC52xx || (EMBEDDED && (PPC_PSERIES || PPC_ISERIES)) \ |
438 | || MPC7448HPC2 || PPC_PS3 || PPC_HOLLY | 438 | || MPC7448HPC2 || PPC_PS3 || PPC_HOLLY |
439 | default y if !40x && !CPM2 && !8xx && !APUS && !PPC_83xx \ | 439 | default y if !40x && !CPM2 && !8xx && !PPC_83xx \ |
440 | && !PPC_85xx && !PPC_86xx | 440 | && !PPC_85xx && !PPC_86xx |
441 | default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS | 441 | default PCI_PERMEDIA if !4xx && !CPM2 && !8xx |
442 | default PCI_QSPAN if !4xx && !CPM2 && 8xx | 442 | default PCI_QSPAN if !4xx && !CPM2 && 8xx |
443 | select ARCH_SUPPORTS_MSI | 443 | select ARCH_SUPPORTS_MSI |
444 | help | 444 | help |
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S index c897203198b1..7d73a13450b0 100644 --- a/arch/powerpc/kernel/head_32.S +++ b/arch/powerpc/kernel/head_32.S | |||
@@ -9,7 +9,6 @@ | |||
9 | * rewritten by Paul Mackerras. | 9 | * rewritten by Paul Mackerras. |
10 | * Copyright (C) 1996 Paul Mackerras. | 10 | * Copyright (C) 1996 Paul Mackerras. |
11 | * MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net). | 11 | * MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net). |
12 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
13 | * | 12 | * |
14 | * This file contains the low-level support and setup for the | 13 | * This file contains the low-level support and setup for the |
15 | * PowerPC platform, including trap and interrupt dispatch. | 14 | * PowerPC platform, including trap and interrupt dispatch. |
@@ -32,10 +31,6 @@ | |||
32 | #include <asm/ppc_asm.h> | 31 | #include <asm/ppc_asm.h> |
33 | #include <asm/asm-offsets.h> | 32 | #include <asm/asm-offsets.h> |
34 | 33 | ||
35 | #ifdef CONFIG_APUS | ||
36 | #include <asm/amigappc.h> | ||
37 | #endif | ||
38 | |||
39 | /* 601 only have IBAT; cr0.eq is set on 601 when using this macro */ | 34 | /* 601 only have IBAT; cr0.eq is set on 601 when using this macro */ |
40 | #define LOAD_BAT(n, reg, RA, RB) \ | 35 | #define LOAD_BAT(n, reg, RA, RB) \ |
41 | /* see the comment for clear_bats() -- Cort */ \ | 36 | /* see the comment for clear_bats() -- Cort */ \ |
@@ -92,11 +87,6 @@ _start: | |||
92 | * r4: virtual address of boot_infos_t | 87 | * r4: virtual address of boot_infos_t |
93 | * r5: 0 | 88 | * r5: 0 |
94 | * | 89 | * |
95 | * APUS | ||
96 | * r3: 'APUS' | ||
97 | * r4: physical address of memory base | ||
98 | * Linux/m68k style BootInfo structure at &_end. | ||
99 | * | ||
100 | * PREP | 90 | * PREP |
101 | * This is jumped to on prep systems right after the kernel is relocated | 91 | * This is jumped to on prep systems right after the kernel is relocated |
102 | * to its proper place in memory by the boot loader. The expected layout | 92 | * to its proper place in memory by the boot loader. The expected layout |
@@ -150,14 +140,6 @@ __start: | |||
150 | */ | 140 | */ |
151 | bl early_init | 141 | bl early_init |
152 | 142 | ||
153 | #ifdef CONFIG_APUS | ||
154 | /* On APUS the __va/__pa constants need to be set to the correct | ||
155 | * values before continuing. | ||
156 | */ | ||
157 | mr r4,r30 | ||
158 | bl fix_mem_constants | ||
159 | #endif /* CONFIG_APUS */ | ||
160 | |||
161 | /* Switch MMU off, clear BATs and flush TLB. At this point, r3 contains | 143 | /* Switch MMU off, clear BATs and flush TLB. At this point, r3 contains |
162 | * the physical address we are running at, returned by early_init() | 144 | * the physical address we are running at, returned by early_init() |
163 | */ | 145 | */ |
@@ -167,7 +149,7 @@ __after_mmu_off: | |||
167 | bl flush_tlbs | 149 | bl flush_tlbs |
168 | 150 | ||
169 | bl initial_bats | 151 | bl initial_bats |
170 | #if !defined(CONFIG_APUS) && defined(CONFIG_BOOTX_TEXT) | 152 | #if defined(CONFIG_BOOTX_TEXT) |
171 | bl setup_disp_bat | 153 | bl setup_disp_bat |
172 | #endif | 154 | #endif |
173 | 155 | ||
@@ -183,7 +165,6 @@ __after_mmu_off: | |||
183 | #endif /* CONFIG_6xx */ | 165 | #endif /* CONFIG_6xx */ |
184 | 166 | ||
185 | 167 | ||
186 | #ifndef CONFIG_APUS | ||
187 | /* | 168 | /* |
188 | * We need to run with _start at physical address 0. | 169 | * We need to run with _start at physical address 0. |
189 | * On CHRP, we are loaded at 0x10000 since OF on CHRP uses | 170 | * On CHRP, we are loaded at 0x10000 since OF on CHRP uses |
@@ -196,7 +177,6 @@ __after_mmu_off: | |||
196 | addis r4,r3,KERNELBASE@h /* current address of _start */ | 177 | addis r4,r3,KERNELBASE@h /* current address of _start */ |
197 | cmpwi 0,r4,0 /* are we already running at 0? */ | 178 | cmpwi 0,r4,0 /* are we already running at 0? */ |
198 | bne relocate_kernel | 179 | bne relocate_kernel |
199 | #endif /* CONFIG_APUS */ | ||
200 | /* | 180 | /* |
201 | * we now have the 1st 16M of ram mapped with the bats. | 181 | * we now have the 1st 16M of ram mapped with the bats. |
202 | * prep needs the mmu to be turned on here, but pmac already has it on. | 182 | * prep needs the mmu to be turned on here, but pmac already has it on. |
@@ -881,85 +861,6 @@ _GLOBAL(copy_and_flush) | |||
881 | addi r6,r6,4 | 861 | addi r6,r6,4 |
882 | blr | 862 | blr |
883 | 863 | ||
884 | #ifdef CONFIG_APUS | ||
885 | /* | ||
886 | * On APUS the physical base address of the kernel is not known at compile | ||
887 | * time, which means the __pa/__va constants used are incorrect. In the | ||
888 | * __init section is recorded the virtual addresses of instructions using | ||
889 | * these constants, so all that has to be done is fix these before | ||
890 | * continuing the kernel boot. | ||
891 | * | ||
892 | * r4 = The physical address of the kernel base. | ||
893 | */ | ||
894 | fix_mem_constants: | ||
895 | mr r10,r4 | ||
896 | addis r10,r10,-KERNELBASE@h /* virt_to_phys constant */ | ||
897 | neg r11,r10 /* phys_to_virt constant */ | ||
898 | |||
899 | lis r12,__vtop_table_begin@h | ||
900 | ori r12,r12,__vtop_table_begin@l | ||
901 | add r12,r12,r10 /* table begin phys address */ | ||
902 | lis r13,__vtop_table_end@h | ||
903 | ori r13,r13,__vtop_table_end@l | ||
904 | add r13,r13,r10 /* table end phys address */ | ||
905 | subi r12,r12,4 | ||
906 | subi r13,r13,4 | ||
907 | 1: lwzu r14,4(r12) /* virt address of instruction */ | ||
908 | add r14,r14,r10 /* phys address of instruction */ | ||
909 | lwz r15,0(r14) /* instruction, now insert top */ | ||
910 | rlwimi r15,r10,16,16,31 /* half of vp const in low half */ | ||
911 | stw r15,0(r14) /* of instruction and restore. */ | ||
912 | dcbst r0,r14 /* write it to memory */ | ||
913 | sync | ||
914 | icbi r0,r14 /* flush the icache line */ | ||
915 | cmpw r12,r13 | ||
916 | bne 1b | ||
917 | sync /* additional sync needed on g4 */ | ||
918 | isync | ||
919 | |||
920 | /* | ||
921 | * Map the memory where the exception handlers will | ||
922 | * be copied to when hash constants have been patched. | ||
923 | */ | ||
924 | #ifdef CONFIG_APUS_FAST_EXCEPT | ||
925 | lis r8,0xfff0 | ||
926 | #else | ||
927 | lis r8,0 | ||
928 | #endif | ||
929 | ori r8,r8,0x2 /* 128KB, supervisor */ | ||
930 | mtspr SPRN_DBAT3U,r8 | ||
931 | mtspr SPRN_DBAT3L,r8 | ||
932 | |||
933 | lis r12,__ptov_table_begin@h | ||
934 | ori r12,r12,__ptov_table_begin@l | ||
935 | add r12,r12,r10 /* table begin phys address */ | ||
936 | lis r13,__ptov_table_end@h | ||
937 | ori r13,r13,__ptov_table_end@l | ||
938 | add r13,r13,r10 /* table end phys address */ | ||
939 | subi r12,r12,4 | ||
940 | subi r13,r13,4 | ||
941 | 1: lwzu r14,4(r12) /* virt address of instruction */ | ||
942 | add r14,r14,r10 /* phys address of instruction */ | ||
943 | lwz r15,0(r14) /* instruction, now insert top */ | ||
944 | rlwimi r15,r11,16,16,31 /* half of pv const in low half*/ | ||
945 | stw r15,0(r14) /* of instruction and restore. */ | ||
946 | dcbst r0,r14 /* write it to memory */ | ||
947 | sync | ||
948 | icbi r0,r14 /* flush the icache line */ | ||
949 | cmpw r12,r13 | ||
950 | bne 1b | ||
951 | |||
952 | sync /* additional sync needed on g4 */ | ||
953 | isync /* No speculative loading until now */ | ||
954 | blr | ||
955 | |||
956 | /*********************************************************************** | ||
957 | * Please note that on APUS the exception handlers are located at the | ||
958 | * physical address 0xfff0000. For this reason, the exception handlers | ||
959 | * cannot use relative branches to access the code below. | ||
960 | ***********************************************************************/ | ||
961 | #endif /* CONFIG_APUS */ | ||
962 | |||
963 | #ifdef CONFIG_SMP | 864 | #ifdef CONFIG_SMP |
964 | #ifdef CONFIG_GEMINI | 865 | #ifdef CONFIG_GEMINI |
965 | .globl __secondary_start_gemini | 866 | .globl __secondary_start_gemini |
@@ -1135,19 +1036,6 @@ start_here: | |||
1135 | bl __save_cpu_setup | 1036 | bl __save_cpu_setup |
1136 | bl MMU_init | 1037 | bl MMU_init |
1137 | 1038 | ||
1138 | #ifdef CONFIG_APUS | ||
1139 | /* Copy exception code to exception vector base on APUS. */ | ||
1140 | lis r4,KERNELBASE@h | ||
1141 | #ifdef CONFIG_APUS_FAST_EXCEPT | ||
1142 | lis r3,0xfff0 /* Copy to 0xfff00000 */ | ||
1143 | #else | ||
1144 | lis r3,0 /* Copy to 0x00000000 */ | ||
1145 | #endif | ||
1146 | li r5,0x4000 /* # bytes of memory to copy */ | ||
1147 | li r6,0 | ||
1148 | bl copy_and_flush /* copy the first 0x4000 bytes */ | ||
1149 | #endif /* CONFIG_APUS */ | ||
1150 | |||
1151 | /* | 1039 | /* |
1152 | * Go back to running unmapped so we can load up new values | 1040 | * Go back to running unmapped so we can load up new values |
1153 | * for SDR1 (hash table pointer) and the segment registers | 1041 | * for SDR1 (hash table pointer) and the segment registers |
@@ -1324,11 +1212,7 @@ initial_bats: | |||
1324 | #else | 1212 | #else |
1325 | ori r8,r8,2 /* R/W access */ | 1213 | ori r8,r8,2 /* R/W access */ |
1326 | #endif /* CONFIG_SMP */ | 1214 | #endif /* CONFIG_SMP */ |
1327 | #ifdef CONFIG_APUS | ||
1328 | ori r11,r11,BL_8M<<2|0x2 /* set up 8MB BAT registers for 604 */ | ||
1329 | #else | ||
1330 | ori r11,r11,BL_256M<<2|0x2 /* set up BAT registers for 604 */ | 1215 | ori r11,r11,BL_256M<<2|0x2 /* set up BAT registers for 604 */ |
1331 | #endif /* CONFIG_APUS */ | ||
1332 | 1216 | ||
1333 | mtspr SPRN_DBAT0L,r8 /* N.B. 6xx (not 601) have valid */ | 1217 | mtspr SPRN_DBAT0L,r8 /* N.B. 6xx (not 601) have valid */ |
1334 | mtspr SPRN_DBAT0U,r11 /* bit in upper BAT register */ | 1218 | mtspr SPRN_DBAT0U,r11 /* bit in upper BAT register */ |
@@ -1338,7 +1222,7 @@ initial_bats: | |||
1338 | blr | 1222 | blr |
1339 | 1223 | ||
1340 | 1224 | ||
1341 | #if !defined(CONFIG_APUS) && defined(CONFIG_BOOTX_TEXT) | 1225 | #ifdef CONFIG_BOOTX_TEXT |
1342 | setup_disp_bat: | 1226 | setup_disp_bat: |
1343 | /* | 1227 | /* |
1344 | * setup the display bat prepared for us in prom.c | 1228 | * setup the display bat prepared for us in prom.c |
@@ -1362,7 +1246,7 @@ setup_disp_bat: | |||
1362 | 1: mtspr SPRN_IBAT3L,r8 | 1246 | 1: mtspr SPRN_IBAT3L,r8 |
1363 | mtspr SPRN_IBAT3U,r11 | 1247 | mtspr SPRN_IBAT3U,r11 |
1364 | blr | 1248 | blr |
1365 | #endif /* !defined(CONFIG_APUS) && defined(CONFIG_BOOTX_TEXT) */ | 1249 | #endif /* CONFIG_BOOTX_TEXT */ |
1366 | 1250 | ||
1367 | #ifdef CONFIG_8260 | 1251 | #ifdef CONFIG_8260 |
1368 | /* Jump into the system reset for the rom. | 1252 | /* Jump into the system reset for the rom. |
diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c index 42c8ed6ed528..b74b0fd764b2 100644 --- a/arch/powerpc/kernel/irq.c +++ b/arch/powerpc/kernel/irq.c | |||
@@ -7,7 +7,6 @@ | |||
7 | * Copyright (C) 1996-2001 Cort Dougan | 7 | * Copyright (C) 1996-2001 Cort Dougan |
8 | * Adapted for Power Macintosh by Paul Mackerras | 8 | * Adapted for Power Macintosh by Paul Mackerras |
9 | * Copyright (C) 1996 Paul Mackerras (paulus@cs.anu.edu.au) | 9 | * Copyright (C) 1996 Paul Mackerras (paulus@cs.anu.edu.au) |
10 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
11 | * | 10 | * |
12 | * This program is free software; you can redistribute it and/or | 11 | * This program is free software; you can redistribute it and/or |
13 | * modify it under the terms of the GNU General Public License | 12 | * modify it under the terms of the GNU General Public License |
diff --git a/arch/powerpc/mm/44x_mmu.c b/arch/powerpc/mm/44x_mmu.c index ca4dcb07a939..c3df50476539 100644 --- a/arch/powerpc/mm/44x_mmu.c +++ b/arch/powerpc/mm/44x_mmu.c | |||
@@ -12,7 +12,6 @@ | |||
12 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 12 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
13 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 13 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
14 | * Copyright (C) 1996 Paul Mackerras | 14 | * Copyright (C) 1996 Paul Mackerras |
15 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
16 | * | 15 | * |
17 | * Derived from "arch/i386/mm/init.c" | 16 | * Derived from "arch/i386/mm/init.c" |
18 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 17 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/4xx_mmu.c b/arch/powerpc/mm/4xx_mmu.c index 838e09db71d9..7ff2609b64d1 100644 --- a/arch/powerpc/mm/4xx_mmu.c +++ b/arch/powerpc/mm/4xx_mmu.c | |||
@@ -9,7 +9,6 @@ | |||
9 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 9 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
10 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 10 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
11 | * Copyright (C) 1996 Paul Mackerras | 11 | * Copyright (C) 1996 Paul Mackerras |
12 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
13 | * | 12 | * |
14 | * Derived from "arch/i386/mm/init.c" | 13 | * Derived from "arch/i386/mm/init.c" |
15 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 14 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/fsl_booke_mmu.c b/arch/powerpc/mm/fsl_booke_mmu.c index 123da03ab118..afab247d472f 100644 --- a/arch/powerpc/mm/fsl_booke_mmu.c +++ b/arch/powerpc/mm/fsl_booke_mmu.c | |||
@@ -14,7 +14,6 @@ | |||
14 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 14 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
15 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 15 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
16 | * Copyright (C) 1996 Paul Mackerras | 16 | * Copyright (C) 1996 Paul Mackerras |
17 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
18 | * | 17 | * |
19 | * Derived from "arch/i386/mm/init.c" | 18 | * Derived from "arch/i386/mm/init.c" |
20 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 19 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/init_32.c b/arch/powerpc/mm/init_32.c index 5fce6ccecb8d..e1f5ded851f6 100644 --- a/arch/powerpc/mm/init_32.c +++ b/arch/powerpc/mm/init_32.c | |||
@@ -5,7 +5,6 @@ | |||
5 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 5 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
6 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 6 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
7 | * Copyright (C) 1996 Paul Mackerras | 7 | * Copyright (C) 1996 Paul Mackerras |
8 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
9 | * PPC44x/36-bit changes by Matt Porter (mporter@mvista.com) | 8 | * PPC44x/36-bit changes by Matt Porter (mporter@mvista.com) |
10 | * | 9 | * |
11 | * Derived from "arch/i386/mm/init.c" | 10 | * Derived from "arch/i386/mm/init.c" |
diff --git a/arch/powerpc/mm/init_64.c b/arch/powerpc/mm/init_64.c index 7312a265545f..1d6edf724c85 100644 --- a/arch/powerpc/mm/init_64.c +++ b/arch/powerpc/mm/init_64.c | |||
@@ -5,7 +5,6 @@ | |||
5 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 5 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
6 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 6 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
7 | * Copyright (C) 1996 Paul Mackerras | 7 | * Copyright (C) 1996 Paul Mackerras |
8 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
9 | * | 8 | * |
10 | * Derived from "arch/i386/mm/init.c" | 9 | * Derived from "arch/i386/mm/init.c" |
11 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 10 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c index 0266a94d83b6..2c8790f36be2 100644 --- a/arch/powerpc/mm/mem.c +++ b/arch/powerpc/mm/mem.c | |||
@@ -5,7 +5,6 @@ | |||
5 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 5 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
6 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 6 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
7 | * Copyright (C) 1996 Paul Mackerras | 7 | * Copyright (C) 1996 Paul Mackerras |
8 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
9 | * PPC44x/36-bit changes by Matt Porter (mporter@mvista.com) | 8 | * PPC44x/36-bit changes by Matt Porter (mporter@mvista.com) |
10 | * | 9 | * |
11 | * Derived from "arch/i386/mm/init.c" | 10 | * Derived from "arch/i386/mm/init.c" |
diff --git a/arch/powerpc/mm/mmu_context_32.c b/arch/powerpc/mm/mmu_context_32.c index 792086b01000..cc32ba41d900 100644 --- a/arch/powerpc/mm/mmu_context_32.c +++ b/arch/powerpc/mm/mmu_context_32.c | |||
@@ -11,7 +11,6 @@ | |||
11 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 11 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
12 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 12 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
13 | * Copyright (C) 1996 Paul Mackerras | 13 | * Copyright (C) 1996 Paul Mackerras |
14 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
15 | * | 14 | * |
16 | * Derived from "arch/i386/mm/init.c" | 15 | * Derived from "arch/i386/mm/init.c" |
17 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 16 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/mmu_decl.h b/arch/powerpc/mm/mmu_decl.h index f7a4066a57ea..69cd1c617cdc 100644 --- a/arch/powerpc/mm/mmu_decl.h +++ b/arch/powerpc/mm/mmu_decl.h | |||
@@ -8,7 +8,6 @@ | |||
8 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 8 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
9 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 9 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
10 | * Copyright (C) 1996 Paul Mackerras | 10 | * Copyright (C) 1996 Paul Mackerras |
11 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
12 | * | 11 | * |
13 | * Derived from "arch/i386/mm/init.c" | 12 | * Derived from "arch/i386/mm/init.c" |
14 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 13 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/pgtable_32.c b/arch/powerpc/mm/pgtable_32.c index 62680b0f7204..1c85c6f3bbba 100644 --- a/arch/powerpc/mm/pgtable_32.c +++ b/arch/powerpc/mm/pgtable_32.c | |||
@@ -8,7 +8,6 @@ | |||
8 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 8 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
9 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 9 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
10 | * Copyright (C) 1996 Paul Mackerras | 10 | * Copyright (C) 1996 Paul Mackerras |
11 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
12 | * | 11 | * |
13 | * Derived from "arch/i386/mm/init.c" | 12 | * Derived from "arch/i386/mm/init.c" |
14 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 13 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/pgtable_64.c b/arch/powerpc/mm/pgtable_64.c index a895de73beae..3dfd10db931a 100644 --- a/arch/powerpc/mm/pgtable_64.c +++ b/arch/powerpc/mm/pgtable_64.c | |||
@@ -7,7 +7,6 @@ | |||
7 | * Modifications by Paul Mackerras (PowerMac) (paulus@samba.org) | 7 | * Modifications by Paul Mackerras (PowerMac) (paulus@samba.org) |
8 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 8 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
9 | * Copyright (C) 1996 Paul Mackerras | 9 | * Copyright (C) 1996 Paul Mackerras |
10 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
11 | * | 10 | * |
12 | * Derived from "arch/i386/mm/init.c" | 11 | * Derived from "arch/i386/mm/init.c" |
13 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 12 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/ppc_mmu_32.c b/arch/powerpc/mm/ppc_mmu_32.c index ec1421a20aaa..142849de50e4 100644 --- a/arch/powerpc/mm/ppc_mmu_32.c +++ b/arch/powerpc/mm/ppc_mmu_32.c | |||
@@ -11,7 +11,6 @@ | |||
11 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 11 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
12 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 12 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
13 | * Copyright (C) 1996 Paul Mackerras | 13 | * Copyright (C) 1996 Paul Mackerras |
14 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
15 | * | 14 | * |
16 | * Derived from "arch/i386/mm/init.c" | 15 | * Derived from "arch/i386/mm/init.c" |
17 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 16 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/tlb_32.c b/arch/powerpc/mm/tlb_32.c index 6a69417cbc0e..06c7e77e097a 100644 --- a/arch/powerpc/mm/tlb_32.c +++ b/arch/powerpc/mm/tlb_32.c | |||
@@ -11,7 +11,6 @@ | |||
11 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 11 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
12 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 12 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
13 | * Copyright (C) 1996 Paul Mackerras | 13 | * Copyright (C) 1996 Paul Mackerras |
14 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
15 | * | 14 | * |
16 | * Derived from "arch/i386/mm/init.c" | 15 | * Derived from "arch/i386/mm/init.c" |
17 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 16 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/mm/tlb_64.c b/arch/powerpc/mm/tlb_64.c index fdecb7f764d6..cbd34fc813ee 100644 --- a/arch/powerpc/mm/tlb_64.c +++ b/arch/powerpc/mm/tlb_64.c | |||
@@ -8,7 +8,6 @@ | |||
8 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) | 8 | * Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au) |
9 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) | 9 | * and Cort Dougan (PReP) (cort@cs.nmt.edu) |
10 | * Copyright (C) 1996 Paul Mackerras | 10 | * Copyright (C) 1996 Paul Mackerras |
11 | * Amiga/APUS changes by Jesper Skov (jskov@cygnus.co.uk). | ||
12 | * | 11 | * |
13 | * Derived from "arch/i386/mm/init.c" | 12 | * Derived from "arch/i386/mm/init.c" |
14 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds | 13 | * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds |
diff --git a/arch/powerpc/platforms/Kconfig b/arch/powerpc/platforms/Kconfig index 361acfa2894c..d6c475ca311d 100644 --- a/arch/powerpc/platforms/Kconfig +++ b/arch/powerpc/platforms/Kconfig | |||
@@ -16,13 +16,6 @@ config EMBEDDED6xx | |||
16 | bool "Embedded 6xx/7xx/7xxx-based board" | 16 | bool "Embedded 6xx/7xx/7xxx-based board" |
17 | depends on PPC32 && (BROKEN||BROKEN_ON_SMP) | 17 | depends on PPC32 && (BROKEN||BROKEN_ON_SMP) |
18 | 18 | ||
19 | config APUS | ||
20 | bool "Amiga-APUS" | ||
21 | depends on PPC32 && BROKEN | ||
22 | help | ||
23 | Select APUS if configuring for a PowerUP Amiga. | ||
24 | More information is available at: | ||
25 | <http://linux-apus.sourceforge.net/>. | ||
26 | endchoice | 19 | endchoice |
27 | 20 | ||
28 | source "arch/powerpc/platforms/pseries/Kconfig" | 21 | source "arch/powerpc/platforms/pseries/Kconfig" |
diff --git a/arch/powerpc/platforms/apus/Kconfig b/arch/powerpc/platforms/apus/Kconfig deleted file mode 100644 index 6bde3bffed86..000000000000 --- a/arch/powerpc/platforms/apus/Kconfig +++ /dev/null | |||
@@ -1,130 +0,0 @@ | |||
1 | |||
2 | config AMIGA | ||
3 | bool | ||
4 | depends on APUS | ||
5 | default y | ||
6 | help | ||
7 | This option enables support for the Amiga series of computers. | ||
8 | |||
9 | config ZORRO | ||
10 | bool | ||
11 | depends on APUS | ||
12 | default y | ||
13 | help | ||
14 | This enables support for the Zorro bus in the Amiga. If you have | ||
15 | expansion cards in your Amiga that conform to the Amiga | ||
16 | AutoConfig(tm) specification, say Y, otherwise N. Note that even | ||
17 | expansion cards that do not fit in the Zorro slots but fit in e.g. | ||
18 | the CPU slot may fall in this category, so you have to say Y to let | ||
19 | Linux use these. | ||
20 | |||
21 | config ABSTRACT_CONSOLE | ||
22 | bool | ||
23 | depends on APUS | ||
24 | default y | ||
25 | |||
26 | config APUS_FAST_EXCEPT | ||
27 | bool | ||
28 | depends on APUS | ||
29 | default y | ||
30 | |||
31 | config AMIGA_PCMCIA | ||
32 | bool "Amiga 1200/600 PCMCIA support" | ||
33 | depends on APUS && EXPERIMENTAL | ||
34 | help | ||
35 | Include support in the kernel for pcmcia on Amiga 1200 and Amiga | ||
36 | 600. If you intend to use pcmcia cards say Y; otherwise say N. | ||
37 | |||
38 | config AMIGA_BUILTIN_SERIAL | ||
39 | tristate "Amiga builtin serial support" | ||
40 | depends on APUS | ||
41 | help | ||
42 | If you want to use your Amiga's built-in serial port in Linux, | ||
43 | answer Y. | ||
44 | |||
45 | To compile this driver as a module, choose M here. | ||
46 | |||
47 | config GVPIOEXT | ||
48 | tristate "GVP IO-Extender support" | ||
49 | depends on APUS | ||
50 | help | ||
51 | If you want to use a GVP IO-Extender serial card in Linux, say Y. | ||
52 | Otherwise, say N. | ||
53 | |||
54 | config GVPIOEXT_LP | ||
55 | tristate "GVP IO-Extender parallel printer support" | ||
56 | depends on GVPIOEXT | ||
57 | help | ||
58 | Say Y to enable driving a printer from the parallel port on your | ||
59 | GVP IO-Extender card, N otherwise. | ||
60 | |||
61 | config GVPIOEXT_PLIP | ||
62 | tristate "GVP IO-Extender PLIP support" | ||
63 | depends on GVPIOEXT | ||
64 | help | ||
65 | Say Y to enable doing IP over the parallel port on your GVP | ||
66 | IO-Extender card, N otherwise. | ||
67 | |||
68 | config MULTIFACE_III_TTY | ||
69 | tristate "Multiface Card III serial support" | ||
70 | depends on APUS | ||
71 | help | ||
72 | If you want to use a Multiface III card's serial port in Linux, | ||
73 | answer Y. | ||
74 | |||
75 | To compile this driver as a module, choose M here. | ||
76 | |||
77 | config A2232 | ||
78 | tristate "Commodore A2232 serial support (EXPERIMENTAL)" | ||
79 | depends on EXPERIMENTAL && APUS | ||
80 | ---help--- | ||
81 | This option supports the 2232 7-port serial card shipped with the | ||
82 | Amiga 2000 and other Zorro-bus machines, dating from 1989. At | ||
83 | a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip | ||
84 | each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The | ||
85 | ports were connected with 8 pin DIN connectors on the card bracket, | ||
86 | for which 8 pin to DB25 adapters were supplied. The card also had | ||
87 | jumpers internally to toggle various pinning configurations. | ||
88 | |||
89 | This driver can be built as a module; but then "generic_serial" | ||
90 | will also be built as a module. This has to be loaded before | ||
91 | "ser_a2232". If you want to do this, answer M here. | ||
92 | |||
93 | config WHIPPET_SERIAL | ||
94 | tristate "Hisoft Whippet PCMCIA serial support" | ||
95 | depends on AMIGA_PCMCIA | ||
96 | help | ||
97 | HiSoft has a web page at <http://www.hisoft.co.uk/>, but there | ||
98 | is no listing for the Whippet in their Amiga section. | ||
99 | |||
100 | config APNE | ||
101 | tristate "PCMCIA NE2000 support" | ||
102 | depends on AMIGA_PCMCIA | ||
103 | help | ||
104 | If you have a PCMCIA NE2000 compatible adapter, say Y. Otherwise, | ||
105 | say N. | ||
106 | |||
107 | To compile this driver as a module, choose M here: the | ||
108 | module will be called apne. | ||
109 | |||
110 | config SERIAL_CONSOLE | ||
111 | bool "Support for serial port console" | ||
112 | depends on APUS && (AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y) | ||
113 | |||
114 | config HEARTBEAT | ||
115 | bool "Use power LED as a heartbeat" | ||
116 | depends on APUS | ||
117 | help | ||
118 | Use the power-on LED on your machine as a load meter. The exact | ||
119 | behavior is platform-dependent, but normally the flash frequency is | ||
120 | a hyperbolic function of the 5-minute load average. | ||
121 | |||
122 | config PROC_HARDWARE | ||
123 | bool "/proc/hardware support" | ||
124 | depends on APUS | ||
125 | |||
126 | source "drivers/zorro/Kconfig" | ||
127 | |||
128 | config PCI_PERMEDIA | ||
129 | bool "PCI for Permedia2" | ||
130 | depends on !4xx && !8xx && APUS | ||
diff --git a/include/asm-powerpc/pgtable-ppc32.h b/include/asm-powerpc/pgtable-ppc32.h index c18ac821ce44..63c535d02535 100644 --- a/include/asm-powerpc/pgtable-ppc32.h +++ b/include/asm-powerpc/pgtable-ppc32.h | |||
@@ -751,32 +751,6 @@ extern void paging_init(void); | |||
751 | #define pte_to_pgoff(pte) (pte_val(pte) >> 3) | 751 | #define pte_to_pgoff(pte) (pte_val(pte) >> 3) |
752 | #define pgoff_to_pte(off) ((pte_t) { ((off) << 3) | _PAGE_FILE }) | 752 | #define pgoff_to_pte(off) ((pte_t) { ((off) << 3) | _PAGE_FILE }) |
753 | 753 | ||
754 | /* CONFIG_APUS */ | ||
755 | /* For virtual address to physical address conversion */ | ||
756 | extern void cache_clear(__u32 addr, int length); | ||
757 | extern void cache_push(__u32 addr, int length); | ||
758 | extern int mm_end_of_chunk (unsigned long addr, int len); | ||
759 | |||
760 | /* Values for nocacheflag and cmode */ | ||
761 | /* These are not used by the APUS kernel_map, but prevents | ||
762 | compilation errors. */ | ||
763 | #define KERNELMAP_FULL_CACHING 0 | ||
764 | #define KERNELMAP_NOCACHE_SER 1 | ||
765 | #define KERNELMAP_NOCACHE_NONSER 2 | ||
766 | #define KERNELMAP_NO_COPYBACK 3 | ||
767 | |||
768 | /* | ||
769 | * Map some physical address range into the kernel address space. | ||
770 | */ | ||
771 | extern unsigned long kernel_map(unsigned long paddr, unsigned long size, | ||
772 | int nocacheflag, unsigned long *memavailp ); | ||
773 | |||
774 | /* | ||
775 | * Set cache mode of (kernel space) address range. | ||
776 | */ | ||
777 | extern void kernel_set_cachemode (unsigned long address, unsigned long size, | ||
778 | unsigned int cmode); | ||
779 | |||
780 | /* Needs to be defined here and not in linux/mm.h, as it is arch dependent */ | 754 | /* Needs to be defined here and not in linux/mm.h, as it is arch dependent */ |
781 | #define kern_addr_valid(addr) (1) | 755 | #define kern_addr_valid(addr) (1) |
782 | 756 | ||