LINUX.ORG.RU

sheevaplug и debian

 ,


0

1

Доброго всем времени суток

Есть sheevaplug с uboot-ом внутри, надо в него установить дебиан. Если использовать это руководство, то всё останавливается на команде

run bootcmd
uboot успешно грузит ядро и initrd, даже распаковывает, если надо, и виснет на следующей фразе
Uncompressing Linux... done, booting the kernel
. Я сначала думал что там всё же что-то делается внутрях, просто мне не показывается и оставил его в таком состоянии на ночь, но на утро воз с места так и не сдвинулся.

Так же при распаковке архива base.tar.bz2 возникают какие-то ошибки, после чего архив вроде распакован, но заканчивается всё фразой типа: «Распаковка завершилась с ошибками»
Помогите, плз.



Последнее исправление: seijuurou (всего исправлений: 1)

У вас тут как-то непонятно написано:

всё останавливается на команде

то есть реакции на эту команду нет?

Хотя дальше пишите:

uboot успешно грузит ядро и initrd...

Определитесь, что же все таки происходит.

yax123 ★★★★★
()
Ответ на: комментарий от yax123

скажем так - uboot считывает образ ядра с флешки или по tftp вместе с initrd, но когда даёшь команду загрузки считанного ядра, т.е. run bootcmd, ну или bootm c нужными адресами, он пишет версию ядра, что распаковал нормально и щас пойдёт его загрузка, ну т.е. вот это

Uncompressing Linux... done, booting the kernel


а потом всё висит и на клавиатуру не реагирует

seijuurou
() автор топика
Ответ на: комментарий от seijuurou

а потом всё висит и на клавиатуру не реагирует

Ну значит либо архитектура не та, либо BE/LE, либо mkimage не той системы.
u-boot родной?

yax123 ★★★★★
()
Uncompressing Linux... done, booting the kernel

Так это уже линукс написал, так что с загрузчиком всё хорошо. Проверь куда у тебя ядерная консоль направлена. Вероятно, просто не туда и ты не видишь сообщений о ненайденном корне.

const86 ★★★★★
()
Ответ на: комментарий от const86

где это написано? вот переменные окружения uboot

baudrate=115200                                                                                                                                                  
loads_echo=0                                                                                                                                                     
ipaddr=10.4.50.165                                                                                                                                               
serverip=10.4.50.5                                                                                                                                               
rootpath=/mnt/ARM_FS/                                                                                                                                            
netmask=255.255.255.0                                                                                                                                            
e=ttyS0,115200 mtdparts=nand_mtd:0xc0000@0(uboot)ro,0x1ff00000@0x100000(root)                                                                                    
CASset=min                                                                                                                                                       
MALLOC_len=1                                                                                                                                                     
ethprime=egiga0                                                                                                                                                  
bootargs_end=:::DB88FXX81:eth0:none                                                                                                                              
image_name=uImage                                                                                                                                                
standalone=fsload 0x2000000 $(image_name);setenv bootargs $(console) root=/dev/mtdblock0 rw ip=$(ipaddr):$(serverip)$(bootargs_end) $(mvPhoneConfig); bootm 0x20;
ethmtu=1500                                                                                                                                                      
mvPhoneConfig=mv_phone_config=dev0:fxs,dev1:fxs                                                                                                                  
mvNetConfig=mv_net_config=(00:11:88:0f:62:81,0:1:2:3),mtu=1500                                                                                                   
usb0Mode=host                                                                                                                                                    
yuk_ethaddr=00:00:00:EE:51:81                                                                                                                                    
nandEcc=1bit                                                                                                                                                     
netretry=no                                                                                                                                                      
rcvrip=169.254.100.100                                                                                                                                           
loadaddr=0x02000000                                                                                                                                              
autoload=no                                                                                                                                                      
ethact=egiga0                                                                                                                                                    
bootargs_root=ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs                                                                                                        
mtdpartitions=mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs)                                                                          
ethaddr=F0:AD:4E:01:2c:19                                                                                                                                        
real_bootcmd=setenv bootargs $(bootargs_console) $(mtdpartitions) $(bootargs_root); nand read.e 0x00800000 0x00100000 0x00400000; bootm 0x00800000               
bootargs_console=console=ttyS0,115200                                                                                                                            
recover1=setenv mainlineLinux yes; setenv arcNumber 2097; setenv 

