Project Scenario:
when creating a petalinux system using Xilinx’s petalinux tool, modify the device tree file pl.dtsi by adding a reference to the system-user.dtsi file
Problem description:
cannot modify pl.dtsi configuration through system-user.dtsi
/include/ "system-conf.dtsi"
/{
};
&amba_pl{
axidma_chrdev: axidma_chrdev@0 {
compatible = "xlnx,axidma-chrdev";
dmas = <&axi_dma_0 0 &axi_dma_0 1>;
dma-names = "tx_channel", "rx_channel";
};
};
&axi_dma_0{
dma-channel@40400000 {
xlnx,device-id = <0x0>;
};
dma-channel@40400030 {
xlnx,device-id = <0x1>;
};
}
Reason analysis:
system-user. Dtsi file format error, space between dma and {!!!
Solutions:
modify the code format, create system.dtb, use the following statement to reverse generate DTS file, found that part of the pl configuration has been successfully modified!
dtc -I dtb -O dts -o system.dts system.dtb
Modified code:
/include/ "system-conf.dtsi"
/{
};
&amba_pl {
axidma_chrdev: axidma_chrdev@0 {
compatible = "xlnx,axidma-chrdev";
dmas = <&axi_dma_0 0 &axi_dma_0 1>;
dma-names = "tx_channel", "rx_channel";
};
};
&axi_dma_0 {
dma-channel@40400000 {
xlnx,device-id = <0x0>;
};
dma-channel@40400030 {
xlnx,device-id = <0x1>;
};
}
Results in system. DTS: