busybox init() hangs on embedded Linux on custom FPGA board
Peter N. Andreasen
peterarbejde at gmail.com
Tue Oct 10 05:05:49 PDT 2006
On 10/6/06, Yan Seiner <yan at seiner.com> wrote:
>
> Peter N. Andreasen wrote:
> > Hello list, this may be a newvbie question, bear with me:
> > I have built a 2.4 Linux kernel for a PowerPC405 which is part of a
> > custom Xilinx FPGA board. It is based on the ML300 board. A major
> > difference which I think is giving me the problems is that it does not
> > have a normal UART and thus a ttyS0 but a Xuartlite which becomes
> > /dev/ttl0. It does not have a display.
> > When I configure the kernel I set boot parameter console=ttl0 and I
> > get all the messages to the serial console as expected. The system
> > uses a ramdisk which has the busybox binary statically linked, and all
> > the device files I could think of could be necessary. /dev/ttl0 is
> > created as major 207, minor 187 char device.
> > But as soon as the kernel launches my busybox I get problems. I get a
> > start up message showing the version of Busybox (I use the latest
> > stable version) and a "Bummer can not write to ttyS5" and then it
> > stops. By inserting message() calls in init() I have traced the
> > problem to parse_inittab where it opens my inittab file ok but when it
> > tries to read the first line from the file it traps. The console still
> > echoes back what I type but nothing further is happening.
> > Hope someone can give me an idea.
>
> Make sure you have a static /dev/ttyL0 entry, and add to the kernel line
> CONSOLE=/dev/ttyl0 - this is in addition to the console=ttyl0,baudrate
> entry....
>
> --Yan
Thank you for the answer.
This unfortunately did not solve my problem. I attach the log as it shows on
my terminal. I inserted a few message() calls to see where it goes wrong.
Hope someone has an idea?
cheers
Peter
loaded at: 00400000 0057A1E0
board data at: 00577138 00577150
relocated to: 0040530C 00405324
zimage at: 00405819 0046FED3
initrd at: 00470000 00576F5B
avail ram: 0057B000 02000000
Linux/PPC load: root=/dev/ram rw console=ttl0,19200 CONSOLE=/dev/ttyl0
Uncompressing Linux...done.
Now booting the kernel
id mach(): done
Linux version 2.4.26 (pna at glazedevel) (gcc version 3.4.1) #137 Tue Oct 10
13:23:53 CEST 2006
setup_arch: enter
setup_arch: bootmem
Xilinx Virtex-II Pro port (C) 2002 MontaVista Software, Inc. (
source at mvista.com)
arch: exit
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/ram rw console=ttl0,19200 CONSOLE=/dev/ttyl0
Xilinx INTC #0 at 0x81200000 mapped to 0xFDFFF000
Calibrating delay loop... 287.53 BogoMIPS
Memory: 30252k available (756k kernel code, 272k data, 44k init, 0k highmem)
Dentry cache hash table entries: 4096 (order: 3, 32768 bytes)
Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
POSIX conformance testing by UNIFIX
(start) init/main.c: init
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
JFFS version 1.0, (C) 1999, 2000 Axis Communications AB
JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications
AB.
Generic RTC Driver v1.07
XUartlite serial major 204 minor 187 name serial
XUartlite callout major 205 minor 187 name serial
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)
physmap flash device: 400000 at ff800000
Amd/Fujitsu Extended Query Table v1.1 at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling fast programming due to code brokenness.
mtd: Giving out device 0 to Physically mapped flash
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 1051k freed
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 44k init
kernel: /init/main.c: run_init_process trying to execve /sbin/init
/home/pna/Hardi/src/busybox-1.2.1/init/init.c 338 console_init(): console /dev/ttyl0
/home/pna/Hardi/src/busybox-1.2.1/init/init.c 338 console_init(): console /dev/ttyl0
init console open() failed now console init console open() failed now console init console open() succeeded now console init console open() succeeded now console console=/dev/ttl0
init started: BusyBox v1.2.1 (2006.09.26-12:02+0000) multi-call binary
init console is: /dev/ttl0
init/init.c: init_main: before call to parse_inittab
init/init.c: parse_inittab: inittab file found /etc/inittab
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://busybox.net/lists/busybox/attachments/20061010/e1397933/attachment.html
More information about the busybox
mailing list