where is my console?
I am trying to port 2.4.32 on a 386 based embedded board. I am using 4MB initrd image as root fs and Busybox 1.1.0.Everything goes fine, but I coudn't get busybox work which is supposed to run /bin/sh at the console to control my system. Below is a startup log. After I couldn't get a shell,I tried to run an app "myinits" which is statically linked and just writes something to console. I added some lines to kernel to see what's happening. According to them, elf loading of my app is succeeded, but somehow it can not write anything to console.I cut that lines from the log below. I wrote my bootloader, which setups necessary data and jumps to protected mode entry of the kernel directly.
Uncompressing Linux... Ok, booting the kernel.
Linux version 2.4.32 (root@ds300) (gcc version 3.3.3 (SuSE Linux)) #35 Wed Mar 28 15:13:39 EEST 2007
BIOS-provided physical RAM map:
BIOS-e801: 0000000000000000 - 000000000009f000 (usable)
BIOS-e801: 0000000000100000 - 0000000000a00000 (usable)
10MB LOWMEM available.
On node 0 totalpages: 2560
zone(0): 2560 pages.
zone(1): 0 pages.
zone(2): 0 pages.
DMI not present.
Kernel command line: root=/dev/ram rw init=myinits
Calibrating delay loop... 4.04 BogoMIPS
Memory: 4832k/10240k available (507k kernel code, 5020k reserved, 93k data, 40k init, 0k highmem)
Checking if this processor honours the WP bit even in supervisor mode... No.
Dentry cache hash table entries: 2048 (order: 2, 16384 bytes)
Inode cache hash table entries: 1024 (order: 1, 8192 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: 4096 (order: 2, 16384 bytes)
Checking 'hlt' instruction... disabled
Checking for popad bug... OK.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with no serial options enabled
ttyS00 at 0x03f8 (irq = 4) is a 16450
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
RAMDISK: ext2 filesystem found at block 0
RAMDISK: Loading 4096 blocks [1 disk] into ram disk... done.
Freeing initrd memory: 4096k freed
EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 40k freed
I don't understand fully what's going on.
This output that you have posted, never gives you a command prompt?
Stops the output there where the copy in your posting stops?
How did you try to launch an application without command prompt? From within a script?
Can you telnet into this board?
What connections to that board do you have? Ethernet and something else?
Do you have an NFS connection?
And the whole setup with the board has worked before and only the new kernel does make problems?
This board just have a rs-232 connection. No ethernet based connection is available. When you give an app with "init=" to the kernel via its commandline, kernel init thread creates that task and that task must be something like init which is the parent of all tasks in the system. Look at /init/main.c at the kernel source. kernel searches for a init process and runs it. If it can not find any, it panics. That log is all I have when I run my system. Kernel starts and does whatever it has to do. As a lasy step it runs my app "myinits". But this application can not write anything to the console as you see. Since whatever you see in the log belongs to kernel.
I am not trying to use a new kernel. This is my very first attempt to run Linux on this board. We are currently using another RTOS, vrtx on this board. If I succeeded in Linux, we want to change our OS.
Well, if this is your first attempt then the problem goes over my head.
I'm working with a large project and I and also my co-workers around me have no clue how the setup is done. It simply works magically ... :rolleyes:
We have an RS-232 and an Ethernet connection and even USB on some boards.
Sorry, I can only give you this link to a recent thread that may give you some further hints: