Hi Patrice, On Wed, 15 Jan 2025 at 03:19, Patrice CHOTARD <patrice.chot...@foss.st.com> wrote: > > Hi > > I am currently converting STM32MP platforms to OF_UPSTREAM. > As we use same binary for several boards, flags > CONFIG_OF_UPSTREAM_BUILD_VENDOR=y > and CONFIG_OF_UPSTREAM_VENDOR="st" are set. > > So all dts/upstream/src/arm/st/* dts files are compiled. > > I am facing an issue with dts/upstream/src/arm/st/stm32mp151a-prtt1* and > dts/upstream/src/arm/st/stm32mp15*-mec*.* files. > > To be more precise, these files are using a syntax which follows this > format &{label/subnode} to override some nodes. > > This leads to DTC error: > > AR drivers/usb/gadget/built-in.o > LD u-boot > OBJCOPY u-boot.srec > OBJCOPY u-boot-nodtb.bin > SYM u-boot.sym > DTC dts/upstream/src/arm/st/stm32mp157c-dhcom-picoitx.dtb > DTC dts/upstream/src/arm/st/stm32h750i-art-pi.dtb > DTC > dts/upstream/src/arm/st/stm32mp157a-microgea-stm32mp1-microdev2.0-of7.dtb > DTC dts/upstream/src/arm/st/stm32mp157a-iot-box.dtb > DTC dts/upstream/src/arm/st/stm32746g-eval.dtb > DTC dts/upstream/src/arm/st/stm32mp151c-mecio1r0.dtb > DTC dts/upstream/src/arm/st/stm32mp157a-dhcor-avenger96.dtb > DTC dts/upstream/src/arm/st/ste-nomadik-s8815.dtb > Error: ../dts/upstream/src/arm/st/stm32mp15x-mecio1-io.dtsi:338.1-2 syntax > error > FATAL ERROR: Unable to parse input tree > > > At line 338 in dts/upstream/src/arm/st/stm32mp15x-mecio1-io.dtsi we got : > > &{qspi_bk1_pins_a/pins} { > pinmux = <STM32_PINMUX('F', 8, AF10)>, /* QSPI_BK1_IO0 */ > <STM32_PINMUX('F', 9, AF10)>, /* QSPI_BK1_IO1 */ > <STM32_PINMUX('F', 7, AF9)>, /* QSPI_BK1_IO2 */ > <STM32_PINMUX('F', 6, AF9)>; /* QSPI_BK1_IO3 */ > /delete-property/ bias-disable; > bias-pull-up; > }; > > If i update it as following , the DTC compilation is OK : > > &qspi_bk1_pins_a { > pins { > pinmux = <STM32_PINMUX('F', 8, AF10)>, /* QSPI_BK1_IO0 */ > <STM32_PINMUX('F', 9, AF10)>, /* QSPI_BK1_IO1 */ > <STM32_PINMUX('F', 7, AF9)>, /* QSPI_BK1_IO2 */ > <STM32_PINMUX('F', 6, AF9)>; /* QSPI_BK1_IO3 */ > /delete-property/ bias-disable; > bias-pull-up; > }; > }; > > On kernel side, the DTC compilation is ok, but not on U-Boot side. I am not > able to understand the difference. >
Could it be that the kernel dtc is newer? You could try DTC=`which dtc` if you already have that in your system. Regards, Simon