设备树 phandle 十六进制到参考节点

问题描述

是否可以从幻影中导出参考节点?

例如,我的 RPI 4 有这个:

mmcnr@7e300000 {
    compatible = "brcm,bcm2835-mmc\0brcm,bcm2835-sdhci";
    reg = <0x7e300000 0x100>;
    interrupts = <0x00 0x7e 0x04>;
    clocks = <0x07 0x1c>;
    dmas = <0x0b 0x0b>;
    dma-names = "rx-tx";
    brcm,overclock-50 = <0x00>;
    non-removable;
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <0x1f>;
    bus-width = <0x04>;
    phandle = <0x38>;
};

我怎么知道 0x38 是什么节点?

解决方法

您可以使用 of_find_all_nodes() 遍历所有节点,首先将参数作为 NULL 传递给该函数。此函数返回 device_node .. 如果匹配,您可以将返回的 device_node->phandle 与 0x38 进行比较。那就是节点