[uClinux-dev] Exception vectors on ARM?

Steve Johnson stevej at ridgerun.com
Thu Nov 1 19:22:12 EST 2001


Lance,

    Your solution may be best.  I had suggested (off-group) that you 
just put your head.S at 0x0, and let trap_init() overwrite your head 
code, since it's never used again.   That would work OK for 2.0.3x, but 
might be a problem with 2.4.x.  With 2.0.3x, head.S is the first object 
in .stext and the vectors are all under 0x100.  With 2.4.x, the init 
table may be ahead of head.S (looking at vmlinux-armv.lds.in), and like 
Erwin said, the vectors run out to 0x300.  So before trying my 
suggestion, make sure head.S links at 0x0 and there's nothing you need 
to run after initialization under address 0x300.

    Steve

Lance Spaulding wrote:

>should be as simple as setting TEXTADDR=0 and adding a dummy vector table at
>the start of stext as shown below:
>
>ENTRY(stext)
>      /* Initial reset vector table at address TEXTADDR=0 */
>      b resetvec
>      b unexpected
>      b unexpected
>      b unexpected
>      b unexpected
>      b unexpected
>      b unexpected
>      b unexpected
>
>unexpected:
>      b unexpected
>
>      /* Leave room for the IRQ stubs to get copied to */
>      .space 4096-(9*4)
>
>resetvec:
>      /* Initialize hardware */
>
>      /* normal stext code follows */
>
-- 
Steve Johnson             |   stevej at ridgerun.com
RidgeRun, Inc.            |   208-246-8228
205 N 10th St, 4th Floor  |   Fax: 208-331-2227
Boise, ID 83702           |




This message resent by the uclinux-dev at uclinux.org list server http://www.uClinux.org/
This message resent by the uclinux-dev at uclinux.org list server http://www.uClinux.org/



More information about the uClinux-dev mailing list