Xinxin_2011 发表于 2014-10-31 08:47:25

关于Linux内核设备树问题

从官网下载3288的SDK包
查了一下kernel/arch/arm/boot/dts/Makefile文件,发现:
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3188-tb.dtb
也就是选择ROCKCHIP平台,编译的是 rk3188-tb.dtb,里面包含的也都是3188的dts文件,并没有编译rk3288的dts文件啊

ZZP 发表于 2014-10-31 10:20:42

我手头上有一款Firefly开发板,主控的确是rk3288的,估计是一些编译脚本可以通用的吧。

busybee 发表于 2014-10-31 10:58:03

本帖最后由 busybee 于 2014-10-31 10:59 编辑

楼主看得很仔细啊!

答案就在 kernel/arch/arm/Makefile 文件的最后几行:
LOGO := $(notdir $(wildcard $(srctree)/logo.bmp))
%.img: %.dtb kernel.img $(LOGO)

编译内核时有句命令是:
make firefly-rk3288_beta.img

这样,上面的规则就会展开成:
LOGO := $(notdir $(wildcard $(srctree)/logo.bmp))
firefly-rk3288_beta.img: firefly-rk3288_beta.dtb kernel.img $(LOGO)

于是构建系统就会编译 firefly-rk3288_beta.dts 得到 firefly-rk3288_beta.dtb 来满足上面的规则。

Xinxin_2011 发表于 2014-10-31 11:49:08

楼上正解,我用的是kernel/arch/arm/configs/firefly-rk3288_gc_defconfig配置文件,因而执行make firefly-rk3288_gc.img,编译的firefly-rk3288_gc.dts,感谢解惑。

Zhou 发表于 2014-11-4 17:21:29

同样疑问,感谢板凳!
另外:
E:\1828.png
页: [1]
查看完整版本: 关于Linux内核设备树问题