Subject: Re: Newbie looking to figure out how to do a port!
To: Peter Seebach <seebs@plethora.net>
From: Jachym Holecek <freza@dspfpga.com>
List: tech-ports
Date: 02/15/2006 18:37:27
Hello,

> I would like to run NetBSD on the TAMS 3011:
> 	http://www.tamsinc.com/3011/index.htm

Nice board.

> At this point, my big issue is not being quite sure where to start.
> Presumably, the first step would be to clone existing files.*/std.* files
> for one of the other evbppc's, and modify them appropriately.  Now, somewhere
> in here, there must be some file in arch/evbppc which handles the very
> initial setup (finding the PCI bus, knowing which chunks of address space
> have memory), and I need to replace the version for whatever the obs405 uses
> with some RedBoot code.

Look for evbppc/*/*_start.S -- walnut and explora ones are good
places to steal from. If you're looking for some PowerPC related
documentation, you can get some at:

 * www.amcc.com -- they've bought ibm4xx cores and datasheets
   are available for free download now (IIRC registration shouldn't
   be needed as it used to)

 * www.power.org -- complete PowerPC architecture docs available
   for download after free registration

Next step after you're done with ${foo}_start.S would be machdep.c,
you'll need to write an initppc()/bootstrap() alike. Can't comment
on RedBoot specific bits, though.

> But around here I find I don't really know that much about how the very very
> early parts of NetBSD's boot process happen.  It seems to me that it's
> probably reasonable to just use redboot instead of the native bootloader,
> so the kernel can be loaded into memory at whatever address I choose to link
> it at, but...

There's no canonical evbppc bootloader and the RedBoot is default
on your board, so that seems most reasonable...

	HTH,
		-- Jachym