On 1/15/25 14:19, Simon Glass wrote:
> 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?

I have tested with dtc Version: DTC 1.7.0-gbcd02b52 which is the same dtc 
version than kernel tag next-20250114

I also submited my branch on U-Boot CI, and i got the same issue, see 
https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/24185

Issue reproduced with DT file 
dts/upstream/src/arm/st/stm32mp151a-prtt1l.dtsi:72.1-2 syntax error

Thansk
Patrice

> 
> You could try DTC=`which dtc` if you already have that in your system.
> 
> Regards,
> Simon

Reply via email to