Successful boot of recompiled kernel.

Patrick McNamara <wpmcnamara-/[email protected]>
Newsgroups gmane.linux.uclinux.actiontec
Message-ID <[email protected]>
The missing piece has been floating around on the list archives since 
Greg posted in on 9/11/2003.  Last night I tried to boot a kernel 
compiled from the Actiontec source release.  The kernel booted, but 
panicked because it couldn't mount the root file system (/dev/rom0).  I 
noticed that in the boot logs that the initialization of the blockmem 
driver outputs the address and size of the file system image it is 
trying to use.  I was running with the assumption that that address was 
supposed to be 0x0580000 since that was what was in the config files for 
the kernel.  That address had been questionable in my mind since it 
didn't allow enough space for the stock file system image.  Seeing the 
initialization of the blkmem driver return a file system size of -1 kind 
of clued me in.  I went back and checked Greg's posting of the boot 
message he captured, and double checked it with my boot messages with a 
stock kernel.  Here is are the key lines: 

Blkmem copyright 1998 Kenneth Albanowski
Blkmem 1 disk images:
0: 4B0000-535BFF [VIRTUAL 4B0000-535BFF] (RO)

With that piece of info in hand, I went and recompiled the kernel 
specifying 0x04B0000 and the ROM image address.  This morning I re 
flashed it with the new kernel and 'lo and behold, it booted.  Below is 
the contents of /proc/version.  Following that is the console output 
from boot up.  The wiki has been updated with the proper addresses.  For 
those that are interested, here is the config file I used and the kernel 
image.  Please note that the kernel has some issues.  Mainly I didn't 
compile in ext2 support so it can't mount the RAM file systems.

http://www.supersecret.org/actiontec/config
http://www.supersecret.org/actiontec/config.md5
http://www.supersecret.org/actiontec/linuz
http://www.supersecret.org/actiontec/linuz.md5

---------------------------------------------------

uClinux login: root
Password:
# cat /proc/version
Linux version 2.4.6 (mcnamara-w7A1mRLb/[email protected]) (gcc version 
2.95.3 20010315 (release)(ColdFire patches - 20010318 from 
http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from 
http://www.snapgear.com/)) #2 Sun Mar 7 11:53:38 CST 2004
#

--------------------------------------------------


Conexant Linux loader v0.9
.................................ESC Key pressed, begin flash bootup.
Uncompressing Linux...done.
Now booting the kernel



Linux version 2.4.6 (mcnamara-w7A1mRLb/[email protected]) (gcc version 
2.95.3 200103154
Processor: ARM/CNXT Arm940sid(wb) revision 2
Architecture: CNXT CX821XX
On node 0 totalpages: 1920
zone(0): 0 pages.
zone(1): 1920 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/rom0
Calibrating delay loop... 83.76 BogoMIPS
Memory: 7680K = 0K total
Memory: 5492KB available (1007K code, 993K data, 44K init)
kmem_create: Forcing size word alignment - names_cache
Dentry-cache hash table entries: 1024 (order: 1, 8192 bytes)
Inode-cache hash table entries: 512 (order: 0, 4096 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: 2048 (order: 1, 8192 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Conexant General Purpose timers initialized
Conexant hardware timer 2 enabled
Conexant Flash Driver version: 001
Starting kswapd v1.8
ttyS0 at 0x002c0000 (irq = 24) is a 16c550 UART
info = 009ed670
block: queued sectors max/low 3554kB/1184kB, 64 slots per queue
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
PHY #2 = 15f441
emac_probe: eth0 found.
Tx DMA Ring f824a0
Rx DMA Ring fa0b10
EMAC Network Driver Cnxt 2003/07/16 irq=19 00:30:cd:00:02:3d:
PHY #2 = 15f441
emac_probe: eth1 found.
Tx DMA Ring fc00a0
Rx DMA Ring fde710
EMAC Network Driver Cnxt 2003/07/16 irq=20 00:30:cd:00:02:2e:
DEBUG: romdisk length at 0x004b0008: raw: 0x405b0800, ntohl() = 
0x00085b40Blkmem coe
Blkmem copyright 1998 Kenneth Albanowski
Blkmem 1 disk images:
0: 4B0000-535BFF [VIRTUAL 4B0000-535BFF] (RO)
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 512 bind 512)
IPv4 over IPv4 tunneling driver
ip_conntrack (60 buckets, 480 max)
ip_tables: (c)2000 Netfilter core team
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NET4: Ethernet Bridge 008 for NET4.0
VFS: Mounted root (romfs filesystem) readonly.
Expanding the ramdisk ...
Mounting ext2 file system ...
mount: /dev/ram0 has wrong device number or fs type ext2 not supported
Mounting proc file system ...
Building the read write directories
mkdir: Cannot create directory `/var/tmp': Read-only file system
mkdir: Cannot create directory `/var/tftpboot': Read-only file system
eth1: (CX821xx EMAC) started!
eth0: (CX821xx EMAC) started!
ERROR: can not open "/dev/ttyS2"
can't find service
/sbin/pppd: not found
NFS: NFSv3 not supported.
nfs warning: mount version older than kernel
Illegal instruction
Illegal instruction
Illegal instruction
Jan  1 00:00:08 1970 login[36]: root login  on `ttyp0'

__
ActionHack Mailing List - ActionHack-W7/[email protected]
http://www.express.org/mailman/listinfo/actionhack
http://www.embeddedlinuxinterfacing.com/wiki.php/ActiontecDualModem
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.