seijuurou
() автор топика
Ответ на: комментарий от const86

ещё переменные

bootcmd run recover2; saveenv; reset                                                            
recover2=run recover3; setenv bootcmd $(real_bootcmd); saveenv; setenv bootargs $(bootargs_console) $(mtdpartitions) root=/dev/ram0 rw ramdisk=0x01100000,8M ins0
recover3=run recover4; nand erase clean 0x00100000 0x00400000; nand write.e 0x00800000 0x00100000 0x00400000                                                     
recover4=usb start; fatload usb 0 0x00800000 uImage; fatload usb 0 0x01100000 initrd                                                                             
arcNumber=2097                                                                                                                                                   
filesize=32D62A                                                                                                                                                  
bootcmd=setenv bootargs $(bootargs_console) $(mtdpartitions) $(bootargs_root); nand read.e 0x00800000 0x00100000 0x00400000; bootm 0x00800000                    
console=a0000                                                                                                                                                    
115200 mtdparts=nand_mtd:0xc0000@0(uboot)ro,0x1ff00000@0x100000(root)                                                                                            
stdin=serial                                                                                                                                                     
stdout=serial                                                                                                                                                    
stderr=serial                                                                                                                                                    
nandEnvBase=rts=nand_mtd:0xc0000@0(uboot)ro,0x1ff00000@0x100000(root)                                                                                            
mainlineLinux=yes                                                                                                                                                
enaMonExt=no                                                                                                                                                     
enaCpuStream=no                                                                                                                                                  
enaWrAllo=no                                                                                                                                                     
pexMode=RC                                                                                                                                                       
disL2Cache=no                                                                                                                                                    
setL2CacheWT=yes                                                                                                                                                 
disL2Prefetch=yes                                                                                                                                                
enaICPref=yes                                                                                                                                                    
enaDCPref=yes                                                                                                                                                    
sata_dma_mode=yes                                                                                                                                                
netbsd_en=no                                                                                                                                                     
vxworks_en=no                                                                                                                                                    
bootdelay=3                                                                                                                                                      
disaMvPnp=no                                                                                                                                                     
enaAutoRecovery=yes                                                                                                                                              
pcieTune=no

seijuurou
() автор топика
Ответ на: комментарий от seijuurou

У меня появилась догадка, по которой следует что ТС, невнимательно отнесся ко всем рекомендациям из упомянутого мана.
Поэтому для дальнейшей помощи выкладывайте «скриншоты» всего что делали в консоли с u-boot и т. д. (как и какие команды вводили, как env правили).

yax123 ★★★★★
()
Ответ на: комментарий от yax123
  • скачиваем sheevaplug installer

    git://github.com/jbrechtel/sheevaplug_config.git

  • в файле uboot/openocd/config/board/sheevaplug.cfg в строке work-area-phis 0x10000000 удаляем 2 нуля после единицы
  • в файле uboot/uboot-env/uboot-nand-custom.txt правим мас-адрес
  • в файле uboot/uboot-env/uboot-dflt.txt тоже правим mac (ethaddr)
  • готовим флешку:
    • форматируем её в fat32

      sudo mkfs.vfat /dev/sdc1

    • всё что в папке installer копируем в корень флешки
    • скачиваем корневую файловую систему
    • распаковываем её в корень флешки
    • скачиваем ядро и модули в корень флешки
    • переименовываем их в uImage и modules.tar.gz соответственно
    • отмонтируем флешку
  • вставляем флешку в sheevaplug
  • запускаем установку uboota и линукса

    sudo php runme.php nand

  • через какое-то время в minicom-e получаем

    Uncompressing Linux... done, booting the kernel

