edb7312 and SkyeEye followup

Jay Monkman jtm at smoothsmoothie.com
Wed Nov 23 20:56:04 UTC 2005


Joel Sherrill <joel at OARcorp.com> wrote:

> Index: irq/bsp_irq_init.c
> ===================================================================
> RCS file: /usr1/CVS/rtems/c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_init.c,v
> retrieving revision 1.4
> diff -u -r1.4 bsp_irq_init.c
> --- irq/bsp_irq_init.c  21 Apr 2004 10:42:43 -0000      1.4
> +++ irq/bsp_irq_init.c  22 Nov 2005 16:41:12 -0000
> @@ -25,8 +25,8 @@
> 
>          /* mask all interrupts */
>          *EP7312_INTMR1 = 0x0;
> -       *EP7312_INTMR2 = 0x0;
> -       *EP7312_INTMR3 = 0x0;
> +       /* *EP7312_INTMR2 = 0x0; */
> +       /* *EP7312_INTMR3 = 0x0; */
> 

That seems probably harmless, particularly in a simulator. There aren't any
interesting interrupts in INTMR2 or INTMR3.

The linker script patch is a little confusing:
> Index: startup/linkcmds
> ===================================================================
> RCS file: /usr1/CVS/rtems/c/src/lib/libbsp/arm/edb7312/startup/linkcmds,v
> retrieving revision 1.6
> diff -u -r1.6 linkcmds
> --- startup/linkcmds	5 Nov 2004 14:43:08 -0000	1.6
> +++ startup/linkcmds	22 Nov 2005 16:41:12 -0000
> @@ -19,7 +19,7 @@
>
>
>  MEMORY {
> -	sdram : ORIGIN = 0x00000000, LENGTH = 16M
> +	sdram : ORIGIN = 0xC0000000, LENGTH = 16M
>  	regs  : ORIGIN = 0x80000000, LENGTH = 1M
>  }
>
> @@ -27,7 +27,7 @@
>   * Declare some sizes.
>   */
>
> -_sdram_base = DEFINED(_sdram_base) ? _sdram_base : 0x00000000;
> +_sdram_base = DEFINED(_sdram_base) ? _sdram_base : 0xC0000000;
>  _sdram_size = DEFINED(_sdram_size) ? _sdram_size : 16M;
>
>


It moves the SDRAM from 0 to 0xc0000000. I'm assuming the bootloader skyeye is
emulating maps SDRAM there. The proble is the interrupt vectors live at
0x00000000, which may not be mapped anywhere. So if you got the tick interrupt
it may not vector to the right place.




More information about the users mailing list