编译 dts 文件时出现“/pl061@9030000:clocks: cell 0 is not a phandle reference”

"/pl061@9030000:clocks: cell 0 is not a phandle reference" when compiling a dts file

我在 qemu 命令中使用“-machine dumpdtb=dtb.dtb”来提取 arm 'virt' 机器的 dtb 文件。然后我使用 dtc 将 dtb 文件转换为 dts 文件。我试图将该 dts 文件恢复为 dtb。但是我看到了这样的警告消息(只显示第一个警告)。

dtb.dts:284.3-21: Warning (clocks_property): /pl061@9030000:clocks: cell 0 is not a phandle reference

警告来自 dts 中的行

pl061@9030000 {
    phandle = <0x8003>;
    clock-names = "apb_pclk";
    clocks = <0x8000>;               <==== this line
    interrupts = <0x00 0x07 0x04>;
    gpio-controller;
    #gpio-cells = <0x02>;
    compatible = "arm,pl061[=11=]arm,primecell";
    reg = <0x00 0x9030000 0x00 0x1000>;
};

我查看了 Documentation/devicetree/bindings/gpio/pl061-gpio.yaml,但没有关于 属性 时钟的解释。我猜这是 gpio 的时钟频率,但 dtc 程序以某种方式认为它是一个 phandle。我在 pl061 驱动程序中找不到 'clocks' 的任何用途。我可以安全地忽略该错误吗?

这是 dtb 中其他地方的 /apb-pclk 节点的 phandle。 “时钟”属性 是“arm,primecell”绑定的一部分,在此处记录: https://www.kernel.org/doc/Documentation/devicetree/bindings/arm/primecell.txt