[Uboot-stm32] [PATCH] usb: dwc2: change compatible st, stm32mp1-hsotg to st, stm32mp15-hsotg

Ahmad Fatoum a.fatoum at pengutronix.de
Mon Mar 1 12:59:39 CET 2021


Hello Patrick,

On 19.02.21 14:30, Patrick DELAUNAY wrote:
> Hi Ahmad,
> 
> On 2/11/21 12:14 PM, Ahmad Fatoum wrote:
>> Hi,
>>
>> On 10.02.21 20:59, Tom Rini wrote:
>>> On Tue, Feb 09, 2021 at 08:51:26PM +0100, Patrick DELAUNAY wrote:
>>>> On 2/9/21 11:39 AM, Marek Vasut wrote:
>>>>> On 2/9/21 11:14 AM, Patrick Delaunay wrote:
>>>>> Hi,
>>>>>
>>>>> [...]
>>>>>
>>>>>> diff --git a/drivers/usb/gadget/dwc2_udc_otg.c
>>>>>> b/drivers/usb/gadget/dwc2_udc_otg.c
>>>>>> index e3871e381e..ecac80fc11 100644
>>>>>> --- a/drivers/usb/gadget/dwc2_udc_otg.c
>>>>>> +++ b/drivers/usb/gadget/dwc2_udc_otg.c
>>>>>> @@ -1176,7 +1176,7 @@ static int dwc2_udc_otg_remove(struct udevice
>>>>>> *dev)
>>>>>>    static const struct udevice_id dwc2_udc_otg_ids[] = {
>>>>>>        { .compatible = "snps,dwc2" },
>>>>>>        { .compatible = "brcm,bcm2835-usb" },
>>>>>> -    { .compatible = "st,stm32mp1-hsotg",
>>>>>> +    { .compatible = "st,stm32mp15-hsotg",
>>>>>>          .data = (ulong)dwc2_set_stm32mp1_hsotg_params },
>>>>> I have to point out the obvious, DT is ABI, this breaks ABI. However, do
>>>>> we care about out-of-tree DTs here ?
>>>>
>>>> I know that the binding backward compatibility and "binary compatible" the
>>>> is a key element of DT
>>>>
>>>> for the Linux kernel (for example the latest kernel image should work with a
>>>> old device tree).
>>> The way we use DTs in U-Boot we don't enforce ABI because we allow for
>>> DTS and bindings to come in before they're fully stabilized in
>>> linux-next/similar and then it's required to re-sync them once they are
>>> final.
>> I think platforms like the STM32MP1 should be handled specially, because
>> they support having an external device tree passed from the FSBL at runtime.
>> See https://github.com/trini/u-boot/blob/master/arch/arm/mach-stm32mp/boot_params.c#L32
>>
>> @Patrick, wouldn't this change break booting newer U-Boot with older TF-A in
>> some configurations? Or is this reusing-fsbl-fdt feature unused?
> 
>> Cheers,
>> Ahmad
> 
> I introduce this patch to prepare the FIP support in STM32MP15x TF-A
> 
> but it is not yet ready today in downstream or in upstream (STOpenLinux v2.1).
> 
> 
> In this FIP use-case, the DT provided by TF-A to U-Boot is the "u-boot.dtb"
> 
> generated by U-Boot compilation (including the required "u-boot,dm-pre-reloc"
> 
> add-on).
> 
> 
> The files "u-boot-nodtb.bin" and "u-boot.dtb" are provided to TF-A makefile
> 
> when the FIP is create; I hope these files are aligned as resulting of the
> 
> U-Boot compilation.
> 
> 
> And update of existing FIP is possible with command:
> 
>  PC $> fiptool update --nt-fw u-boot-nodtb.bin --hw-config u-boot.dtb fip.bin
> 
> 
> Here I hope the DT and U-Boot binary are updated at the same time
> 
> to avoid any dependency issue  (even if it is not mandatory).
> 
> 
> But as this FIP feature is not yet used, I don't break the current or the FIP STM32MP1
> 
> configurations, except if I miss something,  as the 2 U-Boot files in FIP
> 
> are updated at the same time.

I think too it should cause no problem then. Thanks for the explanation!

Cheers,
Ahmad

> 
> 
> Regards,
> 
> Patrick
> 
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |


More information about the U-Boot mailing list