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