[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
howtos:hardware:arm:sone_u-boot_hints [2013/12/22 10:29 (UTC)] – [Making it easy for u-boot to find uImage and uinitrd] louigi600howtos:hardware:arm:sone_u-boot_hints [2013/12/22 10:34 (UTC)] – [Making it easy for u-boot to find uImage and uinitrd] louigi600
Line 10: Line 10:
   * the root filesystem bust be labelled "root" and should possibly be ext3 formatted   * the root filesystem bust be labelled "root" and should possibly be ext3 formatted
  
-Heres the environment dumped from fw_printenv:+Heres the environment dumped from fw_printenv: (taken from my GoFlexNet)
  
-  arcNumber=3089+  arcNumber=<put here your device's correct arcNumber>
   baudrate=115200   baudrate=115200
   boot_flash_kernel=nand read $flash_kernel_load_addr $flash_kernel_offest $flash_kernel_size; bootm $flash_kernel_load_addr   boot_flash_kernel=nand read $flash_kernel_load_addr $flash_kernel_offest $flash_kernel_size; bootm $flash_kernel_load_addr
Line 45: Line 45:
   usb_dev_part=1   usb_dev_part=1
   usb_part_list=4 3 2 1   usb_part_list=4 3 2 1
-  usb_scan=usb start; setenv usb_boot_dev none; for dev in  $usb_dev_list; do test $dev -eq 0 && setenv devname /dev/sda ; test $dev -eq 1 &&  setenv devname /dev/sdb ; test $dev -eq 2 && setenv devname /dev/sdc ; test $dev -eq 3 && setenv devname /dev/sdd ; echo $devname ; for part in $usb_part_list; do echo $dev $part ; if ext2load usb ${dev}:$part 0x800000 /boot/uImage 10 ; then setenv usb_boot_dev $dev:$part ; setenv usb_boot_dir /boot ; fi  ; if ext2load usb ${dev}:$part 0x800000 /uImage 10 ; then setenv usb_boot_dev $dev:$part ; setenv usb_boot_dir ; fi  ; done; done; if test "$usb_boot_dev" = "none" ; then echo "No USB bootable device found" ; else echo "USB device $usb_boot_dev is bootable" ; setenv bootargs $console $mtdparts $root_fs ro $rootfstype ; echo $bootargs ; sleep 1; ext2load usb $usb_boot_dev 0x800000 $usb_boot_dir/uImage && setenv usb_boot_address 0x800000 ; ext2load usb $usb_boot_dev 0x1100000 $usb_boot_dir/uinitrd && setenv usb_boot_address 0x800000 0x1100000 ;  +  usb_scan=usb start; setenv usb_boot_dev none; for dev in  $usb_dev_list; do test $dev -eq 0 && setenv devname /dev/sda ; test $dev -eq 1 &&  setenv devname /dev/sdb ; test $dev -eq 2 && setenv devname /dev/sdc ; test $dev -eq 3 && setenv devname /dev/sdd ; echo $devname ; for part in $usb_part_list; do echo $dev $part ; if ext2load usb ${dev}:$part 0x800000 /boot/uImage 10 ; then setenv usb_boot_dev $dev:$part ; setenv usb_boot_dir /boot ; fi  ; if ext2load usb ${dev}:$part 0x800000 /uImage 10 ; then setenv usb_boot_dev $dev:$part ; setenv usb_boot_dir ; fi  ; done; done; if test "$usb_boot_dev" = "none" ; then echo "No USB bootable device found" ; else echo "USB device $usb_boot_dev is bootable" ; setenv bootargs $console $mtdparts $root_fs ro $rootfstype ; echo $bootargs ; sleep 1; ext2load usb $usb_boot_dev 0x800000 $usb_boot_dir/uImage && setenv usb_boot_address 0x800000 ; ext2load usb $usb_boot_dev 0x1100000 $usb_boot_dir/uinitrd && setenv usb_boot_address 0x800000 0x1100000 ; bootm $usb_boot_address ; fi;
- bootm $usb_boot_address ; fi;+
  
  
 Labeling the root filesystem was a workaround when I started getting issues on device namings changes as I began using the SATA drives for NAS storage. In practice what was happening was that uboot thought that root was on sda but once the kernel booted it would detect the SATA drives before that and name the usb memory stick to after the last SATA drive causing a kernel panic as initrd attempts to mount the root filesystem. Labeling the root filesystem was a workaround when I started getting issues on device namings changes as I began using the SATA drives for NAS storage. In practice what was happening was that uboot thought that root was on sda but once the kernel booted it would detect the SATA drives before that and name the usb memory stick to after the last SATA drive causing a kernel panic as initrd attempts to mount the root filesystem.
-I thus changed the u-boot environment to pass the root device as a label rather then a device path.+I thus changed the u-boot environment to pass the root device as a label rather then a device path. This allows me to boot my GoFlexNet correctly from any usb stick (even trough a usb hub) regardless of the presence of the SATA drives.
  
 ====== Sources ====== ====== Sources ======
 howtos:hardware:arm:sone_u-boot_hints ()