Hi,everyone i am trying to make a Ramdisk to run on dm6446evm (Ramdisk will been used to products).
I cut out a filesys from mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/target and can boot using
/*************/
bootcmd=tftp;bootm
serverip=192.168.2.101
bootfile=uImage
setenv bootargs video=davincifb:vid0=800x480x16,2500K:vid1=800x480x16,2500K:osd0=800x480x16,2500K:osd1=800x480x16,2500K davinci_enc_mngr.ch0_output=LCD davinci_enc_mngr.ch0_mode=800x480 console=ttyS0,115200n8 noinitrd rw ip=dhcp root=/dev/nfs nfsroot=192.168.2.101:/home/onenet/thompson/M2/XmlParser_v2.0/Client/filesys_Games ,nolock mem=90M
/*************/
but it can't boot after i create the Ramdisk, the detail as following:
1. Create a ramdisk.image
dd if=/dev/zero of=ramdisk.image bs=1M count=2
echo y | mke2fs -i 2000 -m 0 ramdisk.image
mkdir mnt
mount -o loop ramdisk.image mnt
2. copy all files to ramdisk.image and compress
sudo cp -rf /home/onenet/thompson/M2/XmlParser_v2.0/Client/filesys_Games mnt
sudo umount mnt
gzip ramdisk.image
ls -l
-rw-r--r-- 1 onenet onenet 43817127 2010-07-21 12:56 ramdisk.image.gz
3. I had selected the following in linux kernel
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=1
CONFIG_BLK_DEV_RAM_SIZE=131072 #128M
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
4. download the uImage and ramdisk.image.gz to nand flash
With the DM6446 board powered off set the J4 jumper to NAND and set the S3 red
switch to 0000111110 where 1=on and 0=off, then power on the board
tftp 0x80700000 uImage
nand erase 0x200000 0x240000
nand write 0x80700000 0x200000 0x240000
tftp 0x82000000 ramdisk.image.gz
nand erase 0x800000 0x2C00000
nand write 0x82000000 0x800000 0x2C00000
then setup bootargs
setenv bootcmd 'nand read 0x82000000 0x800000 0x2a00000; nboot 0x80700000 0 0x200000; bootm'
setenv bootargs mem=128M console=ttyS0,115200n8 ip=dhcp root=/dev/ram0 rw rootfstype=ramfs init=linuxrc initrd=0x82000000,128M
the messages:
bootcmd=nand read 0x82000000 0x800000 0x2c00000; nboot 0x80700000 0 0x200000; bootm
stdin=serial
stdout=serial
stderr=serial
ethaddr=00:0e:99:02:5e:64
videostd=ntsc
bootargs=mem=128M console=ttyS0,115200n8 ip=dhcp root=/dev/ram0 rw rootfstype=ramfs init=linuxrc initrd=0x82000000,128M
Environment size: 497/16380 bytes
DaVinci EVM # boot
NAND read: device 0 offset 0x800000, size 0x2c00000
46137344 bytes read: OK
Loading from NAND 64MiB 1,8V 8-bit, offset 0x200000
Image Name: Linux-2.6.18_pro500-davinci_evm-
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2160392 Bytes = 2.1 MB
Load Address: 80008000
Entry Point: 80008000
## Booting image at 80700000 ...
Image Name: Linux-2.6.18_pro500-davinci_evm-
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2160392 Bytes = 2.1 MB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux.............................................................................................................................................. done, booting the kernel.
Linux version 2.6.18_pro500-davinci_evm-arm_v5t_le (onenet@onenet-server) (gcc version 4.2.0 (MontaVista 4.2.0-16.0.32.0801914 2008-08-30)) #1 PREEMPT Mon Jul 19 14:45:40 PDT 2010
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
Machine: DaVinci EVM
Memory policy: ECC disabled, Data cache writeback
initrd (0x82000000 - 0x8a000000) extends beyond physical memory - disabling initrd
DaVinci DM6443 variant 0x0
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets
Built 1 zonelists. Total pages: 32768
Kernel command line: mem=128M console=ttyS0,115200n8 ip=dhcp root=/dev/ram0 rw rootfstype=ramfs init=linuxrc initrd=0x82000000,128M
PID hash table entries: 1024 (order: 10, 4096 bytes)
Clock event device timer0_0 configured with caps set: 03
Console: colour dummy device 80x30
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 125184KB available (3725K code, 719K data, 176K init)
Security Framework v1.0.0 initialized
Capability LSM initialized
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
DaVinci: 71 gpio irqs
WARNING: both IDE and NOR flash are enabled, but share pins.
Disable IDE for NOR support.
WARNING: both NAND and NOR flash are enabled, but share pins.
Disable NAND for NOR support.
MUX: initialized LOEEN
MUX: initialized LFLDEN
VPBE Encoder Initialized
SCSI subsystem initialized
usbcore: registered new driver usbfs
usbcore: registered new driver hub
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 4096 bind 2048)
TCP reno registered
davinci_spi_board_init: NO spi support
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
squashfs: version 3.1 (2006/08/19) Phillip Lougher
JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
yaffs Jul 19 2010 14:42:26 Installing.
fuse init (API version 7.7)
SGI XFS with no debug enabled
Initializing Cryptographic API
io scheduler noop registered
io scheduler anticipatory registered (default)
LTT : ltt-facilities init
LTT : ltt-facility-core init in kernel
davincifb davincifb: dm_osd0_fb: 800x480x16@0,0 with framebuffer size 750KB
davincifb davincifb: dm_vid0_fb: 0x0x16@0,0 with framebuffer size 1125KB
davincifb davincifb: dm_osd1_fb: 800x480x4@0,0 with framebuffer size 750KB
davincifb davincifb: dm_vid1_fb: 0x0x16@0,0 with framebuffer size 1125KB
davincifb davincifb.0: dm_osd0_fb: Failed to obtain ownership of OSD window.
DAVINCI-WDT: DaVinci Watchdog Timer: heartbeat 60 sec
MUX: initialized PWM0
MUX: initialized PWM1
MUX: initialized PWM2
Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO map 0x1c20000 mem 0xfec20000 (irq = 40) is a 16550A
RAMDISK driver initialized: 1 RAM disks of 131072K size 1024 blocksize
netconsole: not configured, aborting
TI DaVinci EMAC: MAC address is 00:0e:99:02:5e:64
TI DaVinci EMAC Linux version updated 4.0
TI DaVinci EMAC: Installed 1 instances.
Linux video capture interface: v2.00
vpfe vpfe.1: DaVinci v4l2 capture driver V1.0 loaded
Davici AEW Driver cannot be loaded
VIDEO PORT is not enabledData Flow path from CCDC is disabled
Davinci AF driver cannot be loaded
VIDEO PORT is not enabled
CCDC needs to be configured<6>i2c /dev entries driver
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
MUX: initialized HDIREN
MUX: initialized ATAEN
ide0: MMIO-DMA , BIOS settings: hda:pio, hdb:pio
hda: TOSHIBA MK4032GAX, ATA DISK drive
ide0 at 0xfec661f0-0xfec661f7,0xfec663f6 on irq 22
hda: max request size: 512KiB
hda: 78140160 sectors (40007 MB), CHS=16383/255/63, UDMA(66)
hda: cache flushes supported
hda: hda1 hda2
nand_davinci nand_davinci.0: Using 1-bit hardware ECC
No NAND device found!!!
nand_davinci nand_davinci.0: no nand device detected
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.6:USB HID core driver
musb_hdrc: version 6.0, cppi-dma, host, debug=0
musb_hdrc musb_hdrc: No DMA interrupt line
musb_hdrc: USB Host mode controller at c8860000 using DMA, IRQ 12
musb_hdrc musb_hdrc: MUSB HDRC host driver
musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
mice: PS/2 mouse device common for all mice
rtc_davinci_evm rtc_davinci_evm: rtc intf: proc
rtc_davinci_evm rtc_davinci_evm: rtc intf: dev (254:0)
rtc_davinci_evm rtc_davinci_evm: rtc core: registered rtc_davinci_evm as rtc0
rtc0: hours 12-23 are misreported as duplicate hours 00-11
davinci-mmc davinci-mmc.0: Supporting 4-bit mode
davinci-mmc davinci-mmc.0: Using DMA mode
Advanced Linux Sound Architecture Driver Version 1.0.12rc1 (Thu Jun 22 13:55:50 2006 UTC).
ASoC version 0.13.1
MUX: initialized MCBSP
AIC3X Audio Codec 0.1
asoc: aic3x <-> davinci-i2s mapping ok
ALSA device list:
#0: DaVinci EVM (aic3x)
oprofile: using timer interrupt.
IPv4 over IPv4 tunneling driver
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Time: timer0_1 clocksource has been installed.
Clock event device timer0_0 configured with caps set: 08
Switched to high resolution mode on CPU 0
rtc_davinci_evm rtc_davinci_evm: setting the system clock to 2004-02-02 05:01:29 (1075698089)
Sending DHCP requests .., OK
IP-Config: Got DHCP answer from 0.0.0.0, my address is 192.168.2.106
IP-Config: Complete:
device=eth0, addr=192.168.2.106, mask=255.255.255.0, gw=192.168.2.1,
host=192.168.2.106, domain=thompsonaerospace, nis-domain=(none),
bootserver=0.0.0.0, rootserver=0.0.0.0, rootpath=
VFS: Mounted root (ramfs filesystem).
Freeing init memory: 176K
Warning: unable to open an initial console.
Failed to execute linuxrc. Attempting defaults...
Kernel panic - not syncing: No init found. Try passing init= option to kernel.
so what's the problem,
Warning: unable to open an initial console.
but i set the bootargs => console=ttyS0,115200n8
and there are devfs
ls -l console ttyS0 null
crwxrwxrwx 1 root root 5, 1 2010-07-21 13:24 console
crwxrwxrwx 1 root root 1, 3 2010-07-21 12:42 null
crwxrwxrwx 1 root root 4, 64 2010-07-21 12:42 ttyS0
So help me. I appreacite you.