Subject: Porting Angel for ARM-Linux on Brutus

From: Sandeep Chatterjee <[email-masked]>
Date: Thu, 28 Jan 1999 10:08:02 -0500

Greetings!

We've been running ARM-Linux on Brutus using the Angel monitor to setup
Brutus' virtual memory, page tables, and to download Linux onto Brutus.
Now, we're migrating away from Brutus and onto our own platform which is
similar to Brutus -- SA1100, 2 banks of DRAM, and 1 bank of ROM, and
one serial port for Angel to communicate with the host computer/debugger
(but none of the other peripherals and switches). We're having an awful lot
of trouble getting our ported Angel to work properly on our platform. We've
been able to run our ported Angel on Brutus, but it just seems to hang
somewhere in the middle of the code when we run it on our platform. We've
been monitoring the GPIO 8,9, 20 lines (which are connected to the 2 green
and 1 red LEDs on Brutus) and we are getting similar but not quite identical
waveforms on those lines when we run them on our board.

Are there any tools out there that allow us to query the SA1100 and find
out what's going on (e.g., through the JTAG interface)? Any other
suggestions? Is there some other component that I need on our board to
make Angel and Linux work???

Thanks!
Sandeep.

Sandeep Chatterjee
Massachusetts Institute of Technology
Laboratory for Computer Science
545 Technology Square, NE43-212
Cambridge, MA 02139, USA
PH: +1.617.258.5413
FAX: +1.617.253.6652
Email: [email-masked]
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: Nicolas Pitre <[email-masked]>
Date: Thu, 28 Jan 1999 10:59:41 -0500 (EST)

> make Angel and Linux work???

My suggestion is: get rid of Angel.
The only thing you need is to copy the kernel from ROM to 0xc0008000
physical and jump into it.  You don't have to bother with the MMU at all
-- the kernel will enable it the right way.

Nicolas Pitre, B. ing.
[email-masked]

---

From: Russell King - ARM Linux Admin <[email-masked]>
Date: Thu, 28 Jan 1999 19:19:05 +0000 (GMT)

> -- the kernel will enable it the right way.

Erm, erm, erm, not quite.  The kernel should be located at 0x00008000 on
the EBSA285 *with the mmu off*.  The registers and parameter structure
must then be set up correctly before the kernel is called.
   _____
  |_____| ------------------------------------------------- ---+---+-
  |   |        Russell King       [email-masked]      --- ---
  | | | |  http://www.arm.linux.org.uk/~rmk/armlinux.html    /  /  |
  | +-+-+                                                     --- -+-
  /   |               THE developer of ARM Linux              |+| /|\
 /  | | |                                                     ---  |
    +-+-+ -------------------------------------------------  /\\\  |
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: Nicolas Pitre <[email-masked]>
Date: Thu, 28 Jan 1999 18:45:57 -0500 (EST)

> must then be set up correctly before the kernel is called.

But we aren't talking about EBSA285 here...  :-)

Nicolas Pitre, B. ing.
[email-masked]