From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: <9c855ecc7b4384e9a3ecb9ca2416ecac@plan9.bell-labs.com> References: <9c855ecc7b4384e9a3ecb9ca2416ecac@plan9.bell-labs.com> Date: Tue, 17 Nov 2009 13:43:34 -0800 Message-ID: <3e1162e60911171343oec41e6s37ea6a355cb0f25c@mail.gmail.com> From: David Leimbach To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: multipart/alternative; boundary=000e0cd39cb6a2e6c2047898040d Subject: Re: [9fans] sheevaplug port available Topicbox-Message-UUID: 9d189d1a-ead5-11e9-9d60-3106f5b1d025 --000e0cd39cb6a2e6c2047898040d Content-Type: text/plain; charset=ISO-8859-1 Awesome! Thanks Geoff! On Tue, Nov 17, 2009 at 1:37 PM, wrote: > If you run replica/pull (or have done so recently), you'll find a new > kernel subtree, /sys/src/9/kw, which contains a basic port of Plan 9 > to the Sheevaplug, derived from the port of native Inferno. 9plug is > a diskless cpu server supporting a serial console and gigabit > ethernet. booting(8) and /sys/doc/port.* have been updated to match. > `kw' stands for Kirkwood, the Marvell system-on-a-chip that the > Sheevaplug is based upon. There are more Kirkwood systems on the way. > > What's not yet in this port: access to flash memory, USB devices, > memory cards and possibly more. The documentation for Kirkwood flash > and USB is some combination of vague, obscure, incomplete, > unavailable, contradictory and tediously voluminous. If you configure > in the USB drivers, you'll find that there appears to be an > unpopulated root hub, but that may be a figment of the usb driver's > imagination. The EHCI registers do seem to be present and we probably > just need to tweak some undocumented register to make it all go. > > If you only been building 386 binaries to date, you'll want to edit > /sys/src/mkfile.proto to at least include the arm architecture: > > OS=58 > CPUS=arm 386 > > and make sure all your /386/bin compiler binaries are up to date: > > cd /sys/src/cmd > for(i in ?c) > if(! ~ $i cc rc) @{ > cd $i > mk clean > objtype=$cputype mk install > mk clean > } > > and populate your /arm tree: > > cd /sys/src > objtype=arm mk install > > You should then be able to build a sheeva kernel: > > cd /sys/src/9/kw > mk 'CONF=plug' install # `mk install' will work too > > This should create /arm/9plug; see booting(8) to get started. > > Enjoy! > > --000e0cd39cb6a2e6c2047898040d Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Awesome! =A0Thanks Geoff!

On Tue, Nov 17,= 2009 at 1:37 PM, <geoff@plan9.bell-labs.com> wrote:
If you run replica/pull (or have done so recently), you'll find a new kernel subtree, /sys/src/9/kw, which contains a basic port of Plan 9
to the Sheevaplug, derived from the port of native Inferno. =A09plug is
a diskless cpu server supporting a serial console and gigabit
ethernet. =A0booting(8) and /sys/doc/port.* have been updated to match.
`kw' stands for Kirkwood, the Marvell system-on-a-chip that the
Sheevaplug is based upon. =A0There are more Kirkwood systems on the way.
What's not yet in this port: access to flash memory, USB devices,
memory cards and possibly more. =A0The documentation for Kirkwood flash
and USB is some combination of vague, obscure, incomplete,
unavailable, contradictory and tediously voluminous. =A0If you configure in the USB drivers, you'll find that there appears to be an
unpopulated root hub, but that may be a figment of the usb driver's
imagination. =A0The EHCI registers do seem to be present and we probably just need to tweak some undocumented register to make it all go.

If you only been building 386 binaries to date, you'll want to edit
/sys/src/mkfile.proto to at least include the arm architecture:

=A0 =A0 =A0 =A0OS=3D58
=A0 =A0 =A0 =A0CPUS=3Darm 386

and make sure all your /386/bin compiler binaries are up to date:

=A0 =A0 =A0 =A0cd /sys/src/cmd
=A0 =A0 =A0 =A0for(i in ?c)
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0if(! ~ $i cc rc) @{
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0cd $i
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0mk clean
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0objtype=3D$cputype mk insta= ll
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0mk clean
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0}

and populate your /arm tree:

=A0 =A0 =A0 =A0cd /sys/src
=A0 =A0 =A0 =A0objtype=3Darm mk install

You should then be able to build a sheeva kernel:

=A0 =A0 =A0 =A0cd /sys/src/9/kw
=A0 =A0 =A0 =A0mk 'CONF=3Dplug' install =A0# `mk install' will= work too

This should create /arm/9plug; see booting(8) to get started.

Enjoy!


--000e0cd39cb6a2e6c2047898040d--