edb7312 and SkyeEye followup

Joel Sherrill <joel@OARcorp.com> joel.sherrill at OARcorp.com
Fri Nov 25 14:51:57 UTC 2005


Jay Monkman wrote:
> 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.

I had thought about changing the config file to put the RAM back at 0 
but I don't know the interrupt structure well enough to figure out what
happens next.

The code seems pretty easy to read.  Could you download it and look at it?

--joel

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
    Support Available             (256) 722-9985




More information about the users mailing list