Mustang

Differences between revisions 11 and 103 (spanning 92 versions)
Revision 11 as of 2011-03-30 12:25:17
Size: 2644
Editor: p5098ed03
Comment:
Revision 103 as of 2016-02-17 16:57:00
Size: 7881
Editor: rkota
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from ARM/OMAPNattyHeadlessInstall
## page was renamed from ARM/HeadlessInstall
= To use preinstalled OMAP3/4 Natty (11.04) Headless Images, apply the following steps =
[[https://www.apm.com/products/data-center/x-gene-family/x-c1-development-kits/|{{attachment:mustang.jpg|Mustang C1 Development Kit: Order Online|align="right"}}]]
Line 5: Line 3:
== Downloading ==
Download the compressed image from http://cdimage.ubuntu.com/ubuntu-headless/releases/
= Ubuntu 14.04 installation instructions for x-gene Mustang reference board (ARM64) =
Line 8: Line 5:
/!\ Check the md5sum to verify the image == Before You Begin ==
Line 10: Line 7:
== Writing the image == You will need the following:
 1. An Applied Micro Mustang reference board (get yours [[https://www.apm.com/products/data-center/x-gene-family/x-c1-development-kits/|here!]])
 1. A management device for console access
 1. DHCP available which will provide Internet access (to access the Ubuntu package archive)
 1. A [[https://help.ubuntu.com/community/Installation/Netboot|TFTP Server]] accessible from the system
Line 12: Line 13:
You should write the raw image to a blank SD card. For Natty make sure you're using at least a 4G SD card. '''''Note: There is a known issue with Mustang networking after install correlated with link speeds less than 1000Mbit. See [[http://bugs.launchpad.net/bugs/1433290|LP: #1433290]].'''''
Line 14: Line 15:
Steps:
 1. Insert the SD card in your host computer's SD card reader.
 1. Make sure the SD card is not mounted (just umount it if needed).
 1. Identify the correct device name (like /dev/sdb).
 1. Run the following command to write it:
{{{
gunzip -c <ubuntu-11.04-preinstalled-headless-armel+<omap image>.img.gz | sudo dd bs=4M of=/dev/<device name>
sync
}}}
~- '''(note: replace <omap image> with either omap for beagle/beagleXM/other omap3 based system or omap4 for panda/blaze/other omap4 based system and the raw block device for <device name> - not a partition. i.e. /dev/mmcblk0 )''' -~
== Booting the image ==
== Download netboot images ==
Download netboot images from [[http://ports.ubuntu.com/ubuntu-ports/dists/trusty-updates/main/installer-arm64/current/images/generic/netboot/xgene | X-gene netboot images]] and place them in a directory on your tftp server. Subsequent instructions assume you have placed these files in the
directory '''xgene''' in your tftp server root. Please modify as required
if you chose a different path.
Line 26: Line 20:
=== On Pandaboard and BeagleXM === == Hardware Requirements ==
Line 28: Line 22:
 1. Attach a serial cable to the serial port on the board. ~-(note: The board is already wired for a straight serial cable - no null modem needed)-~
 1. Open a terminal on your host system and launch a serial console monitor with the port set for 115200,n,8,1
   * '''Screen:''' screen /dev/ttyUSB0 115200
     ~- ''' * you can end the screen session by pressing Ctrl-A and then K ''' -~
   * '''Minicom:''' TERM=vt100 minicom
     ~- ''' * the TERM=vt100 setting is needed for proper output formatting ''' -~
Requires a board with A3 silicon, running firmware based on the
APM's 1.13.28 release or newer.
Line 35: Line 25:
     ~- ''' * you can end the minicom session by pressing Ctrl-A and then X or Q ''' -~ == Launch Ubuntu installer ==
 * '''Boot your system to u-boot prompt (“Mustang#”)'''
  * Power up the X-C1 board, while powering up, hit “Enter” or “Return” key to stop the boot process at the u-boot prompt (“Mustang#”
 * '''Configure your system to autoboot to Ubuntu '''
  * `Mustang# setenv script_addr_r 0x4004000000`
  * `Mustang# setenv bootcmd 'scsi init; ext4load scsi 0 ${script_addr_r} boot.scr; source ${script_addr_r}'`
  * `Mustang# saveenv`
 * '''(Optional) : Enable other SATA ports , if you’d like to use multiple disks '''
  * `Mustang# setenv sata 0x3c`
  * `Mustang# saveenv`
       notice 2 "e"s
  * `Mustang# reset`
Line 37: Line 38:
 1. Insert the SD card in the system and switch on the board.  * '''Configure networking from u-boot'''
  * `Mustang# setenv ipaddr <mustang-ip>`
  * `Mustang# setenv netmask <mustang-netmask>`
  * `Mustang# setenv gatewayip <mustang-gateway>`
  * `Mustang# setenv serverip <tftp-server-ip>`
 * '''Load the installer from u-boot'''
  * `Mustang# tftpboot ${kernel_addr_r} xgene/uImage`
  * `Mustang# tftpboot ${ramdisk_addr_r} xgene/uInitrd`
  * `Mustang# tftpboot ${fdt_addr_r} xgene/apm-mustang.dtb`
 * '''Launch the Ubuntu installer from u-boot'''
  * `Mustang# setenv bootargs 'console=ttyS0,115200n8'`
  * `Mustang# bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}`
Line 39: Line 51:
The system should start booting with output shown on your serial terminal. After the board resizes the image to fill the SD card, it will reboot and start oem-config to prompt for localization and user info. == Ubuntu Installer GUI Selections ==
In the installer GUI, make selections as described in this section. When in doubt, refer to the detailed selection instructions below. Most on-screen options are self explanatory . Do take care to pick '''''Guided - use entire disk''''' option from '''Partition disks''' menu.
Line 41: Line 54:
=== On older Beagleboards that boot from nand ===
Insert SD card with new image into the beagleboard and reset while holding User1 button on system
 * '''Menu : Select a language'''
  * Highlight “English” & hit “return”
 * '''Menu: Select your location'''
  * Highlight “United States” (or your geographic location as necessary) & hit “return”
 * '''Menu: Configure the keyboard'''
  * Highlight “English (US)” or your specific configuration & hit “return”
 * '''Menu: Configure the network'''
  * Select your active interface, typically thats eth0. Highlight “eth0” & hit “return”
Line 44: Line 63:
/!\ On omap3 systems with a modified NAND (i.e. beaglebord C series) do the following:  * '''Menu: Enter the Hostname'''
  * Type in your hostname, tab and hit “return”
 * '''Menu: Choose a mirror of the Ubuntu archive'''
  * “United Kingdom” is most commonly selected. But please feel free to pick a mirror geographically closer to you and hit “return”
 * '''Menu: Choose a mirror of the Ubuntu archive'''
  * “ports.ubuntu.com” should be highlighted . If not, select that and hit “return”
 * '''Menu: Choose a mirror of the Ubuntu archive'''
  * If you require a proxy enter the info here. Then hit “tab” to highlight “ok” and hit “return”
 * '''Menu: set up users and passwords'''
  * '''Sub Menu: Full name for the new user:''' Enter User’s Full name , tab to ok then press “return”
  * '''Sub Menu: Username for your account:''' Choose a user name
  * '''Sub Menu: Choose a password for the new user:''' Enter & re-enter chosen password on the next screen
  * '''Sub Menu : Encrypt your home directory ?''' : Choose “yes” / “No” as necessary
 * '''Menu: Configure the clock'''
  * '''Select your time zone:''' scroll up or down with the arrow keys to select a timezone; hit “return”
 * '''Menu: Partition disks'''
  * Choose '''''Guided - use entire disk'''''
   * '''NOTE:''' Ubuntu currently has some hard requirements about how u-boot based servers need to be partitioned (/boot has to be first partition). So it is best to choose this option
 * '''Menu: Select disk to partition: '''
  * The disk(s) that are available on the system will appear, typically you want to select “sda” as the disk you want to install to. This entry “SCSI1 (0,0,0) (sda) - (size of disk)” should be highlighted, next press enter
  * A screen displaying partitions on '''sda''' appears. Press "Tab" to highlight "yes" and hit "return".
 * '''Menu: Configuring discover'''
  * '''''How do you want to manage upgrades on this system?''''' will appear here inside this menu.Depending on what options you are comfortable with, use the arrow key to highlight your option and hit “return”
  * '''''No automatic updates''''' is typically selected by developers so they can manage the system updates manually.
 * '''Menu: Software selection'''
  * Use the arrow keys to highlight your options and then the spacebar to select it. At minimum, following 2 options are recommended:
   * '''''Basic Ubuntu server'''''
   * '''''OpenSSH server'''''
  * Select Tab to highlight “continue” & hit “return” . This will kick off installation if the packages
 * '''Menu: Finish the installation'''
  * Select Tab to highlight “<Yes>” & hit “return”
 * '''Menu: Finish the installation'''
  * Select Tab to highlight “<Continue>” & hit “return”
Line 46: Line 97:
On a serial console connected to the system, halt any autoboot script and type
{{{
setenv bootcmd 'mmc init;fatload mmc 0 0x82000000 boot.scr;source 0x82000000'; setenv autostart yes; saveenv; boot
}}}
The system should start booting (note that this step is only necessary if you have a NAND and the system does not default to reading boot.scr from SD)
= Ubuntu Cloud image based installation instructions for x-gene Mustang reference board (ARM64) =
 * ~+'''NOTE'''+~: While this method is '''faster''' than netboot method described above, it is meant for '''expert''' Ubuntu developers and for engineering evaluation purposes only. Also, while the instructions use Ubuntu Wily (15.10) as example, they can be used for other Mustang enabled releases (15.04, 14.10 etc) by downloading the corresponding cloud images for those releases.
 * '''download the ARM64 cloud images from the following link'''
  * https://cloud-images.ubuntu.com/wily/current/wily-server-cloudimg-arm64-uefi1.img

 * '''setup a default user/password for the cloud image'''
  * {{{bzr branch lp:~smoser/+junk/backdoor-image}}}
  * {{{cd backdoor-image}}}
  * {{{sudo ./backdoor-image --user ubuntu --password ubuntu --password-auth ../wily-server-cloudimg-arm64-uefi1.img}}}

 * '''copy the cloud image to the disk on Mustang'''
  * {{{qemu-img convert -O raw wily-server-cloudimg-arm64-uefi1.img wily-server-cloudimg-arm64-uefi1-raw.img}}}
  * booting mustang via nfs rootfs or ramdisk rootfs or mmc/usb rootfs
   
    {{{dd if=wily-server-cloudimg-arm64-uefi1-raw.img of=/dev/sda bs=1M}}}

 * ''' deselect other cloud data sources '''
  * The 1st booting may take more than 2 minutes. Once you login to Ubuntu successfully, you need to run {{{'sudo dpkg-reconfigure clound-init'}}} to remove other data sources and just select the last data source - 'None: Failsafe datasource'.

Mustang C1 Development Kit: Order Online

Ubuntu 14.04 installation instructions for x-gene Mustang reference board (ARM64)

Before You Begin

You will need the following:

  1. An Applied Micro Mustang reference board (get yours here!)

  2. A management device for console access
  3. DHCP available which will provide Internet access (to access the Ubuntu package archive)
  4. A TFTP Server accessible from the system

Note: There is a known issue with Mustang networking after install correlated with link speeds less than 1000Mbit. See LP: #1433290.

Download netboot images

Download netboot images from X-gene netboot images and place them in a directory on your tftp server. Subsequent instructions assume you have placed these files in the directory xgene in your tftp server root. Please modify as required if you chose a different path.

Hardware Requirements

Requires a board with A3 silicon, running firmware based on the APM's 1.13.28 release or newer.

Launch Ubuntu installer

  • Boot your system to u-boot prompt (“Mustang#”)

    • Power up the X-C1 board, while powering up, hit “Enter” or “Return” key to stop the boot process at the u-boot prompt (“Mustang#”
  • Configure your system to autoboot to Ubuntu

    • Mustang# setenv script_addr_r 0x4004000000

    • Mustang# setenv bootcmd 'scsi init; ext4load scsi 0 ${script_addr_r} boot.scr; source ${script_addr_r}'

    • Mustang# saveenv

  • (Optional) : Enable other SATA ports , if you’d like to use multiple disks

    • Mustang# setenv sata 0x3c

    • Mustang# saveenv

      • notice 2 "e"s
    • Mustang# reset

  • Configure networking from u-boot

    • Mustang# setenv ipaddr <mustang-ip>

    • Mustang# setenv netmask <mustang-netmask>

    • Mustang# setenv gatewayip <mustang-gateway>

    • Mustang# setenv serverip <tftp-server-ip>

  • Load the installer from u-boot

    • Mustang# tftpboot ${kernel_addr_r} xgene/uImage

    • Mustang# tftpboot ${ramdisk_addr_r} xgene/uInitrd

    • Mustang# tftpboot ${fdt_addr_r} xgene/apm-mustang.dtb

  • Launch the Ubuntu installer from u-boot

    • Mustang# setenv bootargs 'console=ttyS0,115200n8'

    • Mustang# bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}

Ubuntu Installer GUI Selections

In the installer GUI, make selections as described in this section. When in doubt, refer to the detailed selection instructions below. Most on-screen options are self explanatory . Do take care to pick Guided - use entire disk option from Partition disks menu.

  • Menu : Select a language

    • Highlight “English” & hit “return”

  • Menu: Select your location

    • Highlight “United States” (or your geographic location as necessary) & hit “return”

  • Menu: Configure the keyboard

    • Highlight “English (US)” or your specific configuration & hit “return”

  • Menu: Configure the network

    • Select your active interface, typically thats eth0. Highlight “eth0” & hit “return”

  • Menu: Enter the Hostname

    • Type in your hostname, tab and hit “return”
  • Menu: Choose a mirror of the Ubuntu archive

    • “United Kingdom” is most commonly selected. But please feel free to pick a mirror geographically closer to you and hit “return”
  • Menu: Choose a mirror of the Ubuntu archive

    • “ports.ubuntu.com” should be highlighted . If not, select that and hit “return”
  • Menu: Choose a mirror of the Ubuntu archive

    • If you require a proxy enter the info here. Then hit “tab” to highlight “ok” and hit “return”
  • Menu: set up users and passwords

    • Sub Menu: Full name for the new user: Enter User’s Full name , tab to ok then press “return”

    • Sub Menu: Username for your account: Choose a user name

    • Sub Menu: Choose a password for the new user: Enter & re-enter chosen password on the next screen

    • Sub Menu : Encrypt your home directory ? : Choose “yes” / “No” as necessary

  • Menu: Configure the clock

    • Select your time zone: scroll up or down with the arrow keys to select a timezone; hit “return”

  • Menu: Partition disks

    • Choose Guided - use entire disk

      • NOTE: Ubuntu currently has some hard requirements about how u-boot based servers need to be partitioned (/boot has to be first partition). So it is best to choose this option

  • Menu: Select disk to partition:

    • The disk(s) that are available on the system will appear, typically you want to select “sda” as the disk you want to install to. This entry “SCSI1 (0,0,0) (sda) - (size of disk)” should be highlighted, next press enter
    • A screen displaying partitions on sda appears. Press "Tab" to highlight "yes" and hit "return".

  • Menu: Configuring discover

    • How do you want to manage upgrades on this system? will appear here inside this menu.Depending on what options you are comfortable with, use the arrow key to highlight your option and hit “return”

    • No automatic updates is typically selected by developers so they can manage the system updates manually.

  • Menu: Software selection

    • Use the arrow keys to highlight your options and then the spacebar to select it. At minimum, following 2 options are recommended:
      • Basic Ubuntu server

      • OpenSSH server

    • Select Tab to highlight “continue” & hit “return” . This will kick off installation if the packages

  • Menu: Finish the installation

    • Select Tab to highlight “<Yes>” & hit “return”

  • Menu: Finish the installation

    • Select Tab to highlight “<Continue>” & hit “return”

Ubuntu Cloud image based installation instructions for x-gene Mustang reference board (ARM64)

  • NOTE: While this method is faster than netboot method described above, it is meant for expert Ubuntu developers and for engineering evaluation purposes only. Also, while the instructions use Ubuntu Wily (15.10) as example, they can be used for other Mustang enabled releases (15.04, 14.10 etc) by downloading the corresponding cloud images for those releases.

  • download the ARM64 cloud images from the following link

  • setup a default user/password for the cloud image

    • bzr branch lp:~smoser/+junk/backdoor-image

    • cd backdoor-image

    • sudo ./backdoor-image --user ubuntu --password ubuntu --password-auth ../wily-server-cloudimg-arm64-uefi1.img

  • copy the cloud image to the disk on Mustang

    • qemu-img convert -O raw wily-server-cloudimg-arm64-uefi1.img wily-server-cloudimg-arm64-uefi1-raw.img

    • booting mustang via nfs rootfs or ramdisk rootfs or mmc/usb rootfs
      • dd  if=wily-server-cloudimg-arm64-uefi1-raw.img  of=/dev/sda bs=1M

  • deselect other cloud data sources

    • The 1st booting may take more than 2 minutes. Once you login to Ubuntu successfully, you need to run 'sudo dpkg-reconfigure clound-init' to remove other data sources and just select the last data source - 'None: Failsafe datasource'.

ARM/Server/Install/Mustang (last edited 2016-02-17 16:57:00 by rkota)