We will install Linux (Linaro - supported by Qualcomm Landing Team) on the dragonboard (hence forth target) using fastboot.

96boards.org and Qualcomm developer program has some very useful resources. The information below is summarized from these sources with some additional inputs from my experience.Linux can be installed either using a SD card or directly from host machine. Since we are minimizing the use of monitor and keyboard, we will use host machine to install Linux. 

Prerequisites:

  • Make sure you have SU rights on the host machine.

  • Make sure the host machine has fastboot installed. If not, get it.

        sudo apt-get install android-tools-fastboot

 

Dragonboard in fastboot setup


Once you have fastboot installed, follow the steps below to install Linux. 

  • Download the necessary images from 96boards.org

  • Bring the target into fastboot

    • Set the switches on S6 to 0-0-0-0

    • Connect the micro-usb to target and host machine.

    • With Vol(-) button (S4) pressed, power up the board.

  • On the host machine, check for fastboot devices

            sudo fastboot devices

This is where I had a tough time and had to use the SD card for rescue image (if you run into this, the steps to overcome are given at the end)

  • Assuming you could detect the target in fastboot, run the following commands

    • Flash the boot loader image from dragonboard410c_bootloader_emmc_linux-BB

                sudo fastboot flash partition gpt_both0.bin fastboot flash hyp hyp.mbn
                sudo fastboot flash modem NON-HLOS.bin fastboot flash rpm rpm.mbn
                sudo fastboot flash sbl1 sbl1.mbn
                sudo fastboot flash sec sec.dat
                sudo fastboot flash tz tz.mbn
                sudo fastboot flash aboot emmc_appsboot.mbn
                sudo fastboot erase boot
                sudo fastboot erase rootfs
                sudo fastboot erase devinfo
  • Flash the boot image
                sudo fastboot flash boot boot-linaro-jessie-qcom-snapdragon-arm64-YYYYMMDD-UU.img 
  • Flash the rootfs image
                   sudo fastboot flash rootfs linaro-jessie-alip-qcom-snapdragon-arm64-YYYYMMDD-UU.img  

Power cycle the target and you should boot in Linux. It automatically logins into as user: linaro.

Make note of the user and password as they will be used in future.

User: linaro

Password: linaro

Dragonboard with HDMI and keyboard

Setup Wi-Fi:This is where I wish there was a RS232 communication. But you can borrow monitor and keyboard from the host machine and setup Wi-Fi.

  • Ping an external website to make sure Wi-Fi is connected and works as expected.

  • Ping host machine and make sure it is successful.

  • (ifconfig does not work on target, so use ip addr to get the ip address of the target)

  • Ping target from the host machine.

Static v/s dynamic IP: Depending on your router, every time you boot, you may get the same IP for both host and target. But if your IP happens to change, please consider using static IP for both host and target.

[Edit: 06/14/16] My IP address changed on the dragon board. I had to use the below command to retrieve the new IP address. If this continues to be a problem, I will use static IP

            arp -a 

 

If fastboot fails…

  • Insert the SD card into host machine.

  • Instead of command line options, use the startup disk creator tool to write rescue image on the SD card.

  • Disconnect the power from the target.

  • Insert the rescue SD card into the target.

  • Set the switches on S6 to 0-1-0-0

  • Power up the target.

  • You should detect device in fastboot.

  • Once images are loaded, remove the SD card and power cycle the target

    • It is OK to leave the switches in 0-1-0-0 position with no SD card. The switch positions determine the boot order and when SD card is not detected, it will fall back to eMMC.

 

References/Links:

Add comment


Security code
Refresh