2019.3.22[Zedboard上运行Linaro系统](三):编译内核和设备树

文章地址:http://blog.csdn.net/yake827/article/details/51980181

1.下载内核(建议直接下载xilinx-v15.2)

$ git clone https://github.com/Xilinx/linux-xlnx.git

$ cd linux

2.为方便管理,内核版本统一使用xilinx-v15.2

$ git checkout -bxilinx-v15.2

3.配置编译器环境

$ export ARCH=arm

$ export CROSS_COMPILE=arm-xilinx-linux-gnueabi-

4.配置内核环境

$make xilinx_zynq_defconfig

5.编译uImage内核程序,首先要把mkimage程序加载进去

$sudo apt-get install u-boot-tools

$ make uImage LOADADDR=0x00008000

编译完成后生成的uimage就是我们需要的内核映像程序。

6.编译设备树device tree

首先在arch/arm/boot/dts/zynq-zed.dts(gedit arch/arm/boot/dts/zynq-zed.dts)中更改bootargs,改为:

// bootargs =“console=ttyPS0,115200 root=/dev/ram rw initrd=0x1100000,33Mip=:::::eth0:dhcp earlyprintk”;

bootargs =“console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4rootwait devtmpfs.mount=0”;

完成这一步之后,linux就变为从SD卡的第二分区中挂载根文件系统。

其次,设备树进行卡一半内存作为共享内存留给PL-PS交互,修改设备树文件zynq-zed.dts,如下:
memory {
device_type = “memory”;
reg = <0x0 0x10000000>;
修改成功与否可以通过进入linux系统后,输入命令cat /proc/iomem,
查看SystemRAM,如果是00000000- 1fffffff,说明没有卡住内存,如果是到0fffffff说明卡内存成功。
接下来在内核中编译设备树文件。

$./scripts/dtc/dtc –I dts –O dtb -o devicetree.dtb arch/arm/boot/dts/zynq-zed.dts

编译出来的devicetree.dtb就是我们需要的设备树文件。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值