From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ahmad Fatoum Date: Mon, 1 Mar 2021 12:59:39 +0100 Subject: [Uboot-stm32] [PATCH] usb: dwc2: change compatible st, stm32mp1-hsotg to st, stm32mp15-hsotg In-Reply-To: <9b34272f-0e54-0fa6-0432-126d63a6b538@foss.st.com> References: <20210209111438.1.If6218391a7cf47afdeda5e5e6c79937b4e8ab085@changeid> <804006bd-a6bc-0352-374d-6d2b33e42db9@denx.de> <20210210195926.GJ10169@bill-the-cat> <9b34272f-0e54-0fa6-0432-126d63a6b538@foss.st.com> Message-ID: <9d690011-5ba1-5349-96f7-47c672ed6cfe@pengutronix.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 |