RE: [PATCH 4/4] arm64: dts: renesas: r9a07g0{43,44,54}: Update usbhs family compatible

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Krzysztof Kozlowski,

> >
> > > -----Original Message-----
> > > From: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> > > Sent: Saturday, March 9, 2024 1:30 PM
> > > Subject: Re: [PATCH 4/4] arm64: dts: renesas: r9a07g0{43,44,54}:
> > > Update usbhs family compatible
> > >
> > > On 09/03/2024 13:32, Biju Das wrote:
> > > > Hi Krzysztof Kozlowski,
> > > >
> > > >> -----Original Message-----
> > > >> From: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> > > >> Sent: Saturday, March 9, 2024 12:26 PM
> > > >> Subject: Re: [PATCH 4/4] arm64: dts: renesas: r9a07g0{43,44,54}:
> > > >> Update usbhs family compatible
> > > >>
> > > >> On 09/03/2024 13:14, Biju Das wrote:
> > > >>> Hi Krzysztof Kozlowski,
> > > >>>
> > > >>> Thanks for the feedback.
> > > >>>
> > > >>>> -----Original Message-----
> > > >>>> From: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> > > >>>> Sent: Saturday, March 9, 2024 12:08 PM
> > > >>>> Subject: Re: [PATCH 4/4] arm64: dts: renesas: r9a07g0{43,44,54}:
> > > >>>> Update usbhs family compatible
> > > >>>>
> > > >>>> On 08/03/2024 19:09, Biju Das wrote:
> > > >>>>> Replace 'renesas,rza2m-usbhs->renesas,rzg2l-usbhs' as family
> > > >>>>> compatible for RZ/G2L family SOCs as there is a difference in
> > > >>>>> number of pipe buffers compared to RZ/A2M.
> > > >>>>>
> > > >>>>> Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
> > > >>>>> ---
> > > >>>>>  arch/arm64/boot/dts/renesas/r9a07g043.dtsi | 2 +-
> > > >>>>> arch/arm64/boot/dts/renesas/r9a07g044.dtsi | 2 +-
> > > >>>>> arch/arm64/boot/dts/renesas/r9a07g054.dtsi | 2 +-
> > > >>>>>  3 files changed, 3 insertions(+), 3 deletions(-)
> > > >>>>>
> > > >>>>> diff --git a/arch/arm64/boot/dts/renesas/r9a07g043.dtsi
> > > >>>>> b/arch/arm64/boot/dts/renesas/r9a07g043.dtsi
> > > >>>>> index 8721f4c9fa0f..766c54b91acc 100644
> > > >>>>> --- a/arch/arm64/boot/dts/renesas/r9a07g043.dtsi
> > > >>>>> +++ b/arch/arm64/boot/dts/renesas/r9a07g043.dtsi
> > > >>>>> @@ -812,7 +812,7 @@ usb2_phy1: usb-phy@11c70200 {
> > > >>>>>
> > > >>>>>  		hsusb: usb@11c60000 {
> > > >>>>>  			compatible = "renesas,usbhs-r9a07g043",
> > > >>>>> -				     "renesas,rza2-usbhs";
> > > >>>>> +				     "renesas,rzg2l-usbhs";
> > > >>>>
> > > >>>> This looks like ABI break and commit msg is quite vague about it.
> > > >>>
> > > >>> OK, Will update the commit message as driver is taking care of
> > > >>> the backward compatibility.
> > > >>
> > > >> Ah, I was not precise here, you should consider the impact this
> > > >> is on DTB used on other kernels. You guys should really stop
> > > >> using imprecise/incorrect generic fallbacks and, since it is
> > > >> usually tricky to know which fallback is
> > > correct or not, you should stop using them at all.
> > > >
> > > > There will be driver change to handle SoC specific compatible.
> > > >
> > > > So ,
> > > >
> > > > old DTB + old kernel will have 16 pipe buffers old DTB + newer
> > > > kernel will have 9 pipe buffers.
> > > > New DTB + new kernel will have 9 pipe buffer.
> > >
> > > You missed new DTB and old kernel. This breaks all users of DTS.
> > > That's the entire point of your broken generic compatibles which you did not address.
> >
> > As per my knowledge, there is no user in RZ/G2L is using new DTB and old kernel.
> > So, it is safe.
> 
> If there is a user for such change, we could use
> 
> 	compatible = "renesas,usbhs-r9a07g043",
> 	             "renesas,rzg2l-usbhs",
> 			 "renesas,rza2-usbhs";
> 
> Or
> 
> 	compatible = "renesas,usbhs-r9a07g043",
> 			 "renesas,rza2-usbhs";
> 
> 
> The former consumes less memory compared to the later.
> 
> As later requires, 3 platform structures for rz/g2l, rz/v2l and rz/gul whereas the former requires just
> 1.

Another way is using RZ/G2L SoC fallback compatible for both RZ/V2L and RZ/Five varients

	compatible = "renesas,usbhs-r9a07g043",
	             "renesas, usbhs-r9a07g044",
			 "renesas,rza2-usbhs";

This will fit into all ABI combinations with optimized memory usage in driver related to platform structure.

old DTB + old kernel will have 16 pipe buffers
old DTB + new kernel will have 9 pipe buffers
New DTB + old kernel will have 16 pipe buffers
New DTB + new kernel will have 9 pipe buffers

Cheers,
Biju









[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux