* New port
@ 1999-11-27 0:59 Jonathan Brauer
1999-11-29 9:35 ` Adrian Cox
0 siblings, 1 reply; 2+ messages in thread
From: Jonathan Brauer @ 1999-11-27 0:59 UTC (permalink / raw)
To: linuxppc-dev
I am looking on information on porting linux to a new ppc platform. The short
version of my efforts are to port linux to a custom 603 sbc. I have experiance
with device driver writing, but at this time limited knowledge of the boot
architecture of ppc. Currently we are using ix86 to ppc cross compiler to
generate the kernels. The SBC consits of a 603 4MB flash, 128 MBs memory, and
an FPGA which acts as the serial port/DMA engine, network controller, and
controls memory accesses. I guess what I am looking for is where to start. We
are currently using an EST Vision Probe to download code into RAM on the SBC and
starting execution. There is currently no initialization done before we enter
arch/ppc/head.S but the EST box complained about the locations of memory being
beyond the physical limits of the RAM at 0xc0000000, so in the Makefile we
mapped this to 0, but I am not sure if there is a better way around this. The
code and documentation on this are light, so any information on this process,
and the correct way to go about initializing the board before execution of
head.S would be greatly appreciated.
Essentialy from this my questions would be
1. Is there a correct mode to start running head.S in (ie. translation on/off?)
2. Where should the stack be started at?
3. Where should the code be downloaded to?
4. Is an uncompressed kernel better than a compressed one?
5. If we load the kernel at address 0, should we change KERNELBASE?
6. It appears that after kludging up to identify machine we tend to die.
7. Enabling the caching seems to throw us for a loop as well.
8. What values does the kernel assume are passed in by a boot loader and how?
Thanks in advance to anyone who might be able to help in me understanding this
code better and how to go about getting a good start on this port.
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: New port
1999-11-27 0:59 New port Jonathan Brauer
@ 1999-11-29 9:35 ` Adrian Cox
0 siblings, 0 replies; 2+ messages in thread
From: Adrian Cox @ 1999-11-29 9:35 UTC (permalink / raw)
To: Jonathan Brauer; +Cc: linuxppc-dev
Jonathan Brauer wrote:
>
> I am looking on information on porting linux to a new ppc platform. The short
> version of my efforts are to port linux to a custom 603 sbc.
> Essentialy from this my questions would be
> 1. Is there a correct mode to start running head.S in (ie. translation on/off?)
Off is better.
> 2. Where should the stack be started at?
Anywhere there's room (eg. top of memory). The stack will be moved by
the kernel once it know what memory it has.
> 3. Where should the code be downloaded to?
Ideally physical address 0 (virtual address c0000000), but it should
relocate itself.
> 4. Is an uncompressed kernel better than a compressed one?
Yes. An uncompressed kernel is a normal ELF file.
> 5. If we load the kernel at address 0, should we change KERNELBASE?
Physical 0, virtual c0000000. Don't touch KERNELBASE.
> 6. It appears that after kludging up to identify machine we tend to die.
You need to add your own machine type, by using an existing one as
example. As your board is probably weird, I'd suggest basing your port
on something else weird, like the APUS.
> 7. Enabling the caching seems to throw us for a loop as well.
Remember that you can't do memory mapped IO between the point where
caches are enabled and when Linux enables memory translation. This is
actually a very long time, and a complicated code path.
> 8. What values does the kernel assume are passed in by a boot loader and how?
Different for each machine type. Define your own, and pass them in.
- Adrian Cox, AG Electronics
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~1999-11-29 9:35 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
1999-11-27 0:59 New port Jonathan Brauer
1999-11-29 9:35 ` Adrian Cox
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).