[Buildroot] ### ARM11 Buildroot for MX31
Steve Spano
steve at fl-eng.com
Sat Aug 23 18:54:57 UTC 2008
Hello
I fixed my issue with Buildroot and here was my process for getting
Buildroot to play with the MX31 board that I have
1) I started with the ltlib configuration from freescale and built a
filesystem and kernel
2) I copied the kernel sources generated from #1 into its own directory so I
can have a dedicated kernel source to work with. I then applied some changes
in the kernel to work with my board. The changes I applied were to
disable/comnment-out most of the MX31ADS related power management/etc. The
board that I have is sort of like the LiteKit 31 but has some of the MX31
ADS features on it. This is kernel 2.6.22 with a lot of freescale patches
that are not in the mainline kernel.
3) I then downloaded buildroot again today and did a make menuconfig
4) At #3, I changed the configuration to build a JFFS2 filesystem and target
ARM11. I also change the MTD-UTILITIES to not build an MX31/ARM11 version of
mkfs.jffs2. This kept giving me issues before looking for lzo1.h. I don't
have any plans to build a filesystem image on the MX31, so I just need the
mkfs.jffs2 on the my host PC. One thing I think here that may have been
hanging me up before, was that this time - I set the option to "make all
files owned by root". I didn't do this before and it appeared that this was
the standard option set for the ext2 filesystem.
5) I kicked off a build of buildroot and let it generate the JFFS2 image.
6) After it was done, I went into the target/generic folder and changed the
device_table.txt to add the following line (very important!)
/dev/ttymxc c 660 0 0 207 16 0 1 4
This will build a /dev entry for the MX31 internal uarts which are called
through the Freescale driver as ttymxc0 (1,2,3). The above line will give me
a dev entry for major 207 minor 16 for ttymxc0
7) Then I went into the project build folder and into my root/etc MX31
filesystem. In the etc folder I changed the following files
In inittab, add this line
ttymxc0::respawn:/sbin/getty -L ttymxc0 115200 vt100
This will put a login prompt up on my UART#1 (or #0 - the first MX31
internal uart)
In securtty, add these lines
ttymcx0
ttymcx1
ttymcx2
ttymcx3
So all four internal MX31 uarts (I only use one right now) can allow a root
login
I flashed the JFFS2 filesystem into my NOR flash (the filesystem I built was
1.2Meg) and boot it up. I got a login prompt and used the standard
username=root
It took about 20-30 seconds after I hit enter and then I got my # prompt and
I can access my linux now on my MX31.
I am also using U-boot to boot linux which has been taken right for the
u-boot git tree and built for the LiteKit31. I hacked u-boot a bit to
account for my NOR flash (which is the same flash that's on the MX31ADS) a
few other minor changes, such as working with the LAN9210 network port that
I have.
In a month or so, I would like to post a reference build for the MX31
platform on my company's website and include the u-boot, kernel, and
buildroot system - for others who may want to do this.
However, is there anyway a patch-set of some kind can be generated so that
buildroot has a menu-option specifically for the MX31 and automatically
implements the above (minor) changes.
On to other issues now!
Thanks
Steve Spano, President
Finger Lakes Engineering
-----Original Message-----
From: buildroot-bounces at uclibc.org [mailto:buildroot-bounces at uclibc.org] On
Behalf Of steve at fl-eng.com
Sent: Saturday, August 23, 2008 9:28 AM
To: Peter Korsgaard
Cc: buildroot at uclibc.org
Subject: Re: [Buildroot] ### ARM11 Buildroot for MX31
HI
Thanks for the reply. I will try the securetty file and add ttymxc0. The
serial
port drivers for the MX31 use ttymxc0 as their device ID. I was also
thinking
of changing the driver to use ttyS so it came up as a standard serial port
driver because probably everything else may be thinking ttyS and not ttymxc.
I had to add ttymxc and its major/minor number to the devices.txt file in
the
target/generic folder.
I'll try some more tests and post results later today.
Thanks for the reply!
Steve
>
> From: Peter Korsgaard <jacmet at uclibc.org>
> Date: 2008/08/23 Sat AM 02:44:44 EST
> To: <steve at fl-eng.com>
> CC: <buildroot at uclibc.org>
> Subject: Re: [Buildroot] ### ARM11 Buildroot for MX31
>
> >>>>> <steve at fl-eng.com> writes:
>
> Hi,
>
> > Hello I have downloaded the buildroot package and have built it for
> > the ARM11 MX31 processor from Freescale. It is running with kernel
> > 2.6.22
>
> > Everything compiles and loads up, I can get a login prompt for
> > username/password from the filesystem produced by buildroot.
>
> > However, I cannot seem to login. I assumed that the login would be
> > "root" and no password. I looked into the /etc/passwd and
> > /etc/shadow files which seemed to confirm that perhaps
> > root(nopassword) and maybe user(user) was also a login.
>
> Yes, if you use the generic target skeleton (E.G. don't specify
> anything special) you will have a root account without a password (but
> no "user" account).
>
> From below it seems like you try to login over the serial port using a
> ttymxc0 device. If so, then the reason why you cannot login is that
> you don't have ttymxc0 listed in /etc/securetty.
>
> The file comes from target/generic/target_skeleton/etc, but you can
> simply edit it under project_build_arm/uclibc/root/etc and rerun make
> to regenerate your filesystem image.
>
> I don't see any mention of /dev/ttymxcN in Documentation/devices.txt
> in the kernel sources? I take it that the serial driver isn't in the
> mainline kernel?
>
> > THe other thing I tried to do was pass init=/dev/sh and
> > init=/dev/bash to try to get a direct shell prompt. I don't think
> > it was connecting to the MX31's serial port because I never saw any
> > outputs after the filesystem was mounted. Is there a recommended
> > way to force /dev/sh to appear on a ttyS0 (or actually ttymxc0 for
> > the MX31)
>
> I take it you mean /bin/sh not /dev/sh?
>
> Strange. And you do get output from init and login with the same
> filesystem if you boot without init=/bin/sh?
>
> --
> Bye, Peter Korsgaard
>
_______________________________________________
buildroot mailing list
buildroot at uclibc.org
http://busybox.net/mailman/listinfo/buildroot
--
Internal Virus Database is out-of-date.
Checked by AVG.
Version: 7.5.524 / Virus Database: 270.6.0/1602 - Release Date: 8/9/2008
1:22 PM
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20080823/e9992f47/attachment.html>
More information about the buildroot
mailing list