There are lot of properties defined in various nodes of Linux Kernel device tree files (*.dts, *.dtsi), where can I find more information about these nodes and properties.
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
There are lot of properties defined in various nodes of Linux Kernel device tree files (*.dts, *.dtsi), where can I find more information about these nodes and properties.
In general all the device tree documentation is captured in Linus Kernel documentation folder - Documentation/devicetree/bindings/
Below is an example on how to find the devicetree documentation file and the corresponding driver by using the compatible field of a node.
MMC node:
main_sdhci0: sdhci@4f80000 { compatible = "ti,j721e-sdhci-8bit"; reg = <0x0 0x4f80000 0x0 0x1000>, <0x0 0x4f88000 0x0 0x400>; interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; power-domains = <&k3_pds 91 TI_SCI_PD_EXCLUSIVE>; clock-names = "clk_xin", "clk_ahb"; clocks = <&k3_clks 91 1>, <&k3_clks 91 0>; assigned-clocks = <&k3_clks 91 1>; assigned-clock-parents = <&k3_clks 91 2>; bus-width = <8>; mmc-ddr-1_8v; ti,otap-del-sel-legacy = <0x0>; ti,otap-del-sel-mmc-hs = <0x0>; ti,otap-del-sel-ddr52 = <0x5>; ti,otap-del-sel-hs200 = <0x6>; ti,otap-del-sel-hs400 = <0x0>; ti,trm-icp = <0x8>; ti,strobe-sel = <0x77>; dma-coherent; };
Identifying the devicetree documentation:
Looking for the compatible string in the Documentation folder will help in finding the documentation associated with this node.
In this example, sdhci-am654.txt file will have details of the properties used in this node.
ti-linux-kernel$ git grep "ti,j721e-sdhci-8bit" Documentation/devicetree/bindings/
Documentation/devicetree/bindings/mmc/sdhci-am654.txt: "ti,j721e-sdhci-8bit": 8 bit SDHCI on J721E device.
Documentation/devicetree/bindings/mmc/sdhci-am654.txt: ti,j721e-sdhci-8bit,
Identifying the Kernel driver associated:
Looking for the same compatible field in the driver folder will help in identifying the driver associated with the node.
In this example, sdhci_am654.c is the driver associated with this node.
ti-linux-kernel$ git grep "ti,j721e-sdhci-8bit" drivers/
drivers/mmc/host/sdhci_am654.c: .compatible = "ti,j721e-sdhci-8bit",