前言:

这段时间正在用dragonboard410c做个小项目,其中用的就是debian系统,由于涉及到底层需要修改dts以及编译驱动文件,故需要编译源码以及要用到编译好的镜像系统。在96board上也有相关过程的资料但都是英文的,废话不多说了,直接进入实际操作。


一、下载相关文件

1.debian16.04源码

https://git.linaro.org/landing-teams/working/qualcomm/kernel.git/snapshot/kernel-debian-qcom-dragonboard410c-16.04.tar.gz


2.交叉编译工具(gcc-linaro-4.9-2014.12.tar.xz)

http://releases.linaro.org/14.12/components/toolchain/gcc-linaro/4.9/gcc-linaro-4.9-2014.12.tar.xz



3.其他

http://builds.96boards.org/releases/dragonboard410c/linaro/debian/16.04/



二、编译源码

1.将下载好的交叉编译工具解压到自定义目录:

$ tar xvf gcc-linaro-aarch64-none-elf-4.9-2014.07_linux.tar.gz ~/toolchain/

记录bin目录的绝对地址:

cd ~/toolchain/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/
$ pwd


2.将下载好的源码包解压到自定义目录下:

$tar xvf kernel-debian-qcom-dragonboard410c-16.04.tar.gz ~/debian_410c/


3.定义编译源码工具,修改Makefile文件

$vim ~/debian_410c/kernel-debian-qcom-dragonboard410c-16.04/Makefile

将其中的:

ARCH           ?= $(SUBARCH)

#CROSS_COMPILE  ?= $(CONFIG_CROSS_COMPILE:"%"=%)

修改为:

ARCH=arm64
CROSS_COMPILE=<请填写在第一步记录下的绝对路径,如:>/home/winston/toolchain/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-

保存退出 :wq 


4.装载kernel配置文件

make defconfig distro.config


5.编译kernel、dts

make -j4 Image dtbs KERNELRELEASE=4.4.8-linaro-lt-qcom


三、打包镜像

1.将下载好的文件和ini文件解压到源码目录下

sudo apt-get install device-tree-compiler
cd ~/debian_410c/kernel-debian-qcom-dragonboard410c-16.04/
git clone git://codeaurora.org/quic/kernel/skales

2.打包dt.img:

./skales/dtbTool -o dt.img -s 2048 arch/arm64/boot/dts/qcom/

3.将下载好的initrd.img-4.4.8-linaro-lt-qcom文件到源码目录下:

mv ~/Download/initrd.img-4.4.8-linaro-lt-qcom ~/debian_410c/kernel-debian-qcom-dragonboard410c-16.04/

4.打包boot.img

./skales/mkbootimg --kernel arch/arm64/boot/Image \
                   --ramdisk initrd.img-4.4.8-linaro-lt-qcom \
                   --output boot-db410c.img \
                   --dt dt.img \
                   --pagesize 2048 \
                   --base 0x80000000 \
                   --cmdline "root=/dev/disk/by-partlabel/rootfs rw rootwait console=ttyMSM0,115200n8"

四、安装系统

1.将开发板进入到fastboot模式

首先需要确保S6处于0-0-0-0状态,然后需要通过usb连接到PC机。进入fastboot有两种方法,一种是通过sudo adb reboot bootloader命令进入,另一种是在启动时按住S4(音量 -)键。

$sudo fastboot devices      //查看设备是否已经连上

2.使用fastboot方式安装boot

$sudo fastboot flash boot boot-db410c.img

3.使用fastboot方式安装rootfs

$sudo fastboot flash rootfs  linaro-jessie-developer-qcom-snapdragon-arm64-20160428-83.img   

4.启动开发板并进入系统

$sudo fastboot reboot  

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