Forums › Reference, Evaluation, and Development Boards › dtb rebuilder
Hi,
I have found an application named dtb rebuilder (https://github.com/RobertCNelson/dtb-rebuilder) to do modifications in the dts file very fast and also is possible decodificate the .dtb file. Do you know if is possible to use this application with OSD32MP1-RED?
Thanks in advance.
amolina,
We do not recommend using it to compile device trees for OSD32MP1, the main reason being it does not have all the include files and the kernel version is 4.14. ST’s latest release is 5.10 kernel: https://github.com/STMicroelectronics/linux. ST also has custom device tree organization that has not been pushed to mainline or exist anywhere else other than the linux kernel repository linked above.
Moreover, to effect change in peripheral setup, modifications to clock tree are also necessary that set and enable clocks for the peripherals being used. This can only be done in TF-A and U-Boot. This means, recompiling TF-A and U-Boot is necessary to make the clock tree changes needed to enable/disable a peripheral.
Here are some inputs on how to recompile device trees:
1. ST’s Developer Package: https://www.st.com/en/embedded-software/stm32mp1dev.html#get-software. For compatibility with the latest from Octavo. You will need to download version 3.0. This is essentially source code for TF-A, U-Boot and kernel and will allow you to compile them individually. You can then update your SD card/eMMC with the binaries you generated from the Developer Package. This procedure is described here: https://wiki.st.com/stm32mpu/wiki/STM32MP1_Developer_Package\
2. OSD32MP1 Debian SDK: The Debian SDK is Makefile based. So, you can edit the Makefile to do custom compilation. TF-A compilation happens here: https://github.com/octavosystems/osd32mp1-build-tools/blob/master/Makefile#L87. U-boot compilation happens https://github.com/octavosystems/osd32mp1-build-tools/blob/master/Makefile#L102. Kernel device tree compilation happens here: https://github.com/octavosystems/osd32mp1-build-tools/blob/master/Makefile#L108. You can edit the Makefile to trigger partial commands to just compile the TF-A, U-Boot FIP and kernel device tree.
3. Note on clock tree: You can set the clock tree settings here in TF-A(BRK device tree): https://github.com/octavosystems/osd32mp1-build-tools/blob/master/patches/arm-trusted-firmware-2.4/0001-Add-OSD32MP1-BRK-Device-tree-support.patch#L517. You can generate the rcc node bindings by using STM32CubeMX by making changes to the Clock tree page(see attached screenshot).
In addition, please take a look at https://octavosystems.com/app_notes/stm32mp1-cubemx-tutorial-for-osd32mp15x/
Best,
Neeraj
Octavo Systems LLC all rights reserved
OCTAVO is registered in the U.S. Patent and Trademark Office. OSD, C-SiP, and the Octavo Logo are trademarks of Octavo Systems LLC.
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields