Difference between revisions of "Uboot for GuruPlug"

From Amahi Wiki
Jump to: navigation, search
(Created page with '= GuruPlug, GuruPlug Server Plus = Here's how to allow your GuruPlug to boot from a USB drive.<br/> You'll need an access to the serial console to achieve this, the JTAG module …')
 
m (added how to read usb partition)
 
(6 intermediate revisions by 2 users not shown)
Line 4: Line 4:
 
You'll need an access to the serial console to achieve this, the JTAG module is OK.
 
You'll need an access to the serial console to achieve this, the JTAG module is OK.
  
* To connect to the bootloader, proceed exactly like for the Sheevaplug: http://wiki.amahi.org/index.php/Marvell_Plug_Computer
+
* To connect to the bootloader, proceed exactly like for the [[Marvell Plug Computer|Sheevaplug]]
 
 
 
* Reset the GuruPlug.
 
* Reset the GuruPlug.
 
* At the terminal, press enter a couple of seconds after boot to prevent it from booting using the onboard flash (Ubuntu). You should end up with a prompt.
 
* At the terminal, press enter a couple of seconds after boot to prevent it from booting using the onboard flash (Ubuntu). You should end up with a prompt.
Line 12: Line 11:
 
* There are some commands you need to run to make it permanently boot from the USB port ('''NOTE:''' this step is only necessary once):
 
* There are some commands you need to run to make it permanently boot from the USB port ('''NOTE:''' this step is only necessary once):
 
  setenv mainlineLinux yes
 
  setenv mainlineLinux yes
  setenv bootargs_root 'root=/dev/sdb1 rootdelay=15'
+
  setenv x_bootargs_root 'root=/dev/sdc1 rootdelay=10'
  setenv bootcmd_usb 'usb start; ext2load usb 1:1 0x6400000 /boot/uImage'
+
  setenv x_bootcmd_kernel 'ext2load usb 1:1 0x6400000 /boot/uImage'
 
  saveenv
 
  saveenv
 +
 +
To determine 1:1 in the command above
 +
 +
usb start
 +
usb part
 +
## Unknown partition table                                                                         
 +
## Unknown partition  table                                                                         
 +
Partition Map for USB device 2  --  Partition Type: DOS                                                                           
 +
Partition    Start Sector    Num Sectors    Type                                                                           
 +
    1                  63        14586957      b                                                                             
 +
    2            14587020        1060290      82           
 +
 +
here you have device 2 and you want to boot Partition 1 so use 2:1 (as opposed to 1:1 in the command above).
  
 
While still under the bootloader , check your environment with ''printenv''.
 
While still under the bootloader , check your environment with ''printenv''.
Line 28: Line 40:
 
  arcNumber=2653
 
  arcNumber=2653
 
  mainlineLinux=yes
 
  mainlineLinux=yes
  x_bootargs_root=root=/dev/sdb1 rootdelay=15
+
  x_bootargs_root=root=/dev/sdc1 rootwait
 
  x_bootargs=console=ttyS0,115200
 
  x_bootargs=console=ttyS0,115200
 
  stdin=serial
 
  stdin=serial
 
  stdout=serial
 
  stdout=serial
 
  stderr=serial
 
  stderr=serial

Latest revision as of 03:23, 25 February 2011

GuruPlug, GuruPlug Server Plus

Here's how to allow your GuruPlug to boot from a USB drive.
You'll need an access to the serial console to achieve this, the JTAG module is OK.

  • To connect to the bootloader, proceed exactly like for the Sheevaplug
  • Reset the GuruPlug.
  • At the terminal, press enter a couple of seconds after boot to prevent it from booting using the onboard flash (Ubuntu). You should end up with a prompt.
  • Some version of the GuruPlug have been shipped with a uboot that does not support Booting from USB, ESATA or SD-Card. If this is your case, then you have to upgrade uboot. To do this, the best howto I found is this : http://oinkzwurgl.org/guruplug_uboot
  • There are some commands you need to run to make it permanently boot from the USB port (NOTE: this step is only necessary once):
setenv mainlineLinux yes
setenv x_bootargs_root 'root=/dev/sdc1 rootdelay=10'
setenv x_bootcmd_kernel 'ext2load usb 1:1 0x6400000 /boot/uImage'
saveenv

To determine 1:1 in the command above

usb start
usb part
## Unknown partition table                                                                           
## Unknown partition  table                                                                           
Partition Map for USB device 2  --   Partition Type: DOS                                                                             
Partition     Start Sector     Num Sectors     Type                                                                            
    1                   63        14586957       b                                                                               
    2             14587020         1060290      82             

here you have device 2 and you want to boot Partition 1 so use 2:1 (as opposed to 1:1 in the command above).

While still under the bootloader , check your environment with printenv. It must look like this:

GuruPlug>> printenv
bootcmd=${x_bootcmd_usb}; ${x_bootcmd_kernel}; setenv bootargs ${x_bootargs} ${x_bootargs_root}; bootm 0x6400000;
bootdelay=3
baudrate=115200
x_bootcmd_usb=usb start
ethact=egiga0
x_bootcmd_kernel=ext2load usb 1:1 0x6400000 /boot/uImage
arcNumber=2653
mainlineLinux=yes
x_bootargs_root=root=/dev/sdc1 rootwait
x_bootargs=console=ttyS0,115200
stdin=serial
stdout=serial
stderr=serial