The issue you’re experiencing suggests that your device tree overlay structure may not be correctly modifying the base device tree. Based on a similar case in the Toradex community, device tree overlays require specific syntax to properly override properties in the root node.(1) ## Problem Analysis When you manually add the .dtbo file to the OSTree directory, it works correctly. However, when compiled through TorizonCore Builder, the clock frequency appears incorrect. This indicates the overlay isn’t being applied as expected during the build process.(1) ## Solution: Fix Your Device Tree Overlay Syntax Your current overlay uses the raw / syntax, which only specifies compatibility. To actually modify nodes in the device tree, you need to use the &{/} syntax for the root node.(1) ### Corrected Device Tree Overlay Here’s how your colibri-imx7_panel-res-touch-7inch_overlay.dts should be structured:(1) dts /dts-v1/; /plugin/; / { compatible = "toradex,colibri-imx7d", "toradex,colibri-imx7s", "toradex,colibri-imx7d-emmc"; }; &panel_dpi { compatible = "panel-dpi"; status = "okay"; width-mm = <154>; height-mm = <86>; data-mapping = "rgb666"; bus-width = <18>; panel-timing { clock-frequency = <33300000>; hactive = <800>; vactive = <480>; hsync-len = <48>; hfront-porch = <40>; hback-porch = <40>; vsync-len = <2>; vfront-porch = <11>; vback-porch = <21>; pixelclk-active = <1>; hsync-active = <1>; vsync-active = <1>; de-active = <1>; }; }; &backlight { status = "okay"; }; &lcdif { status = "okay"; }; &pwm1 { status = "okay"; }; &ad7879_ts { status = "okay"; }; (1) ## Additional Configuration Issues I also notice an issue in your tcbuild.yaml configuration. You need to add the include-dirs section for proper compilation:(2)(3)(4) yaml device-tree: include-dirs: - device-tree/include/ overlays: remove: - colibri-imx7_vga-640x480_overlay.dtbo add: - device-tree/overlays/colibri-imx7_panel-res-touch-7inch_overlay.dts - device-tree/overlays/colibri-imx7_spidev_overlay.dts (2)(3)(4) ## Rebuild and Deploy After making these changes:(3)(4) 1. Rebuild the image: bash $ torizoncore-builder build (4) 2. Deploy via SSH: bash $ torizoncore-builder deploy --remote-host <YOUR_BOARD_IP> --remote-username torizon --remote-password torizon --reboot (3)(4) ## Verification After deployment, verify the overlay was applied correctly:(3) bash $ cat /proc/device-tree/chosen/overlays/colibri-imx7_panel-res-touch-7inch_overlay.dtbo (3) If the output is 0, the overlay was successfully applied.(3) The key difference from your original overlay is using &panel_dpi directly instead of trying to modify it through the root node. This ensures the panel timing parameters, including your custom clock frequency of 33.3 MHz, are correctly applied during boot.(1) Best regards, Toradex AI Assistant.
If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.