m68302 boot problem - newbie!!!

Nicco pigeon.nicolas at wanadoo.fr
Thu May 8 21:05:07 UTC 2003


Thank you for your reply, I'll send you all these informations on Friday
because tomorrow is a public holiday in France !!
 
 
-----Original Message-----
From: Chris Johns [mailto:cjohns at cybertec.com.au] 
Sent: mercredi 7 mai 2003 14:53
To: pigeon.nicolas at wanadoo.fr
Subject: Re: m68302 boot problem - newbie!!!
 
Nicolas PIGEON wrote:
> Hi,
> 
> I'm working on a home made board made of a m68302, 512 ko RAM on CS1 
> and 1 Mo Eprom on CS0,
 > and I have two problems I'm unable to solve...
> I (try to) use RedHat 7.3 and RTEMS 4.5.0, and my work is based on the

> ods68302 BSP
 > which seems very close to mine. And here's my first problem:
everything boots 
fine until
 > the 68302 reaches the code needed to copy the .data section into RAM.
Indeed, the  > origin and destination addresses are the same, and
located in the Eprom. I 
guess it's
 > a linker problem, but the linker script seems OK (I did not modify
it), and I 
can't
 > locate the problem.
 
The BSP may be suffering bit rot. I do not have working 68302 hardware
anymore. 
Can you send me the linker command file ?
 
What version of the tools are you using ?
 
 > Does anybody have a little idea or suggestion please? This work is
important  > to me because I'm still a student and I may not be
graduated if I fail my 
internship...
 
It will be something simple, but usually hard to find.
 
> Then the second problem (the first one does not make the card hang, 
> and it's still
 > working... but not for a long time :-(): when the 68302 reaches a JSR
> instruction to jump to the "boot_phase_3" subroutine, it indeed jumps
at the  > right place, but it only reads the first byte of the next
instruction  > (which is a JSR too), and then the address bus goes to
FFFFF, and that's  > it! Here's the assembly code just before and after
the problem:
>        movel        %d0,_stack_init                       |do=0 here,
and _stack_init is at the end of .bss
>        movew     #0x3700, %sr                          |supervisor
mode, all interrupts off
>        movel       %d0, %a7                                 |set
master stack pointer
>        movel       %d0, %a6                                 |set base
pointer
>        jsr            boot_phase_3
>   The jump is OK, at the right place, where there is
>        jsr            debug_port_banner 
> This instruction is not even read until its end  (3 bytes long, only 
> the first
 > is read), and the adress bus goes to FFFFF. The 68302 doesn't even
try to go to  > an exception vector...
> I would really appreciate any help or ideas, it would save me!!
> 
 
This could be a stack problem. The fetch happens but the save to stack
cycles 
fail. A bus error when accessing the stack typically halts the CPU with
a double 
bus error.
 
Check the ELF file using "m68k-rtems-nm --numeric-sort my.elf | less"
and make 
sure all the things you understand are in the correct sections and
grouped together.
 
-- 
  Chris Johns, cjohns at cybertec.com.au
 
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20030508/756bf881/attachment-0001.html>


More information about the users mailing list