【发布时间】:2013-12-29 04:53:35
【问题描述】:
正在阅读 Device Tree Usage 并到达描述节点的 ranges 键属性的部分。
external-bus {
#address-cells = <2>
#size-cells = <1>;
ranges = <0 0 0x10100000 0x10000 // Chipselect 1, Ethernet
1 0 0x10160000 0x10000 // Chipselect 2, i2c controller
2 0 0x30000000 0x1000000>; // Chipselect 3, NOR Flash
ethernet@0,0 {
compatible = "smc,smc91c111";
reg = <0 0 0x1000>;
interrupts = < 5 2 >;
};
i2c@1,0 {
compatible = "acme,a1234-i2c-bus";
#address-cells = <1>;
#size-cells = <0>;
reg = <1 0 0x1000>;
interrupts = < 6 2 >;
rtc@58 {
compatible = "maxim,ds1338";
reg = <58>;
interrupts = < 7 3 >;
};
};
flash@2,0 {
compatible = "samsung,k8f1315ebm", "cfi-flash";
reg = <2 0 0x4000000>;
};
};
-
ranges和reg有什么区别? - 范围的维度是多少,解析器如何确定其中写入的内容?
- 缺少一个我还不明白的部分?不能在
.dts文件中包含.h文件而不是硬编码值?
【问题讨论】:
标签: linux kernel device device-tree