diff --git a/recipes-bsp/device-tree/device-tree.bbappend b/recipes-bsp/device-tree/device-tree.bbappend index c7e30fcb4e443679d854ac106b32ce196b64e220..e4c076d287b11829a6bb367b6789d28c258193bd 100644 --- a/recipes-bsp/device-tree/device-tree.bbappend +++ b/recipes-bsp/device-tree/device-tree.bbappend @@ -1,11 +1,23 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/files:" SRC_URI_append = " \ - file://pl-conf.dtsi \ + file://pl-over.dtsi \ " -# We need what's in pl-conf. -# We are not using DTBO for now (cannot build) do_configure_append() { - echo '/include/ "pl-conf.dtsi"' >> ${DT_FILES_PATH}/system-top.dts + + # Add the overlay source to DTS sources + cp ${WORKDIR}/pl-over.dtsi ${DT_FILES_PATH}/ + +} + +do_install_append() { + + # Install the resulting dtbo + mkdir -p ${D}/opt/fofb/map + install -Dm 0664 ${B}/pl-over.dtbo ${D}/opt/fofb/map/device-tree-overlay.dtbo + } + + +FILES_${PN} += "/opt/fofb/map/device-tree-overlay.dtbo" diff --git a/recipes-bsp/device-tree/files/damc-fmc2zup/pl-conf.dtsi b/recipes-bsp/device-tree/files/damc-fmc2zup/pl-conf.dtsi deleted file mode 100644 index 6376f2a4e1db9ef0c559181a181f155e63548ae7..0000000000000000000000000000000000000000 --- a/recipes-bsp/device-tree/files/damc-fmc2zup/pl-conf.dtsi +++ /dev/null @@ -1,40 +0,0 @@ - - -/ { - amba_pl: amba_pl@0 { - #address-cells = <2>; - #size-cells = <2>; - compatible = "simple-bus"; - ranges ; - ddr_ddr4_0: ddr4@540000000 { - compatible = "xlnx,ddr4-2.2", "generic-uio"; - reg = <0x00000005 0x40000000 0x0 0x40000000>; - interrupt-parent = <&gic>; - interrupts = <0 89 1>; - linux,uio-name = "ddrpl"; - }; - ins_bsp_fmc2zup_system_p_m_axi_bsp: ins_bsp_fmc2zup_system_p_m_axi_bsp@a0000000 { - reg = <0x0 0xa0000000 0x0 0x200000>; - }; - ins_bsp_fmc2zup_system_p_m_axi_app: ins_bsp_fmc2zup_system_p_m_axi_app@a0800000 { - reg = <0x0 0xa0800000 0x0 0x800000>; - compatible = "generic-uio"; - linux,uio-name = "axiapp"; - }; - }; - - debug_bridge_0@0xA0820000 { - #address-cells = <1>; - #size-cells = <1>; - compatible = "xlnx,xvc"; - reg = < 0xA0820000 0x20 >; - }; - - pl_int@1 { - compatible = "generic-uio"; - interrupt-names = "pl2ps_irq"; - interrupt-parent = <&gic>; - interrupts = <0 90 1>; - }; -}; - diff --git a/recipes-bsp/device-tree/files/damc-fmc2zup/pl-over.dtsi b/recipes-bsp/device-tree/files/damc-fmc2zup/pl-over.dtsi new file mode 100644 index 0000000000000000000000000000000000000000..4a67ceef83ccb372dcee141e70d084bd3c358c56 --- /dev/null +++ b/recipes-bsp/device-tree/files/damc-fmc2zup/pl-over.dtsi @@ -0,0 +1,67 @@ + +/dts-v1/; +/plugin/; + +/ { + fragment@0 { + target = <&amba>; + + overlay0:__overlay__ { + + #address-cells = <2>; + #size-cells = <2>; + + ddr_ddr4_0: ddr4@540000000 { + compatible = "xlnx,ddr4-2.2", "generic-uio"; + reg = <0x00000005 0x40000000 0x0 0x40000000>; + interrupt-parent = <&gic>; + interrupts = <0 89 1>; + linux,uio-name = "ddrpl"; + }; + + ins_bsp_fmc2zup_system_p_m_axi_bsp: ins_bsp_fmc2zup_system_p_m_axi_bsp@a0000000 { + reg = <0x0 0xa0000000 0x0 0x200000>; + }; + + ins_bsp_fmc2zup_system_p_m_axi_app: ins_bsp_fmc2zup_system_p_m_axi_app@a0800000 { + reg = <0x0 0xa0800000 0x0 0x800000>; + compatible = "generic-uio"; + linux,uio-name = "axiapp"; + }; + + iic_mmc: i2c@a0100000 { + #address-cells = <1>; + #size-cells = <0>; + clock-names = "s_axi_aclk"; + clocks = <&zynqmp_clk 72>; + compatible = "xlnx,axi-iic-2.0", "xlnx,xps-iic-2.00.a"; + interrupt-names = "iic2intc_irpt"; + interrupt-parent = <&gic>; + interrupts = <0 104 4>; + reg = <0x0 0xa0100000 0x0 0x1000>; + + mmcmailbox@2a { + compatible = "desy,mmcmailbox"; + reg = <0x2a>; + }; + + }; + + }; + }; + + fragment@1 { + target-path = "/"; + overlay1: __overlay__ { + pl_int@1 { + compatible = "generic-uio"; + interrupt-names = "pl2ps_irq"; + interrupt-parent = <&gic>; + interrupts = <0 90 1>; + }; + }; + }; + + +}; +