вышеописанные действия с флешкой можно заменить на то что описано тут:

  • форматирование её в ext2 с 3-мя разделами, один из которых swap, а 1-ый загрузочный
  • монтирование 2-ого раздела в ~/mnt
  • монтирование 1-ого раздела в ~/mnt/boot
  • извлечение корневой ФС в ~/mnt
  • в файле uboot/uboot-env/uboot-nand-custom.txt в строке

    recover4 usb start; fatload usb 0 0x00800000 uImage; fatload usb 0 0x01100000 initrd

    заменить fatload на ext2load
  • установка переменных окружения:
    • setenv mainlineLinux yes
    • setenv arcNumber 2097
    • saveenv
    • setenv bootargs_console console=ttyS0,115200
    • setenv bootargs_root 'root=/dev/sda2 rootdelay=10'
    • setenv bootcmd_usb 'usb start; ext2load usb 0:1 0x00800000 /uImage; ext2load usb 0:1 0x01100000 /uInitrd'
    • setenv bootcmd 'setenv bootargs $(bootargs_console) $(bootargs_root); run bootcmd_usb; bootm 0x00800000 0x01100000'
    • saveenv reset


но после run bootcmd всё-ровно получаем

Uncompressing Linux... done, booting the kernel

а дальше не идёт

seijuurou
() автор топика
Ответ на: комментарий от seijuurou

Опять этот волшебный:

sudo php runme.php nand

интересно было бы посмотреть что там в консоли шивыплаг летело.

То что вы написали и красиво оформили это конечно круто. Но все это я и в доке видел, интересовали именно ваши действия руками в консоли и что на все это отвечала железка (копипастом).

yax123 ★★★★★
()
Ответ на: комментарий от yax123

sheevaplug installer у меня заработал в версии 1.1 с правкой этогоwork-area-phis адреса, это кстати в какой-то доке описано на сайте plugcomputer.org, но я его нашёл не сразу, щас вот разметил флешку под etx2

anton@debianPC /mnt --> sudo fdisk -l
....
   Device Boot      Start         End      Blocks   Id  System                                                                                                   
/dev/sdc1   *           1          52       98301   83  Linux                                                                                                    
/dev/sdc2              53         413      682651   83  Linux                                                                                                    
/dev/sdc3             414        1024     1155401   82  Linux swap / Solaris 

anton@debianPC /mnt --> df -h
/dev/sdc2             657M  470M  154M  76% /mnt                                                                                                                 
/dev/sdc1              93M   16M   73M  18% /mnt/boot 

anton@debianPC /mnt --> ls                                                                                                                                       
base.tar.bz2  boot  lost+found                                                                                                                                   
anton@debianPC /mnt --> sudo tar -xjf base.tar.bz2
anton@debianPC ~/cross/sheevaplug-installer-v1.1/sheevaplug-installer-v1.1-lite --> sudo php runme.php nand
 ****   exec(modprobe ftdi_sio vendor=0x9e88 product=0x9e8f)
 ****   Preparing environment variables file ...
reading uboot/uboot-env/uboot-dflt.txt
uboot/uboot-env/fw_setenv baudrate 115200
CRC read error on uboot-env.bin: Success
uboot/uboot-env/fw_setenv loads_echo 0
uboot/uboot-env/fw_setenv ipaddr 192.168.12.180
uboot/uboot-env/fw_setenv serverip 192.168.12.169
uboot/uboot-env/fw_setenv rootpath /mnt/ARM_FS/
uboot/uboot-env/fw_setenv netmask 255.255.255.0
uboot/uboot-env/fw_setenv stdin serial
uboot/uboot-env/fw_setenv stdout serial
uboot/uboot-env/fw_setenv stderr serial
uboot/uboot-env/fw_setenv console console=ttyS0,115200 mtdparts=nand_mtd:0xc0000@0\(uboot\)ro,0x1ff00000@0x100000\(root\)
uboot/uboot-env/fw_setenv mainlineLinux no
uboot/uboot-env/fw_setenv CASset min
uboot/uboot-env/fw_setenv enaMonExt no
uboot/uboot-env/fw_setenv enaCpuStream no
uboot/uboot-env/fw_setenv enaWrAllo no
uboot/uboot-env/fw_setenv pexMode RC
uboot/uboot-env/fw_setenv disL2Cache no
uboot/uboot-env/fw_setenv setL2CacheWT yes
uboot/uboot-env/fw_setenv disL2Prefetch yes
uboot/uboot-env/fw_setenv enaICPref yes
uboot/uboot-env/fw_setenv enaDCPref yes
uboot/uboot-env/fw_setenv sata_dma_mode yes
uboot/uboot-env/fw_setenv MALLOC_len 1
uboot/uboot-env/fw_setenv ethprime egiga0
uboot/uboot-env/fw_setenv netbsd_en no
uboot/uboot-env/fw_setenv vxworks_en no
uboot/uboot-env/fw_setenv bootargs_root root=/dev/nfs rw
uboot/uboot-env/fw_setenv bootargs_end :::DB88FXX81:eth0:none
uboot/uboot-env/fw_setenv image_name uImage
uboot/uboot-env/fw_setenv bootcmd tftpboot 0x2000000 \$\(image_name\)\;setenv bootargs \$\(console\) \$\(bootargs_root\) nfsroot=\$\(serverip\):\$\(rootpath\) ip=\$\(ipaddr\):\$\(serverip\)\$\(bootargs_end\) \$\(mvNetConfig\) \$\(mvPhoneConfig\)\;  bootm 0x2000000\;
uboot/uboot-env/fw_setenv standalone fsload 0x2000000 \$\(image_name\)\;setenv bootargs \$\(console\) root=/dev/mtdblock0 rw ip=\$\(ipaddr\):\$\(serverip\)\$\(bootargs_end\) \$\(mvPhoneConfig\)\; bootm 0x2000000\;
uboot/uboot-env/fw_setenv bootdelay 3
uboot/uboot-env/fw_setenv disaMvPnp no
uboot/uboot-env/fw_setenv ethaddr f0:ad:4e:01:2c:19
uboot/uboot-env/fw_setenv ethmtu 1500
uboot/uboot-env/fw_setenv mvPhoneConfig mv_phone_config=dev0:fxs,dev1:fxs
uboot/uboot-env/fw_setenv mvNetConfig mv_net_config=\(00:11:88:0f:62:81,0:1:2:3\),mtu=1500
uboot/uboot-env/fw_setenv usb0Mode host
uboot/uboot-env/fw_setenv yuk_ethaddr 00:00:00:EE:51:81
uboot/uboot-env/fw_setenv nandEcc 1bit
uboot/uboot-env/fw_setenv netretry no
uboot/uboot-env/fw_setenv rcvrip 169.254.100.100
uboot/uboot-env/fw_setenv loadaddr 0x02000000
uboot/uboot-env/fw_setenv autoload no
uboot/uboot-env/fw_setenv enaAutoRecovery yes
uboot/uboot-env/fw_setenv ethact egiga0
reading uboot/uboot-env/uboot-nand-custom.txt
uboot/uboot-env/fw_setenv bootargs_root ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs
uboot/uboot-env/fw_setenv mtdpartitions mtdparts=orion_mtd:0x400000@0x100000\(uImage\),0x1fb00000@0x500000\(rootfs\)
uboot/uboot-env/fw_setenv ethaddr F0:AD:4E:01:2c:19
uboot/uboot-env/fw_setenv real_bootcmd setenv bootargs \$\(bootargs_console\) \$\(mtdpartitions\) \$\(bootargs_root\)\; nand read.e 0x00800000 0x00100000 0x00400000\; bootm 0x00800000
uboot/uboot-env/fw_setenv bootargs_console console=ttyS0,115200
uboot/uboot-env/fw_setenv bootcmd run recover1
uboot/uboot-env/fw_setenv recover1 setenv mainlineLinux yes\; setenv arcNumber 2097\; setenv bootcmd run recover2\; saveenv\; reset
uboot/uboot-env/fw_setenv recover2 run recover3\; setenv bootcmd \$\(real_bootcmd\)\; saveenv\; setenv bootargs \$\(bootargs_console\) \$\(mtdpartitions\) root=/dev/ram0 rw ramdisk=0x01100000,8M install_type=nand\; bootm 0x00800000 0x01100000
uboot/uboot-env/fw_setenv recover3 run recover4\; nand erase clean 0x00100000 0x00400000\; nand write.e 0x00800000 0x00100000 0x00400000
uboot/uboot-env/fw_setenv recover4 usb start\; ext2load usb 0 0x00800000 /boot/uImage\; ext2load usb 0 0x01100000 /boot/initrd.img-2.6.32-5-kirkwood

 ****   Burning uboot and environment variables ... This will take few minutes ...
Open On-Chip Debugger 0.5.0 (2011-08-09-08:45)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.berlios.de/doc/doxygen/bugs.html
Info : only one transport option; autoselect 'jtag'
2000 kHz
trst_and_srst separate srst_gates_jtag trst_push_pull srst_open_drain
adapter_nsrst_delay: 200
jtag_ntrst_delay: 200
dcc downloads are enabled
Warn : use 'feroceon.cpu' as target identifier, not '0'
sheevaplug_load_uboot
Info : clock speed 2000 kHz
Info : JTAG tap: feroceon.cpu tap/device found: 0x20a023d3 (mfg: 0x1e9, part: 0x0a02, ver: 0x2)
Info : Embedded ICE version 0
Info : feroceon.cpu: hardware has 1 breakpoint/watchpoint unit
target state: halted
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0x000000d3 pc: 0xffff0000
MMU: disabled, D-Cache: disabled, I-Cache: disabled
NAND flash device 'NAND 512MiB 3.3V 8-bit (Samsung)' found
erased blocks 5 to 7 on NAND flash device #0 'NAND 512MiB 3.3V 8-bit'
target state: halted
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0x000000d3 pc: 0xffff0000
MMU: disabled, D-Cache: disabled, I-Cache: disabled
NAND flash device 'NAND 512MiB 3.3V 8-bit (Samsung)' found
erased blocks 0 to 5 on NAND flash device #0 'NAND 512MiB 3.3V 8-bit'
 ****   openocd FAILED
 ****   Is the mini USB cable connected?
 ****   Try powering down, then replugging the Sheevaplug

seijuurou
() автор топика
Ответ на: комментарий от yax123

тут конечно должно быть не /boot/uImage, а /uImage

uboot/uboot-env/fw_setenv recover4 usb start\; ext2load usb 0 0x00800000 /boot/uImage\; ext2load usb 0 0x01100000 /boot/initrd.img-2.6.32-5-kirkwood

seijuurou
() автор топика
Ответ на: комментарий от yax123

minicom:

 ** MARVELL BOARD: SHEEVA PLUG LE 
U-Boot 1.1.4 (Jul 19 2009 - 16:03:28) Marvell version: 3.4.19
U-Boot code: 00600000 -> 0067FFF0  BSS: -> 006CFB00
Soc: 88F6281 A1 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz 
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000   size 256MB 
DRAM CS[1] base 0x10000000   size 256MB 
DRAM Total size 512MB  16bit width
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:512 MB
Flash:  0 kB
CPU : Marvell Feroceon (Rev 1)
Streaming disabled 
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net:   egiga0 [PRIME], egiga1
Hit any key to stop autoboot:  0 
Saving Environment to NAND...
Erasing Nand...Writing to Nand... done
  ** MARVELL BOARD: SHEEVA PLUG LE 
U-Boot 1.1.4 (Jul 19 2009 - 16:03:28) Marvell version: 3.4.19
U-Boot code: 00600000 -> 0067FFF0  BSS: -> 006CFB00
Soc: 88F6281 A1 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz 
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000   size 256MB 
DRAM CS[1] base 0x10000000   size 256MB 
DRAM Total size 512MB  16bit width
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:512 MB
Flash:  0 kB
CPU : Marvell Feroceon (Rev 1)
Streaming disabled 
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net:   egiga0 [PRIME], egiga1
Hit any key to stop autoboot:  0 
(Re)start USB...
USB:   scanning bus for devices... 2 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
.
.........................
.........................
........................
.........................
.........................
...........
1444216 bytes read
.
.........................
.........................
.........................
.........................
.........................
.........................
.........................
........................
.........................
.........................
.........................
.........................
.........................
.........................
.........................
.........................
.........................
.........................
...............
..........
.....................
5217825 bytes read
NAND erase: device 0 offset 0x100000, size 0x400000
Erasing at 0x100000 --   3% complete. Cleanmarker written at 0x100000.
...
Erasing at 0x4e0000 -- 100% complete. Cleanmarker written at 0x4e0000.
OK
NAND write: device 0 offset 0x100000, size 0x400000
Writing data at 0x100000 --   0% complete.
....
Writing data at 0x4ff800 -- 100% complete.
 4194304 bytes written: OK
Saving Environment to NAND...
Erasing Nand...Writing to Nand... done
## Booting image at 00800000 ...
   Image Name:   Debian kernel
   Created:      2010-06-13  12:32:01 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    1444152 Bytes =  1.4 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
Bad Magic Number�
 ** MARVELL BOARD: SHEEVA PLUG LE 
U-Boot 1.1.4 (Jul 19 2009 - 16:03:28) Marvell version: 3.4.19
U-Boot code: 00600000 -> 0067FFF0  BSS: -> 006CFB00
Soc: 88F6281 A1 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz 
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000   size 256MB 
DRAM CS[1] base 0x10000000   size 256MB 
DRAM Total size 512MB  16bit width
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:512 MB
Flash:  0 kB
CPU : Marvell Feroceon (Rev 1)
Streaming disabled 
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net:   egiga0 [PRIME], egiga1
Hit any key to stop autoboot:  0 
NAND read: device 0 offset 0x100000, size 0x400000
Reading data from 0x100000 --   0% complete.
......
Reading data from 0x4ff800 -- 100% complete.
 4194304 bytes read: OK
## Booting image at 00800000 ...
   Image Name:   Debian kernel
   Created:      2010-06-13  12:32:01 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    1444152 Bytes =  1.4 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.

seijuurou
() автор топика
Ответ на: комментарий от yax123

## Loading Ramdisk Image at 01100000 ...
Bad Magic Number

это вероятно было из-за неверного образа initrd в файле uboot/uboot-env/uboot-nand-custom.txt, поставил ext2load usb 0 0x01100000 /uInitrd, вместо initrd.img-2.6.32-5-kirkwood
получил вот это

(Re)start USB...                                                                                                                                                 
USB:   scanning bus for devices... 2 USB Device(s) found                                                                                                         
       scanning bus for storage devices... 1 Storage Device(s) found                                                                                             
.                                                                                                                                                                
.........................                                                                                                                                        
.........................                                                                                                                                        
                                                                                                                                                     
1444216 bytes read                                                                                                                                               
.                                                                                                                                                                
.........................                                                                                                                                        
.........................                                                                                                                                        
                                                                                                                                            
5217889 bytes read                                                                                                                                               
NAND erase: device 0 offset 0x100000, size 0x400000                                                                                                              
Erasing at 0x100000 --   3% complete. Cleanmarker written at 0x100000.                                                                                           
...........................
Erasing at 0x4e0000 -- 100% complete. Cleanmarker written at 0x4e0000.                                                                                           
OK                                                                                                                                                               
NAND write: device 0 offset 0x100000, size 0x400000                                                                                                              
Writing data at 0x100000 --   0% complete.                                                                                                                       
Writing data at 0x10a000 --   1% complete.                                                                                                                       
.......................
Writing data at 0x4ff800 -- 100% complete.                                                                                                                       
 4194304 bytes written: OK                                                                                                                                       
Saving Environment to NAND...                                                                                                                                    
Erasing Nand...Writing to Nand... done                                                                                                                           
## Booting image at 00800000 ...                                                                                                                                 
   Image Name:   Debian kernel                                                                                                                                   
   Created:      2010-06-13  12:32:01 UTC                                                                                                                        
   Image Type:   ARM Linux Kernel Image (uncompressed)                                                                                                           
   Data Size:    1444152 Bytes =  1.4 MB                                                                                                                         
   Load Address: 00008000                                                                                                                                        
   Entry Point:  00008000                                                                                                                                        
   Verifying Checksum ... OK                                                                                                                                     
OK                                                                                                                                                               
## Loading Ramdisk Image at 01100000 ...                                                                                                                         
   Image Name:   Debian ramdisk                                                                                                                                  
   Created:      2010-06-13  12:32:02 UTC                                                                                                                        
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)                                                                                                       
   Data Size:    5217825 Bytes =  5 MB                                                                                                                           
   Load Address: 00000000                                                                                                                                        
   Entry Point:  00000000                                                                                                                                        
   Verifying Checksum ... OK                                                                                                                                     
Starting kernel ...                                                                                                                                              
Uncompressing Linux... done, booting the kernel. 

seijuurou
() автор топика
Ответ на: комментарий от seijuurou

Если предположить что ядро успешно загружается из нанда, верифицируется, разжимается и успешно запускается (передается управление в нужное место).
То явно тут у вас ядро как попало собрано.

Чего-то конкретного посоветовать пока нечего.
Сам я пользуюсь только самосборным u-boot/ядром/рутфс, поэтому точно знаю что где и как.

yax123 ★★★★★
()
Ответ на: комментарий от yax123

у меня, при прошивке самосборного uboot-a, процесс загрузки останавливается вот на этом:

U-Boot 2012.10 (Jan 15 2013 - 15:53:12)                                                                                                                          
Marvell-Sheevaplug                                                                                                                                               
SoC:   Kirkwood 88F6281_A1
и дальше не идёт
собирал buildroot-ом

seijuurou
() автор топика
Ответ на: комментарий от seijuurou

По все видимости все-таки собрано не для вашей железки.
Чтобы все работало, нужно угадать с процом/конфигурацией переферии/таймингами DRAM и еще с чем-то.
Причем абсолютно нет гарантии что то что предложили разработчики заработает.
Я, чтобы взлетел u-boot, буквально каждую инструкцию nboot-а лично проверил. И далее пришлось проследить все цепочки вызовов. Но у меня особый случай.

У вас каноничная шиваплаг, или что-то сделанное по мотивам?

yax123 ★★★★★
()
Ответ на: комментарий от yax123

что-то сделанное по мотивам, но мотивы тут достаточно конкретные - от шиваплага отрезали sd-карту и по-другому обозвали - измерительный зонд wiProbe ETL Micra. Даже котобка соответствует шиваплагу

seijuurou
() автор топика
Ответ на: комментарий от yax123

от шиваплага скачанный uboot подошёл, в buildroot-е выставил название sheevaplug

seijuurou
() автор топика
Ответ на: комментарий от seijuurou

Точно только SD-отрезали?
Там на SoC может 2-3 десятка джамперов быть которые всякие конфиги задают.
Среди важных это частоты ядра и внешней шины, ширина шины данных и т.д.
Опять же какую DDR2 запаяли? Можно разные, просто подправить нужно тайминги, а это еще десяток 32-разрядных параметров в исходном коде.

yax123 ★★★★★
()
Ответ на: комментарий от seijuurou

В такой коробке под «джампером» подразумевается резистор сопротивлением «0» и размером 0402 запаянный в нужном месте.
В данном случае надо схемы сравнивать, а не на плате искать.

yax123 ★★★★★
()
Ответ на: комментарий от yax123

В общем, если это перепевка по мотивам референс дизайна от марвелла, то нужно искать точные характеристики конкретной железки у производителя. Сравнивать с каноничной шивой, править исходники и самому собирать. То что, что-то там работает с бинарем от шивы, ничего не значит. Могут полезть проблемы с переферией и т.д.

yax123 ★★★★★
()
Ответ на: комментарий от seijuurou

Свяжитесь с производителем, иногда они нормально идут на контакт, если уж не схему, то правильные дефайны может подскажут. Отличия в схемах и т. д.
У меня тут IP-PLUG валяется (отечественная перепевка на тему шивы), дык ихние прогеры дали распиновку на JTAG и UART, дали пароль для root.

Если занимаетесь этим на работе то имеет смысл попробовать подписать NDA c марвелом и с их сайта слить SDK и исходники ядра (вместе с даташитами).
Весьма полезное чтиво.

yax123 ★★★★★
()
Ответ на: комментарий от seijuurou

Вы там что ли пиратите «бедных пиратов шивы»? :))))))))

Предлагаю попробовать впердолить slackarm, может у них более удачная сборка ядра.

yax123 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.