diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-16 16:26:53 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-16 16:26:53 -0500 |
| commit | a73611b6aafa3b902524dad2d68e378c4ec9f4db (patch) | |
| tree | 5dc4877055a2297d9f7f5db4cf6a5a7aad392dd0 /arch/powerpc/kernel | |
| parent | 5fa3577b1a1202972e6e419040438c29f39f59cc (diff) | |
| parent | ae4cec4736969ec2196a6bbce4ab263ff7cb7eef (diff) | |
Merge branch 'next' of git://git.secretlab.ca/git/linux-2.6
* 'next' of git://git.secretlab.ca/git/linux-2.6: (23 commits)
powerpc: fix up for mmu_mapin_ram api change
powerpc: wii: allow ioremap within the memory hole
powerpc: allow ioremap within reserved memory regions
wii: use both mem1 and mem2 as ram
wii: bootwrapper: add fixup to calc useable mem2
powerpc: gamecube/wii: early debugging using usbgecko
powerpc: reserve fixmap entries for early debug
powerpc: wii: default config
powerpc: wii: platform support
powerpc: wii: hollywood interrupt controller support
powerpc: broadway processor support
powerpc: wii: bootwrapper bits
powerpc: wii: device tree
powerpc: gamecube: default config
powerpc: gamecube: platform support
powerpc: gamecube/wii: flipper interrupt controller support
powerpc: gamecube/wii: udbg support for usbgecko
powerpc: gamecube/wii: do not include PCI support
powerpc: gamecube/wii: declare as non-coherent platforms
powerpc: gamecube/wii: introduce GAMECUBE_COMMON
...
Fix up conflicts in arch/powerpc/mm/fsl_booke_mmu.c.
Hopefully even close to correctly.
Diffstat (limited to 'arch/powerpc/kernel')
| -rw-r--r-- | arch/powerpc/kernel/cputable.c | 6 | ||||
| -rw-r--r-- | arch/powerpc/kernel/head_32.S | 25 | ||||
| -rw-r--r-- | arch/powerpc/kernel/udbg.c | 2 |
3 files changed, 30 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index 03c862b6a9c4..2fc82bac3bbc 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c | |||
| @@ -697,9 +697,9 @@ static struct cpu_spec __initdata cpu_specs[] = { | |||
| 697 | .machine_check = machine_check_generic, | 697 | .machine_check = machine_check_generic, |
| 698 | .platform = "ppc750", | 698 | .platform = "ppc750", |
| 699 | }, | 699 | }, |
| 700 | { /* 750CL */ | 700 | { /* 750CL (and "Broadway") */ |
| 701 | .pvr_mask = 0xfffff0f0, | 701 | .pvr_mask = 0xfffff0e0, |
| 702 | .pvr_value = 0x00087010, | 702 | .pvr_value = 0x00087000, |
| 703 | .cpu_name = "750CL", | 703 | .cpu_name = "750CL", |
| 704 | .cpu_features = CPU_FTRS_750CL, | 704 | .cpu_features = CPU_FTRS_750CL, |
| 705 | .cpu_user_features = COMMON_USER | PPC_FEATURE_PPC_LE, | 705 | .cpu_user_features = COMMON_USER | PPC_FEATURE_PPC_LE, |
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S index 829c3fe7c5a2..e025e89fe93e 100644 --- a/arch/powerpc/kernel/head_32.S +++ b/arch/powerpc/kernel/head_32.S | |||
| @@ -164,6 +164,9 @@ __after_mmu_off: | |||
| 164 | #ifdef CONFIG_PPC_EARLY_DEBUG_CPM | 164 | #ifdef CONFIG_PPC_EARLY_DEBUG_CPM |
| 165 | bl setup_cpm_bat | 165 | bl setup_cpm_bat |
| 166 | #endif | 166 | #endif |
| 167 | #ifdef CONFIG_PPC_EARLY_DEBUG_USBGECKO | ||
| 168 | bl setup_usbgecko_bat | ||
| 169 | #endif | ||
| 167 | 170 | ||
| 168 | /* | 171 | /* |
| 169 | * Call setup_cpu for CPU 0 and initialize 6xx Idle | 172 | * Call setup_cpu for CPU 0 and initialize 6xx Idle |
| @@ -1203,6 +1206,28 @@ setup_cpm_bat: | |||
| 1203 | blr | 1206 | blr |
| 1204 | #endif | 1207 | #endif |
| 1205 | 1208 | ||
| 1209 | #ifdef CONFIG_PPC_EARLY_DEBUG_USBGECKO | ||
| 1210 | setup_usbgecko_bat: | ||
| 1211 | /* prepare a BAT for early io */ | ||
| 1212 | #if defined(CONFIG_GAMECUBE) | ||
| 1213 | lis r8, 0x0c00 | ||
| 1214 | #elif defined(CONFIG_WII) | ||
| 1215 | lis r8, 0x0d00 | ||
| 1216 | #else | ||
| 1217 | #error Invalid platform for USB Gecko based early debugging. | ||
| 1218 | #endif | ||
| 1219 | /* | ||
| 1220 | * The virtual address used must match the virtual address | ||
| 1221 | * associated to the fixmap entry FIX_EARLY_DEBUG_BASE. | ||
| 1222 | */ | ||
| 1223 | lis r11, 0xfffe /* top 128K */ | ||
| 1224 | ori r8, r8, 0x002a /* uncached, guarded ,rw */ | ||
| 1225 | ori r11, r11, 0x2 /* 128K, Vs=1, Vp=0 */ | ||
| 1226 | mtspr SPRN_DBAT1L, r8 | ||
| 1227 | mtspr SPRN_DBAT1U, r11 | ||
| 1228 | blr | ||
| 1229 | #endif | ||
| 1230 | |||
| 1206 | #ifdef CONFIG_8260 | 1231 | #ifdef CONFIG_8260 |
| 1207 | /* Jump into the system reset for the rom. | 1232 | /* Jump into the system reset for the rom. |
| 1208 | * We first disable the MMU, and then jump to the ROM reset address. | 1233 | * We first disable the MMU, and then jump to the ROM reset address. |
diff --git a/arch/powerpc/kernel/udbg.c b/arch/powerpc/kernel/udbg.c index fc9af47e2128..e39cad83c884 100644 --- a/arch/powerpc/kernel/udbg.c +++ b/arch/powerpc/kernel/udbg.c | |||
| @@ -60,6 +60,8 @@ void __init udbg_early_init(void) | |||
| 60 | udbg_init_40x_realmode(); | 60 | udbg_init_40x_realmode(); |
| 61 | #elif defined(CONFIG_PPC_EARLY_DEBUG_CPM) | 61 | #elif defined(CONFIG_PPC_EARLY_DEBUG_CPM) |
| 62 | udbg_init_cpm(); | 62 | udbg_init_cpm(); |
| 63 | #elif defined(CONFIG_PPC_EARLY_DEBUG_USBGECKO) | ||
| 64 | udbg_init_usbgecko(); | ||
| 63 | #endif | 65 | #endif |
| 64 | 66 | ||
| 65 | #ifdef CONFIG_PPC_EARLY_DEBUG | 67 | #ifdef CONFIG_PPC_EARLY_DEBUG |
