2003-07-14 11:28:46

by Simon Haynes

[permalink] [raw]
Subject: PPC 440 System

I have an IBM ebony development board which has a PPC 440
processor. I am trying to build a development system for it. It
currently loads a cross compiled kernel and kicks out messages via
the first serial port, no vga. It mounts the root fs via nfs and tries to
exec /sbin/init. At this point the system appears to hang.

If I remove /sbin/init from the nfs root the kernel panics as expected,
so I assume root is mounted ok. I have tried to build a minimum root
filesystem which contains /dev/console, /dev/ttyS0 and a statically
linked /sbin/init. The init just does a printf but I do not see this
message. Does anyone know it this should work ?

Initially I tried to build a root filesystem from files on a Mac Clone
running Yellow Dog Linux. I believe this has a PPC 604e processor.
Should this systems binaries/libraries run on the 440GP ?

Can I expect a statically linked executable, made on the Mac, to run
on the 440GP?


Many Thanks

Simon.
__________________________

Simon Haynes - Baydel
Phone : 44 (0) 1372 378811
Email : [email protected]
__________________________


2003-07-14 16:02:07

by Roland Dreier

[permalink] [raw]
Subject: Re: PPC 440 System

simon> If I remove /sbin/init from the nfs root the kernel panics
simon> as expected, so I assume root is mounted ok. I have tried
simon> to build a minimum root filesystem which contains
simon> /dev/console, /dev/ttyS0 and a statically linked
simon> /sbin/init. The init just does a printf but I do not see
simon> this message. Does anyone know it this should work ?

Yes, a static /sbin/init should work.

simon> Initially I tried to build a root filesystem from files on
simon> a Mac Clone running Yellow Dog Linux. I believe this has a
simon> PPC 604e processor. Should this systems binaries/libraries
simon> run on the 440GP ?

simon> Can I expect a statically linked executable, made on the
simon> Mac, to run on the 440GP?

Probably not. The 440GP has no floating point hardware, so you will
need (at least) to build a special glibc without FP instructions and
also make sure your gcc is set up not to generate FP instructions.

Your best bet is probably to download ELDK (a free Embedded Linux
Development Kit) from http://www.denx.de. Dan Kegel also has some good PPC
4xx cross development information at http://www.kegel.com.

Best,
Roland

2003-07-14 21:41:00

by Matt Mackall

[permalink] [raw]
Subject: Re: PPC 440 System

On Mon, Jul 14, 2003 at 09:16:38AM -0700, Roland Dreier wrote:
> simon> If I remove /sbin/init from the nfs root the kernel panics
> simon> as expected, so I assume root is mounted ok. I have tried
> simon> to build a minimum root filesystem which contains
> simon> /dev/console, /dev/ttyS0 and a statically linked
> simon> /sbin/init. The init just does a printf but I do not see
> simon> this message. Does anyone know it this should work ?
>
> Yes, a static /sbin/init should work.
>
> simon> Initially I tried to build a root filesystem from files on
> simon> a Mac Clone running Yellow Dog Linux. I believe this has a
> simon> PPC 604e processor. Should this systems binaries/libraries
> simon> run on the 440GP ?
>
> simon> Can I expect a statically linked executable, made on the
> simon> Mac, to run on the 440GP?
>
> Probably not. The 440GP has no floating point hardware, so you will
> need (at least) to build a special glibc without FP instructions and
> also make sure your gcc is set up not to generate FP instructions.

You can build a 440 kernel with FPU emulation and it will run native
apps just fine, otherwise they'll core dump. I bootstrapped a full
native Debian PPC system on an Ebony board a few months ago.

--
Matt Mackall : http://www.selenic.com : of or relating to the moon

2003-07-15 09:14:43

by Simon Haynes

[permalink] [raw]
Subject: Re: PPC 440 System

I don't understand. Can I not just use the math emulation in the kernel ?

Cheers

Simon.

On 14 Jul 2003 at 9:16, Roland Dreier wrote:

> simon> If I remove /sbin/init from the nfs root the kernel panics
> simon> as expected, so I assume root is mounted ok. I have tried
> simon> to build a minimum root filesystem which contains
> simon> /dev/console, /dev/ttyS0 and a statically linked
> simon> /sbin/init. The init just does a printf but I do not see
> simon> this message. Does anyone know it this should work ?
>
> Yes, a static /sbin/init should work.
>
> simon> Initially I tried to build a root filesystem from files on
> simon> a Mac Clone running Yellow Dog Linux. I believe this has a
> simon> PPC 604e processor. Should this systems binaries/libraries
> simon> run on the 440GP ?
>
> simon> Can I expect a statically linked executable, made on the
> simon> Mac, to run on the 440GP?
>
> Probably not. The 440GP has no floating point hardware, so you will
> need (at least) to build a special glibc without FP instructions and
> also make sure your gcc is set up not to generate FP instructions.
>
> Your best bet is probably to download ELDK (a free Embedded Linux
> Development Kit) from http://www.denx.de. Dan Kegel also has some good PPC
> 4xx cross development information at http://www.kegel.com.
>
> Best,
> Roland
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/

__________________________

Simon Haynes - Baydel
Phone : 44 (0) 1372 378811
Email : [email protected]
__________________________

2003-07-15 14:21:48

by Matt Porter

[permalink] [raw]
Subject: Re: PPC 440 System

This should have been on linuxppc-embedded.

On Tue, Jul 15, 2003 at 10:24:13AM +0100, [email protected] wrote:
> I don't understand. Can I not just use the math emulation in the kernel ?

Yes you can. However, most developers on PPC4xx are interested in
eventual deployment. Kernel math emulation is slow relative to
a soft float enabled userland so using something like ELDK or MVL
with PPC4xx/8xx makes a lot more sense. If you want to leverage
binaries from Yellowdog/Debian/foo that are compiled for a classic
PPC processor rather than natively then you'll need to enable math
emulation.

Regards,
--
Matt Porter
[email protected]