当您开始处理它时,我们是否必须浏览Linux内核的设备树绑定文档。
设备树中是否没有标准的字段集,后面是所有发行版/内核源?
其次,我需要一些关于使用设备树在gpio总线上添加设备节点的指导。我已经咨询了http://devicetree.org/Device_Tree_Usage。
答案 0 :(得分:0)
stackoverflow-query here应该指向设备树上的文档。在使用它之前,最好先阅读文档。
至于你的gpio设备(我假设你已经在dts / dtsi文件中安装了gpio控制器),arch / arc / boot / dts下应该有很多。选择一个:)!
答案 1 :(得分:0)
SoC中外围设备的设备树绑定:
以v5.1内核为例,以下列出了SoC上各种外围设备的设备树绑定。
链接: https://elixir.bootlin.com/linux/v5.1/source/Documentation/devicetree/bindings
用于SoC中特定外围设备的设备树绑定:
为了说明有关特定外设的设备树绑定的一些信息,让我们以非常流行的TI OMAP系列的SPI为例。
链接: https://elixir.bootlin.com/linux/v5.1/source/Documentation/devicetree/bindings/spi/omap-spi.txt
此特定链接中的文本基本上介绍了键值对。 “键”是设备树的属性,“值”是相应“键”的可能的占位符值。例如,在上面的链接中,“ compatible”属性保存的值之一为“ ti,omap2-mcspi”。
另一个示例是保存了txN,rxN的“ dma-names”属性。
现在,在下面的链接中,您可以清楚地看到在实际设备树中如何使用这些设备树属性: https://elixir.bootlin.com/linux/v5.1/source/arch/arm/boot/dts/omap3.dtsi#L365
mcspi1: spi@48098000 {
compatible = "ti,omap2-mcspi";
reg = <0x48098000 0x100>;
...
}
根据“ omap-spi.txt”的设备树绑定文档,键“ compatible”的值“ ti,omap2-mcspi”是可用值之一(如第二个列出的链接所示)。
因此,现在基于设备使用的SoC和外围设备,可以参考设备树绑定文档来编写设备树属性。