Partial Migration of RPB CE and EE wiki pages.
Signed-off-by: Robert Wolff <robert.wolff@linaro.org>
This commit is contained in:
parent
cc464c98ca
commit
25eae6fe03
26 changed files with 3302 additions and 45 deletions
BIN
Reference-Platform/ConsumerEdition/DragonBoard-410c/.DS_Store
vendored
Normal file
BIN
Reference-Platform/ConsumerEdition/DragonBoard-410c/.DS_Store
vendored
Normal file
Binary file not shown.
|
@ -0,0 +1,46 @@
|
|||
## AOSP RPB 16.03 - Build from Source
|
||||
|
||||
Additional AOSP repositories are hosted at:
|
||||
- [https://github.com/96boards/android_device_linaro_db410c](https://github.com/96boards/android_device_linaro_db410c)
|
||||
- [https://github.com/96boards/android_manifest](https://github.com/96boards/android_manifest)
|
||||
- [https://github.com/rsalveti/linux (branch qcomlt-4.4)](https://github.com/rsalveti/linux)
|
||||
- [https://github.com/robherring/mesa](https://github.com/robherring/mesa)
|
||||
- [https://github.com/robherring/drm_gralloc](https://github.com/robherring/drm_gralloc)
|
||||
- https://github.com/robherring/drm_hwcomposer](https://github.com/robherring/drm_hwcomposer)
|
||||
|
||||
*Build setup:*
|
||||
|
||||
Please setup the host machine by following the instructions here: [http://source.android.com/source/initializing.html](http://source.android.com/source/initializing.html)
|
||||
|
||||
Also install make sure to install the following packages:
|
||||
|
||||
```shell
|
||||
sudo apt-get install libfdt-dev python-mako get text
|
||||
```
|
||||
|
||||
*Download the firmware blobs:*
|
||||
|
||||
```shell
|
||||
mkdir android/
|
||||
cd android/
|
||||
mkdir -p vendor/db410c
|
||||
cd vendor/db410c
|
||||
wget http://developer.qualcomm.com/download/db410c/firmware-410c-1.2.0.bin
|
||||
sh firmware-410c-1.2.0.bin
|
||||
cd -
|
||||
```
|
||||
|
||||
*Build the image:*
|
||||
|
||||
```shell
|
||||
repo init -u https://android.googlesource.com/platform/manifest -b android-6.0.1_r16
|
||||
cd .repo
|
||||
git clone https://github.com/96boards/android_manifest -b android-6.0-db410c local_manifests
|
||||
cd -
|
||||
repo sync -j8
|
||||
source build/envsetup.sh
|
||||
lunch db410c-userdebug
|
||||
make droidcore -j8
|
||||
cd out/target/product/db410c
|
||||
```
|
||||
|
|
@ -0,0 +1,280 @@
|
|||
## Debian RPB 16.03 - Build from Source
|
||||
|
||||
- Building Linux Kernel from Source
|
||||
- Step 1: Setting up your environment on your host computer
|
||||
- Step 2: Download the Linaro cross compiler toolchain and Skales Tool
|
||||
- Step 3: Export path to cross compiler tool and confirm version
|
||||
- Step 4: Clone the Reference Platform kernel
|
||||
- Step 5: Set the right kernel .config file
|
||||
- Step 6: Build kernel image
|
||||
- Step 7: Copy Modules
|
||||
- Step 8: Find kernel release string
|
||||
- Step 9: Generate modules.dep and map files
|
||||
- Step 10: Find DragonBoard™ 410c IP Address
|
||||
- Step 11: Transfer the modules to the target DragonBoard™ 410c
|
||||
- [Step 12: Generate the initramfs
|
||||
- [Step 13: Create the device tree image and boot image
|
||||
- Customize Bootloader
|
||||
- Build Rootfs from source
|
||||
|
||||
***
|
||||
|
||||
#### Building the Linux kernel from source
|
||||
|
||||
The Linux kernel used in this release is available via tags in the git [repository](https://github.com/96boards/linux)
|
||||
|
||||
```shell
|
||||
git: https://github.com/96boards/linux
|
||||
tag: 96b-kernelci
|
||||
defconfig: arch/arm64/defconfig kernel/configs/distro.config
|
||||
```
|
||||
|
||||
The kernel image (`Image`) is located in the `boot` image and partition and the kernel modules are installed in the root file system. It is possible for a user to rebuild the kernel and run a custom kernel image instead of the released kernel. You can build the kernel using any recent GCC release using the git tree, tag and defconfig mentioned above. This release only supports booting with device tree, as such both the device tree blobs need to be built as well.
|
||||
|
||||
The DragonBoard 410c is an ARMv8 platform, and the kernel is compiled for the Aarch64 target. Even though it is possible to build natively, on the target board, It is recommended to build the Linux kernel on a PC development host. In which case you need to install a cross compiler for the ARM architecture. It is recommended to download the Linaro GCC cross compiler [Aarch64 little-endian](http://releases.linaro.org/components/toolchain/binaries/latest-5.1/aarch64-linux-gnu/gcc-linaro-5.1-2015.08-x86_64_aarch64-linux-gnu.tar.xz).
|
||||
|
||||
To build the Linux kernel, you can use the following instructions:
|
||||
|
||||
#### Step 1: Setting up your environment on your host computer
|
||||
|
||||
- Open your Terminal and cd into your desired directory
|
||||
- Make a new folder using `mkdir` and call is something relevant
|
||||
|
||||
```shell
|
||||
#Example of desired directory
|
||||
$ cd ~/Desktop
|
||||
|
||||
#Example of relevant folder
|
||||
$ mkdir DB410c-16.03
|
||||
$ cd DB410c-16.03
|
||||
```
|
||||
|
||||
#### Step 2: Download the Linaro cross compiler toolchain and Skales Tool
|
||||
|
||||
- From within the directory you just made
|
||||
- Download and unzip by executing the following commands
|
||||
|
||||
###### Linaro Cross Compiler
|
||||
|
||||
```shell
|
||||
#Download
|
||||
$ wget http://releases.linaro.org/components/toolchain/binaries/latest-5.1/aarch64-linux-gnu/gcc-linaro-5.1-2015.08-x86_64_aarch64-linux-gnu.tar.xz
|
||||
#Unzip
|
||||
$ tar -Jxvf gcc-linaro-5.1-2015.08-x86_64_aarch64-linux-gnu.tar.xz
|
||||
```
|
||||
|
||||
###### Skales tool
|
||||
|
||||
```shell
|
||||
$ sudo apt-get install libfdt-dev
|
||||
$ git clone git://codeaurora.org/quic/kernel/skales /tmp/skales
|
||||
$ export PATH=$PATH:/tmp/skales
|
||||
```
|
||||
>Skales will be used later when creating the device tree
|
||||
|
||||
|
||||
#### Step 3: Export path to cross compiler tool and confirm version
|
||||
|
||||
- Exporting path will allow build system can find and use the right kernel
|
||||
|
||||
```shell
|
||||
#Create path
|
||||
$ export PATH=gcc-linaro-5.1-2015.08-x86_64_aarch64-linux-gnu/bin/:$PATH
|
||||
#Check version
|
||||
$ aarch64-linux-gnu-gcc --version
|
||||
aarch64-linux-gnu-gcc (Linaro GCC 5.1-2015.08) 5.1.1 20150608
|
||||
Copyright (C) 2015 Free Software Foundation, Inc.
|
||||
This is free software; see the source for copying conditions. There is NO
|
||||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
```
|
||||
|
||||
#### Step 4: Clone the Reference Platform kernel
|
||||
|
||||
- **96b-kernelci** is the development branch
|
||||
- This branch will have the latest changes
|
||||
|
||||
```shell
|
||||
$ git clone -b 96b-kernelci http://github.com/96boards/linux.git
|
||||
```
|
||||
|
||||
- Cloning the kernel may take a few minutes
|
||||
- Once kernel source has been cloned cd into its directory
|
||||
|
||||
```shell
|
||||
$ cd kernel
|
||||
```
|
||||
|
||||
#### Step 5: Set the right kernel .config file
|
||||
|
||||
- This step creates the '.config' file
|
||||
- The .config file is used by the build system when compiling the kernel
|
||||
- Current Reference Platform config can be made by using distro.config
|
||||
- From with in kernel directory execute the following command:
|
||||
|
||||
```shell
|
||||
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig distro.config
|
||||
```
|
||||
|
||||
- New .config file will be hidden but can be seen by executing `ls -a` from within kernel folder
|
||||
- To view all current configuration the .config file can be opened with a text editor such a `vim`
|
||||
|
||||
#### Step 6: Build kernel image
|
||||
|
||||
- This step will take some time (~20-30 minutes or more), depending on your cpu/memory
|
||||
|
||||
```shell
|
||||
#Replace X from -jX with the number of cores on your host computer
|
||||
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -jX
|
||||
```
|
||||
|
||||
#### Step 7: Copy Modules
|
||||
|
||||
- Modules must be local (host computer) before transferring to target device
|
||||
- Still within linux directory
|
||||
- Make temp folder
|
||||
- Create modules
|
||||
|
||||
```shell
|
||||
$ mk tmp/modules
|
||||
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- modules_install INSTALL_MOD_PATH=/tmp/modules INSTALL_MOD_STRIP=1
|
||||
```
|
||||
|
||||
#### Step 8: Find kernel release string
|
||||
|
||||
- This was created during the kernel build
|
||||
- In this example the kernel.release is 4.4.0+
|
||||
|
||||
```shell
|
||||
$ cat include/config/kernel.release
|
||||
#Output
|
||||
$ 4.4.0+
|
||||
```
|
||||
|
||||
#### Step 9: Generate modules.dep and map files
|
||||
|
||||
- Helps kernel find modules when system boots
|
||||
- Note: `4.4.0+` was the output from `cat include/config/kernel.release` in Step 8
|
||||
|
||||
```shell
|
||||
$ depmod -a -b /tmp/modules 4.4.0+
|
||||
```
|
||||
|
||||
#### Step 10: Find DragonBoard™ 410c IP Address
|
||||
|
||||
- On your DragonBoard™ 410c
|
||||
- Connect to the internet through WIFI
|
||||
- Open one of the Terminal applications
|
||||
|
||||
```shell
|
||||
$ /sbin/ifconfig
|
||||
```
|
||||
- Look for your `wlan0` connection
|
||||
- Here you will see an `inet addr`
|
||||
- This is your board's IP address and should look something like this: `192.168.0.10`
|
||||
|
||||
#### Step 11: Transfer the modules to the target DragonBoard™ 410c
|
||||
|
||||
- Using your board's IP Address for linaro@<yourIPaddress>
|
||||
|
||||
```shell
|
||||
$ tar -cjf /tmp/modules.tar.bz2 -C /tmp modules
|
||||
$ scp /tmp/modules.tar.bz2 linaro@192.168.1.15:~/
|
||||
$ ssh linaro@192.168.1.15
|
||||
#DragonBoard™ 410c shell
|
||||
db410c $ tar -jxvf modules.tar.bz2
|
||||
db410c $ sudo cp -r modules/lib/modules/4.4.0+ /lib/modules/
|
||||
```
|
||||
|
||||
#### Step 12: Generate the initramfs
|
||||
|
||||
- You should still be in the DragonBoard™ 410c shell
|
||||
|
||||
```shell
|
||||
db410c $ sudo update-initramfs -k 4.4.0+ -c
|
||||
```
|
||||
|
||||
- Copy back the new initramfs
|
||||
- This will be used when creating the boot.mg
|
||||
|
||||
#### Step 13: Create the device tree image and boot image
|
||||
|
||||
###### Device tree
|
||||
|
||||
```shell
|
||||
$ dtbTool -o dt.img -s 2048 arch/arm64/boot/dts/qcom
|
||||
```
|
||||
|
||||
###### Boot image
|
||||
|
||||
```shell
|
||||
$ mkbootimg --kernel arch/arm64/boot/Image --ramdisk initrd.img-4.4.0+ --output boot.img --dt dt.img --pagesize "2048" --base "0x80000000" --cmdline "root=/dev/disk/by-partlabel/rootfs rw rootwait console=tty0 console=ttyMSM0,115200n8"
|
||||
```
|
||||
|
||||
Congratulations! Boot image is now ready to be flashed to your DragonBoard™ 410c.
|
||||
|
||||
- Flashing the boot image can be done using fastboot
|
||||
- Board must be booted into fastboot mode
|
||||
- With USB to microUSB cable still connect execute the following:
|
||||
|
||||
```shell
|
||||
$ sudo fastboot flash boot boot.img
|
||||
$ sudo fastboot reboot
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
### How to get and customize the bootloader
|
||||
|
||||
While the first stage bootloader is proprietary and released as firmware blob available on [Qualcomm Developer Network](https://developer.qualcomm.com/download/linux-ubuntu-board-support-package-v1.zip), the second stage bootloader is `LK` and is open source.
|
||||
|
||||
The original LK source code is available on [CodeAurora.org](https://www.codeaurora.org/cgit/quic/la/kernel/lk/), and the source code which is used in this release can be found in the [Linaro Qualcomm Landing Team git repository](https://git.linaro.org/landing-teams/working/qualcomm/lk.git):
|
||||
|
||||
```shell
|
||||
git: http://git.linaro.org/landing-teams/working/qualcomm/lk.git
|
||||
tag: ubuntu-qcom-dragonboard410c-LA.BR.1.2.4-00310-8x16.0-linaro1
|
||||
```
|
||||
|
||||
To build the LK bootloader, you can use the following instructions:
|
||||
|
||||
```shell
|
||||
git clone git://codeaurora.org/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8.git -b LA.BR.1.1.3.c4-01000-8x16.0
|
||||
git clone http://git.linaro.org/landing-teams/working/qualcomm/lk.git -b ubuntu-qcom-dragonboard410c-LA.BR.1.2.4-00310-8x16.0-linaro1
|
||||
cd lk
|
||||
make -j4 msm8916 EMMC_BOOT=1 TOOLCHAIN_PREFIX=<path to arm-eabi-4.8 tree>/bin/arm-eabi-
|
||||
```
|
||||
|
||||
The second stage bootloader is flashed on the `about` partition, you can now flash your board with:
|
||||
|
||||
```shell
|
||||
sudo fastboot aboot ./build-msm8916/emmc_appsboot.mbn
|
||||
```
|
||||
|
||||
#### How to get and customize Debian packages source code
|
||||
|
||||
This release is based on Debian 8.2 "Jessie".
|
||||
|
||||
Since all packages installed in Linaro Debian-based images are maintained either in Debian archives or in Linaro repositories, it is possible for users to update their environment with commands such as:
|
||||
|
||||
```shell
|
||||
sudo apt-get update
|
||||
sudo apt-get upgrade
|
||||
```
|
||||
|
||||
All user space software is packaged using Debian packaging process. As such you can find extensive information about using, patching and building packages in The Debian New Maintainers Guide. If you quickly want to rebuild any package, you can run the following commands to fetch the package source code and install all build dependencies:
|
||||
|
||||
```shell
|
||||
sudo apt-get update
|
||||
sudo apt-get build-dep <pkg>
|
||||
apt-get source <pkg>
|
||||
```
|
||||
|
||||
Then you can rebuild the package locally with:
|
||||
|
||||
```
|
||||
cd <pkg-version>
|
||||
dpkg-buildpackage -b -us -uc
|
||||
```
|
||||
|
||||
#### TO-DO
|
||||
|
||||
- Explain how to build the rootfs from source
|
|
@ -0,0 +1,155 @@
|
|||
[<img src="http://i.imgur.com/jl4GG0d.png" data-canonical-src="http://i.imgur.com/jl4GG0d.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/yRQKDI6.png" data-canonical-src="http://i.imgur.com/yRQKDI6.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/7wy1996.png" data-canonical-src="http://i.imgur.com/7wy1996.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/yRQKDI6.png" data-canonical-src="http://i.imgur.com/yRQKDI6.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/tXXN5bZ.png" data-canonical-src="http://i.imgur.com/tXXN5bZ.png" width="125" height="157" />]()
|
||||
|
||||
>**Note:** CE AOSP RPB - 16.03 is a Developer Preview operating system
|
||||
|
||||
***
|
||||
|
||||
#### Step 1: Read about the Fastboot Method
|
||||
|
||||
Fastboot is supported by the board and can be used for installs. This is for advanced users who are most likely modifying/customizing source code and will need to download such updates to the board for test/execution.
|
||||
|
||||
This method requires the following hardware:
|
||||
- DragonBoard™ 410c with power supply
|
||||
- Host machine (Linux, Mac OS X, or Windows)
|
||||
- USB to microUSB cable
|
||||
- USB Mouse and/or keyboard (not required to perform flash)
|
||||
- HDMI Monitor with full size HDMI cable (not required to perform flash)
|
||||
|
||||
***
|
||||
|
||||
#### Step 2: Download Android Bootloader and Boot file
|
||||
|
||||
- Android Bootloader ([Direct Download](https://builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/dragonboard410c_bootloader_emmc_android-*.zip) / <a href="https://builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/" target="_blank">Build Folder</a> )
|
||||
- Android Boot ([Direct Download](https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/boot-db410c.img.xz) / <a href="https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/" target="_blank">Build Folder</a> )
|
||||
|
||||
>Note the location of all downloads, they will be needed once you access your instruction set
|
||||
|
||||
#### Step 3: Download all remaining files
|
||||
|
||||
- system.img ([Direct Download](https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/system.img.xz) / <a href="https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/" target="_blank">Build Folder</a> )
|
||||
- userdata.img ([Direct Download](https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/userdata.img.xz) / <a href="https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/" target="_blank">Build Folder</a> )
|
||||
- cache.img ([Direct Download](https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/cache.img.xz) / <a href="https://builds.96boards.org/releases/reference-platform/aosp/dragonboard410c/16.03/" target="_blank">Build Folder</a> )
|
||||
|
||||
>Note the location of all downloads, they will be needed once you access your instruction set
|
||||
|
||||
***
|
||||
#### Step 4: Install Android using Fastboot with Linux host
|
||||
|
||||
This section show how to install the Android operating system to your DragonBoard™ 410c using the fastboot method on a Mac OS X host computer.
|
||||
|
||||
1 - **Make sure fastboot is set up on host computer**
|
||||
|
||||
- Android SDK “Tools only” for Linux can be downloaded <a href="http://developer.android.com/sdk" target="_blank">here</a>
|
||||
- The Linux “Tools Only” SDK download does not come with fastboot, you will need to use the Android SDK Manager to install platform-tools.
|
||||
- To do this follow the “SDK Readme.txt” instructions included in your SDK “Tools Only” download.
|
||||
|
||||
If you are still having trouble setting up fastboot, <a href="https://youtu.be/W_zlydVBftA" target="_blank">click here</a> for a short tutorial video
|
||||
|
||||
2 - **Connect host computer to DragonBoard™ 410c**
|
||||
|
||||
- DragonBoard™ 410c must be powered off (unplugged from power)
|
||||
- Make sure microSD card slot on DragonBoard™ 410c is empty
|
||||
- S6 switch on DragonBoard™ 410c must be set to ‘0-0-0-0’. All switches should be in “off” position
|
||||
- Connect USB to microUSB cable from host computer to DragonBoard™ 410c
|
||||
|
||||
3 - **Boot DragonBoard™ 410c into fastboot mode**
|
||||
|
||||
**Please read all bullet points before attempting**
|
||||
|
||||
- Press and hold the Vol (-) button on the DragonBoard™ 410c, this is the S4 button. DragonBoard™ 410c should still NOT be powered on
|
||||
- While holding the Vol (-) button, power on the DragonBoard™ 410c by plugging it in
|
||||
- Once DragonBoard™ 410c is plugged into power, release your hold on the Vol (-) button.
|
||||
- Board should boot into fastboot mode.
|
||||
|
||||
From the connected host machine terminal window, run the following commands:
|
||||
|
||||
```shell
|
||||
# Check to make sure device is connected and in fastboot mode
|
||||
|
||||
fastboot devices
|
||||
```
|
||||
|
||||
**At this point you should be connected to your DragonBoard™ 410c with a USB to microUSB cable. Your DragonBoard™ 410c should be booted into fastboot mode and ready to be flashed with the appropriate images.**
|
||||
|
||||
4 - **Flash Bootloader**
|
||||
|
||||
- Use host computer
|
||||
- Open "Terminal" application
|
||||
- Recall location of Bootloader download.
|
||||
- The bootloader file should be named `dragonboard410c_bootloader_emmc_android`
|
||||
- `cd` to the directory with your unzipped **Bootloader Folder**
|
||||
|
||||
```shell
|
||||
cd <extraction directory>
|
||||
|
||||
#Example:
|
||||
cd /Users/YourUserName/Downloads
|
||||
#<extraction directory> = /Users/YourUserName/Downloads
|
||||
#For this example we assume the "Bootloader" is in the Downloads folder.
|
||||
|
||||
|
||||
cd <unzipped Bootloader folder>
|
||||
|
||||
#Example:
|
||||
cd dragonboard410c_bootloader_emmc_android
|
||||
#<unzipped Bootloader folder> = dragonboard410c_bootloader_emmc_android
|
||||
|
||||
# This command will execute the flashall script within the bootloader folder
|
||||
./flashall
|
||||
|
||||
```
|
||||
|
||||
5 - **Recall location of all downloaded files from downloads page**
|
||||
|
||||
This will include the files listed below:
|
||||
|
||||
###### Reference Platform files
|
||||
|
||||
- boot.img.tar.xz
|
||||
- system.img.tar.xz
|
||||
- userdata.img.tar.xz
|
||||
- cache.img.tar.xz
|
||||
|
||||
6 - **Unzip all files**
|
||||
|
||||
7 - **Flash all files to the DragonBoard™ 410c**
|
||||
|
||||
- Use host computer
|
||||
- Use "Terminal" application
|
||||
- Recall location of all extracted(unzipped) files
|
||||
- `cd` to the directory with your unzipped files
|
||||
- From within extraction directory, execute the following commands:
|
||||
|
||||
###### Reference Platform
|
||||
|
||||
```shell
|
||||
# (Once again) Check to make sure fastboot device connected
|
||||
sudo fastboot devices
|
||||
|
||||
# cd to the directory the boot image and were extracted
|
||||
$ cd <extraction directory>
|
||||
|
||||
# Make sure you have properly unzipped the downloads
|
||||
sudo fastboot flash boot boot.img
|
||||
sudo fastboot flash system system.img
|
||||
sudo fastboot flash userdata userdata.img
|
||||
sudo fastboot flash cache cache.img
|
||||
```
|
||||
|
||||
8 - **Reboot DragonBoard™ 410c**
|
||||
|
||||
- Unplug power to DragonBoard™ 410c
|
||||
- Unplug micro USB cable from DragonBoard™ 410c
|
||||
- Ensure HDMI connection to monitor
|
||||
- Ensure keyboard and/or mouse connection (Depending on your rootfs selection)
|
||||
- Plug power back into DragonBoard™ 410c
|
||||
- Wait for board to boot up
|
||||
- Board will boot into Android lock screen.
|
||||
|
||||
**Congratulations! You are now booting your newly installed OS directly
|
||||
from eMMC on the DragonBoard™ 410c!**
|
||||
|
|
@ -0,0 +1,153 @@
|
|||
[<img src="http://i.imgur.com/jl4GG0d.png" data-canonical-src="http://i.imgur.com/jl4GG0d.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/yRQKDI6.png" data-canonical-src="http://i.imgur.com/yRQKDI6.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/OQGR5yY.png" data-canonical-src="http://i.imgur.com/OQGR5yY.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/yRQKDI6.png" data-canonical-src="http://i.imgur.com/yRQKDI6.png" width="125" height="157" />]()
|
||||
[<img src="http://i.imgur.com/tXXN5bZ.png" data-canonical-src="http://i.imgur.com/tXXN5bZ.png" width="125" height="157" />]()
|
||||
|
||||
|
||||
***
|
||||
|
||||
#### Step 1: Read about the Fastboot Method
|
||||
|
||||
Fastboot is supported by the board and can be used for installs. This is for advanced users who are most likely modifying/customizing source code and will need to download such updates to the board for test/execution.
|
||||
|
||||
This method requires the following hardware:
|
||||
- DragonBoard™ 410c with power supply
|
||||
- Host machine (Linux, Mac OS X, or Windows)
|
||||
- USB to microUSB cable
|
||||
- USB Mouse and/or keyboard (not required to perform flash)
|
||||
- HDMI Monitor with full size HDMI cable (not required to perform flash)
|
||||
|
||||
***
|
||||
|
||||
#### Step 2: Download Debian Bootloader and Boot file
|
||||
|
||||
- Debian Bootloader ([Direct Download](https://builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/dragonboard410c_bootloader_emmc_linux-*.zip) / <a href="https://builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/" target="_blank">Build Folder</a> )
|
||||
- Debian Boot ([Direct Download](https://builds.96boards.org/releases/reference-platform/debian/dragonboard410c/16.03/dragonboard410c-boot-linux-*.img.gz) / <a href="https://builds.96boards.org/releases/reference-platform/debian/dragonboard410c/16.03/" target="_blank">Build Folder</a> )
|
||||
|
||||
#### Step 3: Download Root File System
|
||||
|
||||
- Debian Rootfs (Desktop) ([Direct Download](https://builds.96boards.org/releases/reference-platform/debian/dragonboard410c/16.03/dragonboard410c-rootfs-debian-jessie-alip-*.emmc.img.gz) / <a href="https://builds.96boards.org/releases/reference-platform/debian/dragonboard410c/16.03/" target="_blank">Build Folder</a> )
|
||||
|
||||
>Note the location of all downloads, they will be needed once you access your instruction set
|
||||
|
||||
***
|
||||
#### Step 4: Install Debian Using Fastboot with Linux host
|
||||
|
||||
This section show how to install the Linaro based Debian operating system to your DragonBoard™ 410c using the fastboot method on a Linux host computer.
|
||||
|
||||
1 - **Make sure fastboot is set up on host computer**
|
||||
|
||||
- Android SDK “Tools only” for Linux can be downloaded <a href="http://developer.android.com/sdk" target="_blank">here</a>
|
||||
- The Linux “Tools Only” SDK download does not come with fastboot, you will need to use the Android SDK Manager to install platform-tools.
|
||||
- To do this follow the “SDK Readme.txt” instructions included in your SDK “Tools Only” download.
|
||||
|
||||
If you are still having trouble setting up fastboot, <a href="https://youtu.be/W_zlydVBftA" target="_blank">click here</a> for a short tutorial video
|
||||
|
||||
2 - **Connect host computer to DragonBoard™ 410c**
|
||||
|
||||
- DragonBoard™ 410c must be powered off (unplugged from power)
|
||||
- Make sure microSD card slot on DragonBoard™ 410c is empty
|
||||
- S6 switch on DragonBoard™ 410c must be set to ‘0-0-0-0’. All switches should be in “off” position
|
||||
- Connect USB to microUSB cable from host computer to DragonBoard™ 410c
|
||||
|
||||
3 - **Boot DragonBoard™ 410c into fastboot mode**
|
||||
|
||||
**Please read all bullet points before attempting**
|
||||
|
||||
- Press and hold the Vol (-) button on the DragonBoard™ 410c, this is the S4 button. DragonBoard™ 410c should still NOT be powered on
|
||||
- While holding the Vol (-) button, power on the DragonBoard™ 410c by plugging it in
|
||||
- Once DragonBoard™ 410c is plugged into power, release your hold on the Vol (-) button.
|
||||
- Wait for about 20 seconds.
|
||||
- Board should boot into fastboot mode.
|
||||
|
||||
From the connected host machine terminal window, run the following commands:
|
||||
|
||||
```shell
|
||||
# Check to make sure device is connected and in fastboot mode
|
||||
|
||||
$ fastboot devices
|
||||
```
|
||||
|
||||
Typically it will show as bellow
|
||||
```shell
|
||||
de82318 fastboot
|
||||
```
|
||||
|
||||
**At this point you should be connected to your DragonBoard™ 410c with a USB to microUSB cable. Your DragonBoard™ 410c should be booted into fastboot mode and ready to be flashed with the appropriate images.**
|
||||
|
||||
4 - **Flash Bootloader**
|
||||
|
||||
- Use host computer
|
||||
- Open "Terminal" application
|
||||
- Recall location of Bootloader download.
|
||||
- The bootloader file should be named `dragonboard410c_bootloader_emmc_linux-XX`
|
||||
- XX represents the release number of the Bootloader
|
||||
- `cd` to the directory with your unzipped **Bootloader Folder**
|
||||
|
||||
```shell
|
||||
$ cd <extraction directory>
|
||||
|
||||
#Example:
|
||||
cd /Users/YourUserName/Downloads
|
||||
#<extraction directory> = /Users/YourUserName/Downloads
|
||||
#For this example we assume the "Bootloader" is in the Downloads folder.
|
||||
|
||||
|
||||
$ cd <unzipped Bootloader folder>
|
||||
|
||||
#Example:
|
||||
cd dragonboard410c_bootloader_emmc_linux-40
|
||||
#<unzipped Bootloader folder> = dragonboard410c_bootloader_emmc_linux-40
|
||||
#This example took place during release 40
|
||||
|
||||
# This command will execute the flashall script within the bootloader folder
|
||||
$ ./flashall
|
||||
|
||||
```
|
||||
|
||||
5 - **Recall location of `boot` and `rootfs` download from the downloads page**
|
||||
|
||||
- You should have downloaded the `boot` file
|
||||
- You should have downloaded ONE of rootfs` file (Either `Developer` or `Desktop - ALIP` version)
|
||||
|
||||
6 - **Unzip both 'boot' and 'rootfs' files**
|
||||
|
||||
7 - **Flash `boot` image and `rootfs` to the DragonBoard™ 410c**
|
||||
|
||||
- Use host computer
|
||||
- Use "Terminal" application
|
||||
- Recall location of extracted(unzipped) `boot` file
|
||||
- Recall location of extracted(unzipped) `rootfs` file (`Developer` or `Desktop - ALIP`)
|
||||
- `cd` to the directory with your unzipped `boot` and `rootfs` files
|
||||
- From within extraction directory, execute the following commands:
|
||||
|
||||
```shell
|
||||
# (Once again) Check to make sure fastboot device connected
|
||||
$ sudo fastboot devices
|
||||
# It will show similar to bellow if the device is connected successfully
|
||||
de82318 fastboot
|
||||
|
||||
# cd to the directory the boot image and were extracted
|
||||
$ cd <extraction directory>
|
||||
|
||||
# Make sure you have properly unzipped the boot and rootfs downloads
|
||||
$ sudo fastboot flash boot boot-linaro-jessie-qcom-snapdragon-arm64-**BUILD#**.img
|
||||
$ sudo fastboot flash rootfs linaro-jessie-developer-qcom-snapdragon-arm64-**BUILD#**.img
|
||||
```
|
||||
**Note**: Replace **BUILD#** in the above commands with the file-specific date/build stamp.
|
||||
|
||||
8 - **Reboot DragonBoard™ 410c**
|
||||
|
||||
- Unplug power to DragonBoard™ 410c
|
||||
- Unplug micro USB cable from DragonBoard™ 410c
|
||||
- Ensure HDMI connection to monitor
|
||||
- Ensure keyboard and/or mouse connection (Depending on your rootfs selection)
|
||||
- Plug power back into DragonBoard™ 410c
|
||||
- Wait for board to boot up
|
||||
- Board will boot into either command line or desktop depending on rootfs
|
||||
|
||||
**Note:** the **username** and **password** are both **“linaro”** when the login information is requested.
|
||||
|
||||
**Congratulations! You are now booting your newly installed OS directly
|
||||
from eMMC on the DragonBoard™ 410c!**
|
Loading…
Add table
Add a link
Reference in a new issue