diff options
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/cpu/74xx_7xx/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc512x/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc5xx/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc5xxx/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc8220/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc824x/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc8260/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc83xx/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc85xx/start.S | 22 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc86xx/start.S | 9 | ||||
-rw-r--r-- | arch/powerpc/cpu/mpc8xx/start.S | 5 | ||||
-rw-r--r-- | arch/powerpc/cpu/ppc4xx/start.S | 4 | ||||
-rw-r--r-- | arch/powerpc/include/asm/config.h | 3 | ||||
-rw-r--r-- | arch/powerpc/include/asm/immap_512x.h | 4 | ||||
-rw-r--r-- | arch/powerpc/include/asm/u-boot.h | 2 | ||||
-rw-r--r-- | arch/powerpc/lib/board.c | 4 |
16 files changed, 66 insertions, 27 deletions
diff --git a/arch/powerpc/cpu/74xx_7xx/start.S b/arch/powerpc/cpu/74xx_7xx/start.S index 47694aa..573e6d0 100644 --- a/arch/powerpc/cpu/74xx_7xx/start.S +++ b/arch/powerpc/cpu/74xx_7xx/start.S @@ -42,6 +42,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #if !defined(CONFIG_DB64360) && \ !defined(CONFIG_DB64460) && \ @@ -708,10 +709,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: /* clear_bss: */ /* diff --git a/arch/powerpc/cpu/mpc512x/start.S b/arch/powerpc/cpu/mpc512x/start.S index 1047c51..2265c8c 100644 --- a/arch/powerpc/cpu/mpc512x/start.S +++ b/arch/powerpc/cpu/mpc512x/start.S @@ -43,6 +43,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "MPC512X" @@ -612,10 +613,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/mpc5xx/start.S b/arch/powerpc/cpu/mpc5xx/start.S index 4fd9b63..da42557 100644 --- a/arch/powerpc/cpu/mpc5xx/start.S +++ b/arch/powerpc/cpu/mpc5xx/start.S @@ -43,6 +43,7 @@ #include <linux/config.h> #include <asm/processor.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" @@ -452,10 +453,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/mpc5xxx/start.S b/arch/powerpc/cpu/mpc5xxx/start.S index 1385869..92858fc 100644 --- a/arch/powerpc/cpu/mpc5xxx/start.S +++ b/arch/powerpc/cpu/mpc5xxx/start.S @@ -38,6 +38,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" @@ -667,10 +668,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/mpc8220/start.S b/arch/powerpc/cpu/mpc8220/start.S index c156e25..b5c160b 100644 --- a/arch/powerpc/cpu/mpc8220/start.S +++ b/arch/powerpc/cpu/mpc8220/start.S @@ -37,6 +37,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" @@ -640,10 +641,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/mpc824x/start.S b/arch/powerpc/cpu/mpc824x/start.S index 5b126bb..d10231e 100644 --- a/arch/powerpc/cpu/mpc824x/start.S +++ b/arch/powerpc/cpu/mpc824x/start.S @@ -49,6 +49,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" @@ -582,10 +583,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/mpc8260/start.S b/arch/powerpc/cpu/mpc8260/start.S index 9485afa..55c64ea 100644 --- a/arch/powerpc/cpu/mpc8260/start.S +++ b/arch/powerpc/cpu/mpc8260/start.S @@ -38,6 +38,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" @@ -903,10 +904,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/mpc83xx/start.S b/arch/powerpc/cpu/mpc83xx/start.S index bdce915..536604f 100644 --- a/arch/powerpc/cpu/mpc83xx/start.S +++ b/arch/powerpc/cpu/mpc83xx/start.S @@ -40,6 +40,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "MPC83XX" @@ -951,10 +952,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: #endif diff --git a/arch/powerpc/cpu/mpc85xx/start.S b/arch/powerpc/cpu/mpc85xx/start.S index 91096ad..7e5e6b1 100644 --- a/arch/powerpc/cpu/mpc85xx/start.S +++ b/arch/powerpc/cpu/mpc85xx/start.S @@ -145,7 +145,7 @@ _start_e500: beq 2b /* Setup interrupt vectors */ - lis r1,TEXT_BASE@h + lis r1,CONFIG_SYS_TEXT_BASE@h mtspr IVPR,r1 li r1,0x0100 @@ -291,25 +291,25 @@ _start_e500: lis r7,FSL_BOOKE_MAS1(1, 1, 0, 1, BOOKE_PAGESZ_4M)@h ori r7,r7,FSL_BOOKE_MAS1(1, 1, 0, 1, BOOKE_PAGESZ_4M)@l - lis r8,FSL_BOOKE_MAS2(TEXT_BASE & 0xffc00000, (MAS2_I|MAS2_G))@h - ori r8,r8,FSL_BOOKE_MAS2(TEXT_BASE & 0xffc00000, (MAS2_I|MAS2_G))@l + lis r8,FSL_BOOKE_MAS2(CONFIG_SYS_TEXT_BASE & 0xffc00000, (MAS2_I|MAS2_G))@h + ori r8,r8,FSL_BOOKE_MAS2(CONFIG_SYS_TEXT_BASE & 0xffc00000, (MAS2_I|MAS2_G))@l /* The 85xx has the default boot window 0xff800000 - 0xffffffff */ lis r9,FSL_BOOKE_MAS3(0xffc00000, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@h ori r9,r9,FSL_BOOKE_MAS3(0xffc00000, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@l #else /* - * create a temp mapping in AS=1 to the 1M TEXT_BASE space, the main - * image has been relocated to TEXT_BASE on the second stage. + * create a temp mapping in AS=1 to the 1M CONFIG_SYS_TEXT_BASE space, the main + * image has been relocated to CONFIG_SYS_TEXT_BASE on the second stage. */ lis r7,FSL_BOOKE_MAS1(1, 1, 0, 1, BOOKE_PAGESZ_1M)@h ori r7,r7,FSL_BOOKE_MAS1(1, 1, 0, 1, BOOKE_PAGESZ_1M)@l - lis r8,FSL_BOOKE_MAS2(TEXT_BASE, (MAS2_I|MAS2_G))@h - ori r8,r8,FSL_BOOKE_MAS2(TEXT_BASE, (MAS2_I|MAS2_G))@l + lis r8,FSL_BOOKE_MAS2(CONFIG_SYS_TEXT_BASE, (MAS2_I|MAS2_G))@h + ori r8,r8,FSL_BOOKE_MAS2(CONFIG_SYS_TEXT_BASE, (MAS2_I|MAS2_G))@l - lis r9,FSL_BOOKE_MAS3(TEXT_BASE, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@h - ori r9,r9,FSL_BOOKE_MAS3(TEXT_BASE, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@l + lis r9,FSL_BOOKE_MAS3(CONFIG_SYS_TEXT_BASE, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@h + ori r9,r9,FSL_BOOKE_MAS3(CONFIG_SYS_TEXT_BASE, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@l #endif mtspr MAS0,r6 @@ -1037,10 +1037,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/mpc86xx/start.S b/arch/powerpc/cpu/mpc86xx/start.S index 596053f..3817f19 100644 --- a/arch/powerpc/cpu/mpc86xx/start.S +++ b/arch/powerpc/cpu/mpc86xx/start.S @@ -40,6 +40,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" @@ -726,10 +727,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: /* clear_bss: */ /* @@ -848,8 +851,8 @@ setup_ccsrbar: stw r5, 0(r4) /* Store physical value of CCSR */ isync - lis r5, TEXT_BASE@h - ori r5,r5,TEXT_BASE@l + lis r5, CONFIG_SYS_TEXT_BASE@h + ori r5,r5,CONFIG_SYS_TEXT_BASE@l lwz r5, 0(r5) isync diff --git a/arch/powerpc/cpu/mpc8xx/start.S b/arch/powerpc/cpu/mpc8xx/start.S index d6100ec..4a8c5d9 100644 --- a/arch/powerpc/cpu/mpc8xx/start.S +++ b/arch/powerpc/cpu/mpc8xx/start.S @@ -50,6 +50,7 @@ #include <asm/cache.h> #include <asm/mmu.h> +#include <asm/u-boot.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" @@ -583,10 +584,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/cpu/ppc4xx/start.S b/arch/powerpc/cpu/ppc4xx/start.S index 03bde4d..87caea1 100644 --- a/arch/powerpc/cpu/ppc4xx/start.S +++ b/arch/powerpc/cpu/ppc4xx/start.S @@ -1608,10 +1608,12 @@ in_ram: beq 4f 3: lwzu r4,4(r3) lwzux r0,r4,r11 + cmpwi r0,0 add r0,r0,r11 stw r10,0(r3) + beq- 5f stw r0,0(r4) - bdnz 3b +5: bdnz 3b 4: clear_bss: /* diff --git a/arch/powerpc/include/asm/config.h b/arch/powerpc/include/asm/config.h index d098657..a1942ca 100644 --- a/arch/powerpc/include/asm/config.h +++ b/arch/powerpc/include/asm/config.h @@ -22,6 +22,9 @@ #define _ASM_CONFIG_H_ #define CONFIG_LMB +#define CONFIG_SYS_BOOT_RAMDISK_HIGH +#define CONFIG_SYS_BOOT_GET_CMDLINE +#define CONFIG_SYS_BOOT_GET_KBD #ifndef CONFIG_MAX_MEM_MAPPED #if defined(CONFIG_4xx) || defined(CONFIG_E500) || defined(CONFIG_MPC86xx) diff --git a/arch/powerpc/include/asm/immap_512x.h b/arch/powerpc/include/asm/immap_512x.h index 7f9db8b..f763a54 100644 --- a/arch/powerpc/include/asm/immap_512x.h +++ b/arch/powerpc/include/asm/immap_512x.h @@ -1246,4 +1246,8 @@ static inline u32 get_pata_base (void) } #endif /* __ASSEMBLY__ */ +#define CONFIG_SYS_MPC512x_USB_OFFSET 0x4000 +#define CONFIG_SYS_MPC512x_USB_ADDR \ + (CONFIG_SYS_IMMR + CONFIG_SYS_MPC512x_USB_OFFSET) + #endif /* __IMMAP_512x__ */ diff --git a/arch/powerpc/include/asm/u-boot.h b/arch/powerpc/include/asm/u-boot.h index ea2d22d..b377705 100644 --- a/arch/powerpc/include/asm/u-boot.h +++ b/arch/powerpc/include/asm/u-boot.h @@ -62,7 +62,7 @@ typedef struct bd_info { unsigned long bi_flbfreq; /* Flexbus Freq, in MHz */ unsigned long bi_vcofreq; /* VCO Freq, in MHz */ #endif - unsigned long bi_bootflags; /* boot / reboot flag (for LynxOS) */ + unsigned long bi_bootflags; /* boot / reboot flag (Unused) */ unsigned long bi_ip_addr; /* IP Address */ unsigned char bi_enetaddr[6]; /* OLD: see README.enetaddr */ unsigned short bi_ethspeed; /* Ethernet speed in Mbps */ diff --git a/arch/powerpc/lib/board.c b/arch/powerpc/lib/board.c index 529f719..c0c7fd4 100644 --- a/arch/powerpc/lib/board.c +++ b/arch/powerpc/lib/board.c @@ -546,8 +546,6 @@ void board_init_f (ulong bootflag) } #endif - bd->bi_bootflags = bootflag; /* boot / reboot flag (for LynxOS) */ - WATCHDOG_RESET (); bd->bi_intfreq = gd->cpu_clk; /* Internal Freq, in Hz */ bd->bi_busfreq = gd->bus_clk; /* Bus Freq, in Hz */ @@ -734,7 +732,7 @@ void board_init_r (gd_t *id, ulong dest_addr) # if defined(CONFIG_OXC) || defined(CONFIG_RMU) /* flash mapped at end of memory map */ - bd->bi_flashoffset = TEXT_BASE + flash_size; + bd->bi_flashoffset = CONFIG_SYS_TEXT_BASE + flash_size; # elif CONFIG_SYS_MONITOR_BASE == CONFIG_SYS_FLASH_BASE bd->bi_flashoffset = monitor_flash_len; /* reserved area for startup monitor */ # endif |