diff options
Diffstat (limited to 'board/shannon')
-rw-r--r-- | board/shannon/Makefile | 2 | ||||
-rw-r--r-- | board/shannon/flash.c | 4 | ||||
-rw-r--r-- | board/shannon/memsetup.S | 2 | ||||
-rw-r--r-- | board/shannon/shannon.c | 36 | ||||
-rw-r--r-- | board/shannon/u-boot.lds | 25 |
5 files changed, 36 insertions, 33 deletions
diff --git a/board/shannon/Makefile b/board/shannon/Makefile index ac5bf81..86098a3 100644 --- a/board/shannon/Makefile +++ b/board/shannon/Makefile @@ -29,7 +29,7 @@ OBJS := shannon.o flash.o SOBJS := memsetup.o $(LIB): $(OBJS) $(SOBJS) - $(AR) crv $@ $^ + $(AR) crv $@ $(OBJS) $(SOBJS) clean: rm -f $(SOBJS) $(OBJS) diff --git a/board/shannon/flash.c b/board/shannon/flash.c index c340fea..74f5f69 100644 --- a/board/shannon/flash.c +++ b/board/shannon/flash.c @@ -327,7 +327,7 @@ volatile static int write_word (flash_info_t *info, ulong dest, ulong data) */ result = *addr; if ((result & data) != data) - return ERR_NOT_ERASED; + return ERR_NOT_ERASED; /* @@ -393,7 +393,7 @@ volatile static int write_word (flash_info_t *info, ulong dest, ulong data) *addr = CMD_READ_ARRAY; if (chip1 == ERR || chip2 == ERR || *addr != data) - rc = ERR_PROG_ERROR; + rc = ERR_PROG_ERROR; if (iflag) enable_interrupts(); diff --git a/board/shannon/memsetup.S b/board/shannon/memsetup.S index 4f0c464..a9a8777 100644 --- a/board/shannon/memsetup.S +++ b/board/shannon/memsetup.S @@ -24,7 +24,6 @@ */ - #include <config.h> #include <version.h> @@ -91,4 +90,3 @@ memsetup: /* everything is fine now */ mov pc, lr - diff --git a/board/shannon/shannon.c b/board/shannon/shannon.c index a55626d..1876e3e 100644 --- a/board/shannon/shannon.c +++ b/board/shannon/shannon.c @@ -40,24 +40,24 @@ int board_init (void) #ifdef CONFIG_INFERNO { - unsigned long temp; - __asm__ __volatile__(/* disable MMU, enable icache */ - "mrc p15, 0, %0, c1, c0\n" - "bic %0, %0, #0x00002000\n" - "bic %0, %0, #0x0000000f\n" - "orr %0, %0, #0x00001000\n" - "orr %0, %0, #0x00000002\n" - "mcr p15, 0, %0, c1, c0\n" - /* flush caches */ - "mov %0, #0\n" - "mcr p15, 0, %0, c7, c7, 0\n" - "mcr p15, 0, %0, c8, c7, 0\n" - : "=r" (temp) - : - : "memory"); - /* setup PCMCIA timing */ - temp = 0xa0000018; - *(unsigned long *)temp = 0x00060006; + unsigned long temp; + __asm__ __volatile__(/* disable MMU, enable icache */ + "mrc p15, 0, %0, c1, c0\n" + "bic %0, %0, #0x00002000\n" + "bic %0, %0, #0x0000000f\n" + "orr %0, %0, #0x00001000\n" + "orr %0, %0, #0x00000002\n" + "mcr p15, 0, %0, c1, c0\n" + /* flush caches */ + "mov %0, #0\n" + "mcr p15, 0, %0, c7, c7, 0\n" + "mcr p15, 0, %0, c8, c7, 0\n" + : "=r" (temp) + : + : "memory"); + /* setup PCMCIA timing */ + temp = 0xa0000018; + *(unsigned long *)temp = 0x00060006; } #endif /* CONFIG_INIT_CRITICAL */ diff --git a/board/shannon/u-boot.lds b/board/shannon/u-boot.lds index f4b0ade..d1fe8aa 100644 --- a/board/shannon/u-boot.lds +++ b/board/shannon/u-boot.lds @@ -26,28 +26,33 @@ OUTPUT_ARCH(arm) ENTRY(_start) SECTIONS { - . = 0x00000000; + . = 0x00000000; - . = ALIGN(4); + . = ALIGN(4); .text : { cpu/sa1100/start.o (.text) *(.text) } - . = ALIGN(4); - .rodata : { *(.rodata) } + . = ALIGN(4); + .rodata : { *(.rodata) } - . = ALIGN(4); - .data : { *(.data) } + . = ALIGN(4); + .data : { *(.data) } - . = ALIGN(4); - .got : { *(.got) } + . = ALIGN(4); + .got : { *(.got) } + + __u_boot_cmd_start = .; + .u_boot_cmd : { *(.u_boot_cmd) } + __u_boot_cmd_end = .; armboot_end_data = .; - . = ALIGN(4); - .bss : { *(.bss) } + . = ALIGN(4); + .bss : { *(.bss) } armboot_end = .; + } |