реклама на сайте
подробности

 
 
> как запустить linux c ramfs?
VDV
сообщение Nov 10 2009, 09:52
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 152
Регистрация: 18-03-06
Пользователь №: 15 366



embedded linux.
имею:
работающую файловую систему.
то есть все работает, если используется ядро + файловая система + командная строка с опциями подключения.
теперь я хочу разместить эту файловую систему в памяти. цель - съкономить ресурс Nandflash.
в корне ФС делаю ссылку на /sbin/init
включаю опцию initramfs в ядре, указываю путь, пересобираю ядро.
оставляю в командной строке только
Kernel command line: mem=32M
и все перестает работать...

Please append a correct "root=" boot option; here are the available partitions:
1f00 4096 mtdblock0 (driver?)
1f01 1044480 mtdblock1 (driver?)

подскажите, плиз, что делаю не так?

Сообщение отредактировал VDV - Nov 10 2009, 09:53
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sasamy
сообщение Nov 10 2009, 11:31
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858



Цитата(VDV @ Nov 10 2009, 12:52) *
подскажите, плиз, что делаю не так?


Судя по описанию все правильно сделано. Надо смотреть _полный_ лог загрузки, "Kernel command line: mem=32M" маловато для диагноза wink.gif и потом nandflash и ram можно намного эфективней использовать при помощи unionfs, при этом rootfs держать на флэше и монтировать ее в ro-режиме, а для записи использовать tmpfs в ram, не забивая озу ненужными статическими данными.
Go to the top of the page
 
+Quote Post
VDV
сообщение Nov 10 2009, 12:21
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 152
Регистрация: 18-03-06
Пользователь №: 15 366



суть понятна, но как это сделать?
можете дать ссылку на подробное описание шагов?
или объяснить здесь?

лог запуска ядра (попутно есть еще вопрос - почему watchdog пишет ошибку?):

