Difference between revisions of "Plug notes"

From Amahi Wiki
Jump to: navigation, search
Line 7: Line 7:
 
Here are the steps to make the plug boot from USB
 
Here are the steps to make the plug boot from USB
 
* General [http://fedoraproject.org/wiki/Architectures/ARM/SheevaplugUSB directions]
 
* General [http://fedoraproject.org/wiki/Architectures/ARM/SheevaplugUSB directions]
 +
* Connect the ethernet cable to your network (Mouton says: is this necessary now? Can't we just wait until the Amahi Install section below to connect the plug to the LAN?)
 +
* On Windows, use PuTTY (serial). On Linux, use [http://sourceforge.net/projects/gtkterm/ gtkterm] (use 2 stop bits & 115200 bps speed when creating the profile)
 +
* If you use Windows, you'll need to install a driver (Mouton says: where is that driver?). If you use Linux, you'll need to do this before you connect the JTAG USB cable in your Linux computer:
 +
  cat > /etc/udev/rules.d/85-sheevaplug.rules <<'EOF'
 +
  # if no driver has claimed the interface yet, load ftdi_sio
 +
  ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_interface", \
 +
          ATTRS{idVendor}=="1c0c", ATTRS{idProduct}=="0102", \
 +
          DRIVER=="", \
 +
          RUN+="/sbin/modprobe -b ftdi_sio"
 +
 
 +
  # add the sheevaplug VID and PID to the list of devices supported by ftdi_sio
 +
  ACTION=="add", SUBSYSTEM=="drivers", \
 +
          ENV{DEVPATH}=="/bus/usb-serial/drivers/ftdi_sio", \
 +
          ATTR{new_id}="1c0c 0102"
 +
 
 +
  # optionally create a convenience symlink for the console device
 +
  ACTION=="add", KERNEL=="ttyUSB*", \
 +
          ATTRS{interface}=="SheevaPlug JTAGKey FT2232D B", \
 +
          ATTRS{bInterfaceNumber}=="01", \
 +
          SYMLINK+="sheevaplug"
 +
  EOF
 
* Connect the JTAG module and connect the USB side to a terminal emulator
 
* Connect the JTAG module and connect the USB side to a terminal emulator
* Connect the ethernet cable to your network
+
* Reset the device from the JTAG module (hit the button)
* Putty for windows (Serial)
+
* At the terminal, press enter a couple of seconds after boot to prevent it from booting using the onboard flash (Ubuntu)
* gtkterm for linux (use 2 stop bits!)
 
* Reset the device from the JTAG module
 
* At the terminal, press enter a couple of seconds after boot to prevent it booting to the flash
 
 
* There are some commands to make it permanently boot off USB ('''NOTE:''' this step only has to be done once):
 
* There are some commands to make it permanently boot off USB ('''NOTE:''' this step only has to be done once):
  
Line 24: Line 42:
 
           reset
 
           reset
 
           </small>
 
           </small>
* In order to install the rootfs onto a flash or disk, mount the flash drive on a linux system and execute the create-clean-f12-disk.sh script.  It may take a while, but this must be done before booting up the plug and installing Amahi.
+
* In order to install the rootfs onto a flash or disk, mount the flash drive on a linux system and execute the create-clean-f12-disk.sh script (Mouton says: where can I find that script?).  It may take a while, but this must be done before booting up the plug and installing Amahi.
  
 
'''NOTE:''' This script is very dangerous (it can destroy the machine it is run on if not used properly). You will need to change the partition destination.
 
'''NOTE:''' This script is very dangerous (it can destroy the machine it is run on if not used properly). You will need to change the partition destination.
  
 
* Insert USB Flash Drive into the plug.
 
* Insert USB Flash Drive into the plug.
* Once this is complete, the JTAG module can be disconnected.  There will be no need for serial connection any longer.  Once the USB Flash Drive is connected and the plug booted, you will be able to connect via SSH.
+
* Once this is complete, the JTAG module can be disconnected.  There will be no need for serial connection any longer.  Once the USB Flash Drive is connected and the plug booted, you will be able to connect via SSH (Mouton says: what's the root password?).
  
 
= Amahi Install =
 
= Amahi Install =

Revision as of 12:43, 15 May 2010

Warboard

For known issues, check the warboard

Getting the plug booting Fedora 12

Here are the steps to make the plug boot from USB

  • General directions
  • Connect the ethernet cable to your network (Mouton says: is this necessary now? Can't we just wait until the Amahi Install section below to connect the plug to the LAN?)
  • On Windows, use PuTTY (serial). On Linux, use gtkterm (use 2 stop bits & 115200 bps speed when creating the profile)
  • If you use Windows, you'll need to install a driver (Mouton says: where is that driver?). If you use Linux, you'll need to do this before you connect the JTAG USB cable in your Linux computer:
 cat > /etc/udev/rules.d/85-sheevaplug.rules <<'EOF'
 # if no driver has claimed the interface yet, load ftdi_sio
 ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_interface", \
         ATTRS{idVendor}=="1c0c", ATTRS{idProduct}=="0102", \
         DRIVER=="", \
         RUN+="/sbin/modprobe -b ftdi_sio"
 
 # add the sheevaplug VID and PID to the list of devices supported by ftdi_sio
 ACTION=="add", SUBSYSTEM=="drivers", \
         ENV{DEVPATH}=="/bus/usb-serial/drivers/ftdi_sio", \
         ATTR{new_id}="1c0c 0102"
 
 # optionally create a convenience symlink for the console device
 ACTION=="add", KERNEL=="ttyUSB*", \
         ATTRS{interface}=="SheevaPlug JTAGKey FT2232D B", \
         ATTRS{bInterfaceNumber}=="01", \
         SYMLINK+="sheevaplug"
 EOF
  • Connect the JTAG module and connect the USB side to a terminal emulator
  • Reset the device from the JTAG module (hit the button)
  • At the terminal, press enter a couple of seconds after boot to prevent it from booting using the onboard flash (Ubuntu)
  • There are some commands to make it permanently boot off USB (NOTE: this step only has to be done once):
         
         setenv mainlineLinux yes
         setenv arcNumber 2097
         setenv bootargs_root 'root=/dev/sda1 rootdelay=15'
         setenv bootcmd_usb 'usb start; ext2load usb 0:1  0x6400000 /boot/uImage-2.6.30-sheevaplug'
         setenv bootcmd 'setenv bootargs $(console) $(bootargs_root); run bootcmd_usb; bootm 0x6400000'
         saveenv
         reset
         
  • In order to install the rootfs onto a flash or disk, mount the flash drive on a linux system and execute the create-clean-f12-disk.sh script (Mouton says: where can I find that script?). It may take a while, but this must be done before booting up the plug and installing Amahi.

NOTE: This script is very dangerous (it can destroy the machine it is run on if not used properly). You will need to change the partition destination.

  • Insert USB Flash Drive into the plug.
  • Once this is complete, the JTAG module can be disconnected. There will be no need for serial connection any longer. Once the USB Flash Drive is connected and the plug booted, you will be able to connect via SSH (Mouton says: what's the root password?).

Amahi Install

After booting from it,

  • Configure a profile for the system in http://www.amahi.org. Pay attention to the IP of the HDA you configure. Let's call it PLUG_FIXED_IP.
  • Ensure you have inserted the USB Flash Drive and boot the system
  • Until we optimize things, it will take 4 or 5 minutes to boot the first time.
  • The first time it boots, it will try to use DHCP. In my case, I configured a static IP so that when it boots with DHCP I know what IP it has. This may be different than the static you configured above.
  • Access the installer via http://IP_OR_NAME_OF_THE_PLUG_IN_DHCP:2000/
  • Wait patiently if it does not respond. This does require internet connectivity
  • The installer takes about 1 minute to install with that :)
  • Input the install code for that system
  • When asked to, click the big red button to reboot
  • The reboot will take a minute or two
  • Access it with the configured IP: http://IP_OR_NAME_OF_THE_PLUG/
  • First login: admin/amahi. I will ask you to reset the password the first time

NOTE: With about 1/8th of the rpms on a typical x86 install, you will experience a lot of failures with apps (VPN does not work, apps will be missing deps, etc. etc.).

Reporting issues

These are mostly what matter for debugging:

  • /root/hda-install.log
  • egrep -v 'POST|GET|progress' /tmp/amahi-ruby-install.log
  • See SP_warboard for documented issues.

Misc Notes

  • restarting rpm db in chrooted environment:
         rm /var/lib/rpm/__db*
         rpm --rebuilddb -vv