Index: ecos/packages/hal/arm/at91/eb40a/current/ChangeLog =================================================================== RCS file: /cvs/ecos/ecos/packages/hal/arm/at91/eb40a/current/ChangeLog,v retrieving revision 1.3 diff -a -w -u -r1.3 ChangeLog --- ecos/packages/hal/arm/at91/eb40a/current/ChangeLog 15 Jul 2003 01:54:44 -0000 1.3 +++ ecos/packages/hal/arm/at91/eb40a/current/ChangeLog 12 Sep 2003 13:11:42 -0000 @@ -1,3 +1,17 @@ +2003-09-13 Oyvind Harboe + + * include/hal_platform_setup.h: + Use PC relative addressing to find pointer to InitMemory + making debugging with e.g. Abatron ICE smoother for ROMRAM + applications since the Abatron ICE can in some cases perform + the remap command. + + ROMRAM now copies to internal SRAM instead of the external + RAM board @ 0x2000000. + + * include/pkgconf/mlt_arm_at91_eb40a_romram.ldi: + Changed start address to be address 0x0. + 2003-07-15 Jonathan Larmour * include/hal_platform_ints.h (HAL_PLATFORM_RESET): Actually use Index: ecos/packages/hal/arm/at91/eb40a/current/include/hal_platform_setup.h =================================================================== RCS file: /cvs/ecos/ecos/packages/hal/arm/at91/eb40a/current/include/hal_platform_setup.h,v retrieving revision 1.1 diff -a -w -u -r1.1 hal_platform_setup.h --- ecos/packages/hal/arm/at91/eb40a/current/include/hal_platform_setup.h 13 May 2003 18:27:55 -0000 1.1 +++ ecos/packages/hal/arm/at91/eb40a/current/include/hal_platform_setup.h 12 Sep 2003 13:11:42 -0000 @@ -87,10 +87,9 @@ .macro _setup _led_init - ldr r10,=_InitMemory // Initialize memory controller - movs r0,pc,lsr #20 // If ROM startup, PC < 0x100000 - moveq r10,r10,lsl #12 // mask address to low 20 bits - moveq r10,r10,lsr #12 + // Initialize memory controller. + adr r10,_InitMemory // this is pc relative load + // effective address instruction ldmia r10!,{r0-r9,r11-r12} // Table of initialization constants #if defined(CYG_HAL_STARTUP_ROMRAM) ldr r10,=0x0000FFFF @@ -116,8 +115,8 @@ 10: #if defined(CYG_HAL_STARTUP_ROMRAM) ldr r0,=0x01000000 // Relocate FLASH/ROM to on-chip RAM - ldr r1,=0x02000000 // RAM base & length - ldr r2,=0x02010000 + ldr r1,=0x00000000 // RAM base & length + ldr r2,=0x00040000 20: ldr r3,[r0],#4 str r3,[r1],#4 cmp r1,r2 Index: ecos/packages/hal/arm/at91/eb40a/current/include/pkgconf/mlt_arm_at91_eb40a_romram.ldi =================================================================== RCS file: /cvs/ecos/ecos/packages/hal/arm/at91/eb40a/current/include/pkgconf/mlt_arm_at91_eb40a_romram.ldi,v retrieving revision 1.1 diff -a -w -u -r1.1 mlt_arm_at91_eb40a_romram.ldi --- ecos/packages/hal/arm/at91/eb40a/current/include/pkgconf/mlt_arm_at91_eb40a_romram.ldi 13 May 2003 18:27:56 -0000 1.1 +++ ecos/packages/hal/arm/at91/eb40a/current/include/pkgconf/mlt_arm_at91_eb40a_romram.ldi 12 Sep 2003 13:11:42 -0000 @@ -13,7 +13,9 @@ { SECTIONS_BEGIN SECTION_fixed_vectors (ram, 0x20, LMA_EQ_VMA) - SECTION_rom_vectors (ram, 0x4000, LMA_EQ_VMA) + // start address in RAM is 0, start address in flash + // is 0x1000000. + SECTION_rom_vectors (ram, 0x0, LMA_EQ_VMA) SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA) SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA) SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)