Linux version 2.6.31.5 (root@ubuntuvm) (gcc version 4.3.4 (GCC) ) #4 Tue No
v 10 14:55:44 MSK 2009
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Atmel AT91SAM9260-EK
Memory policy: ECC disabled, Data cache writeback
Clocks: CPU 200 MHz, master 100 MHz, main 12.000 MHz
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
Kernel command line: mem=32M
PID hash table entries: 128 (order: 7, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 32MB = 32MB total
Memory: 27124KB available (2612K code, 173K data, 2452K init, 0K highmem)
Hierarchical RCU implementation.
NR_IRQS:192
AT91: 96 gpio irqs in 3 banks
Console: colour dummy device 80x30
console [tty0] enabled
console [ttyS0] enabled
Calibrating delay loop... 99.53 BogoMIPS (lpj=497664)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
NET: Registered protocol family 1
NetWinder Floating Point Emulator V0.97 (double precision)
NTFS driver 2.1.29 [Flags: R/W].
JFFS2 version 2.2. (NAND) В© 2001-2006 Red Hat, Inc.
msgmni has been set to 52
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
io scheduler noop registered
io scheduler anticipatory registered (default)
atmel_usart.0: ttyS0 at MMIO 0xfefff200 (irq = 1) is a ATMEL_SERIAL
brd: module loaded
loop: module loaded
ssc ssc.0: Atmel SSC device at 0xc2860000 (irq 14)
macb macb: invalid hw address, using random
MACB_mii_bus: probed
eth0: Atmel MACB at 0xfffc4000 irq 21 (5a:c9:b0:ee:a7:e4)
eth0: attached PHY driver [Generic PHY] (mii_bus:phy_addr=ffffffff:01, irq=-1)
NAND device: Manufacturer ID: 0xec, Chip ID: 0xd3 (Samsung NAND 1GiB 3,3V 8-bit)

AT91 NAND: 8-bit, Software ECC
Scanning device for bad blocks
Bad eraseblock 650 at 0x000005140000
Bad eraseblock 3850 at 0x00001e140000
Creating 2 MTD partitions on "atmel_nand":
0x000000000000-0x000000400000 : "Bootstrap"
0x000000400000-0x000040000000 : "rootfs"
atmel_spi atmel_spi.0: Atmel SPI Controller at 0xfffc8000 (irq 12)
atmel_spi atmel_spi.1: Atmel SPI Controller at 0xfffcc000 (irq 13)
usbmon: debugfs is not available
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
at91_ohci at91_ohci: AT91 OHCI
at91_ohci at91_ohci: new USB bus registered, assigned bus number 1
at91_ohci at91_ohci: irq 20, io mem 0x00500000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
mice: PS/2 mouse device common for all mice
rtc-at91sam9 at91_rtt.0: rtc core: registered at91_rtt as rtc0
IRQ 1/rtc0: IRQF_DISABLED is not guaranteed on shared IRQs
rtc-at91sam9 at91_rtt.0: rtc0: SET TIME!
i2c /dev entries driver
AT91SAM9 Watchdog: sorry, watchdog is disabled
at91_wdt: probe of at91_wdt failed with error -5
TCP cubic registered
NET: Registered protocol family 17
rtc-at91sam9 at91_rtt.0: hctosys: unable to read the hardware clock
VFS: Cannot open root device "<NULL>" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00 4096 mtdblock0 (driver?)
1f01 1044480 mtdblock1 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[<c02734b8>] (unwind_backtrace+0x0/0xdc) from [<c046c8e4>] (panic+0x34/0x110)
[<c046c8e4>] (panic+0x34/0x110) from [<c0008ecc>] (mount_block_root+0x25c/0x2b4)

[<c0008ecc>] (mount_block_root+0x25c/0x2b4) from [<c00090f4>] (prepare_namespace
+0x164/0x1c8)
[<c00090f4>] (prepare_namespace+0x164/0x1c8) from [<c0008420>] (kernel_init+0xd4
/0x10c)
[<c0008420>] (kernel_init+0xd4/0x10c) from [<c026edbc>] (kernel_thread_exit+0x0/
0x8)

Сообщение отредактировал VDV - Nov 10 2009, 12:22
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- VDV   как запустить linux c ramfs?   Nov 10 2009, 09:52
- - mdmitry   Посмотрите, пожалуйста, примеры от Atmel для AT91S...   Nov 10 2009, 10:19
|- - VDV   это реализовано через initrd а я хочу через initra...   Nov 10 2009, 11:18
- - sasamy   Что-то я не вижу сообщений от initramfs - такое ощ...   Nov 10 2009, 12:44
- - VDV   CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE=...   Nov 10 2009, 13:10
- - sasamy   Цитата(VDV @ Nov 10 2009, 17:10) CONFIG_B...   Nov 10 2009, 14:02
- - VDV   да! проблема была в ссылке! спасибо большо...   Nov 10 2009, 14:37
- - sasamy   Цитата(VDV @ Nov 10 2009, 18:37) а по AUF...   Nov 10 2009, 18:26
- - sasamy   Цитата(sasamy @ Nov 10 2009, 21:26) я нав...   Nov 11 2009, 06:37
- - VDV   спасибо большое! буду пробовать! я, правда...   Nov 11 2009, 08:53
- - VDV   заработало! почему-то только ругается, что не...   Nov 11 2009, 16:47
- - sasamy   Цитата(VDV @ Nov 11 2009, 19:47) то есть ...   Nov 11 2009, 18:06
- - VDV   все-таки я что-то не пойму. запустились с ramfs. з...   Nov 12 2009, 09:17
- - VDV   все, сделал, вроде, рабатает. с нетстат - это я пр...   Nov 12 2009, 15:16
- - sasamy   Цитата(VDV @ Nov 12 2009, 19:16) остался ...   Nov 12 2009, 15:53
- - VDV   Цитата(sasamy @ Nov 12 2009, 18:53) Интер...   Nov 12 2009, 17:51
- - sasamy   Цитата(VDV @ Nov 12 2009, 21:51) сорри, и...   Nov 12 2009, 19:31


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd August 2025 - 20:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01407 секунд с 7
ELECTRONIX ©2004-2016