= Installing Precise (12.04.2) using netboot onto a Marvell ArmadaXP Development Board = == Before You Begin == You will need the following: 1. A management device for serial access to the board. 2. DHCP available for the board which will provide Internet access (to access the Ubuntu package archive). 3. A [[https://help.ubuntu.com/community/Installation/Netboot|TFTP Server]] accessible from the board and optionally a [[ https://help.ubuntu.com/community/PXEInstallServer | PXE Server ]] setup for PXE boot emulation. == Downloading the Installer == Download the Marvell ArmadaXP [[http://ports.ubuntu.com/dists/precise/main/installer-armhf/current/images/armadaxp/netboot/uImage|uImage]] and [[http://ports.ubuntu.com/dists/precise/main/installer-armhf/current/images/armadaxp/netboot/uInitrd|uInitrd]] and place them on an available [[https://help.ubuntu.com/community/Installation/Netboot|TFTP Server]]. == Booting the Installer == Access the Marvell ArmadaXP serial console, for example with "`screen /dev/ttyUSB0 115200`" on a management machine with a USB serial adaptor attached to it. Power on the board. Interrupt U-Boot by pressing Enter when prompted. === TFTP Boot === Type the following at the U-Boot prompt, replacing the IP address with the IP address of your TFTP Server: {{{ dhcp tftpboot 0x2000000 10.0.0.10:/uImage tftpboot 0x1100000 10.0.0.10:/uInitrd setenv bootargs "console=ttyS0,115200 earlyprintk=ttyS0 pm_disable" bootm 0x2000000 0x1100000 }}} This will boot into the installer. Follow the default partitioning scheme suggested. === PXE Boot === Type the following at the U-Boot prompt to boot using PXE boot emulation: {{{ dhcp pxe get pxe boot }}} This will boot into the installer. Follow the default partitioning scheme suggested. Note: you may need to "set pxefile_addr_r 0x7000000", "set kernel_addr_r 0x2000000", and "set ramdisk_addr_r 0x1100000" before this will work (don't forget to "save" those values). Here's a sample PXE configuration file: pxelinux.cfg/01-00-50-43-aa-bb-cc {{{ default armadaxp-precise prompt 0 timeout 1 label armadaxp-precise kernel /uImage initrd /uInitrd append console=ttyS0,115200 earlyprintk=ttyS0 pm_disable }}} == Booting into the Installed System == When the installer finishes and reboots, interrupt U-Boot again and type the following. If you used a different partitioning scheme, adjust the ext2load and root parameters accordingly. {{{ setenv bootcmd "ide reset; ext2load ide 0:1 0x2000000 uImage; ext2load ide 0:1 0x1100000 uInitrd; setenv bootargs console=ttyS0,115200 earlyprintk=ttyS0 root=/dev/sda2 ro pm_disable; bootm 0x2000000 0x1100000" save reset }}} Your system should now boot into the installed system, with U-Boot configured and verified to continue doing so on future reboots.