ЗАО «ЗЭО»
Техническая поддержка пользователей => ОС Linux, U-Boot => Тема начата: Loctyr от 13 Января, 2011, 13:45:32
-
Здравствуйте
прочитал как загружать новое ядро
Для записи созданного образа ядра или КФС во Flash требуется:
1.
Скопировать образ с хоста в оперативную память целевой платы
*
По сетевому интерфейсу через протоколы TFTP или NFS
*
По последовательному порту
2.
Проверить целостность скопированного образа в оперативной памяти
3.
Выключить защиту Flash от записи
4.
Скопировать образ из оперативной памяти во Flash
5.
Проверить целостность образа во Flash
Но так и не разобрался какие именно команды нужно подавать
Нельзя ли как то раскрыть вышеуказанные пункты
Или где об этом можно прочитать
Дмитрий
-
Посмотрите содержимое скриптов и прочитайте про используемые в них команды
http://zao-zeo.ru/dokuwiki/doku.php/u-boot#скрипты
http://www.denx.de/wiki/U-Boot/Documentation
Вот пример записи КФС для плат на PXA270, от записи ядра ничем не отличается кроме адресов Flash и оперативной памяти. Адрес записанного образа ядра во Flash можете посмотреть 'imls'
Последовательность записи:
1. $ mtdparts
device nor0 <flash>, # parts = 3
#: name size offset mask_flags
0: u-boot 0x00080000 0x00000000 1
1: kernel 0x00400000 0x00080000 1
2: fs 0x01b80000 0x00480000 0
active partition: nor0,2 - (fs) 0x01b80000 @ 0x00480000
defaults:
mtdids : nor0=flash
mtdparts: mtdparts=flash:512k(u-boot)ro,4m(kernel)ro,-(fs)
2. $ tftpboot ${fileaddr} 10.42.42.33:rootfs.arm.jffs2
dm9000 i/o: 0x8000000, id: 0x90000a46
MAC: 00:50:c2:bb:4f:15
operating at 100M full duplex mode
TFTP from server 10.42.42.33; our IP address is 10.42.42.201
Filename 'rootfs.arm.jffs2'
Load address: 0xa0000000
Loading: /
done
Bytes transferred = 3932160 (3c0000 hex)
3. $ protect off all
Un-Protect Flash Bank # 1
4. $ erase 480000 +1b80000
........................ done
Erased 110 sectors
4. $ cp.b ${fileaddr} 480000 ${filesize}
Copy to Flash... done
-
setenv filesize CC0000
где CC0000 размер моего ядра в байтах в шестнадцатеричной системе
saveenv
protect off all
run kern_flash
на tftp лежит файл указанный в kern_file
Дмитрий.
-
filesize автоматическая переменная её нет смысла задавать.