[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Y7HEPphR2cZePsBz@sashalap>
Date: Sun, 1 Jan 2023 12:34:54 -0500
From: Sasha Levin <sashal@...nel.org>
To: Andre Przywara <andre.przywara@....com>
Cc: Samuel Holland <samuel@...lland.org>, stable@...r.kernel.org,
Vinod Koul <vkoul@...nel.org>, kishon@...nel.org,
wens@...e.org, jernej.skrabec@...il.com,
wsa+renesas@...g-engineering.com, linux-phy@...ts.infradead.org,
linux-arm-kernel@...ts.infradead.org, linux-sunxi@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH AUTOSEL 5.10 1/7] phy: sun4i-usb: Add support for the
H616 USB PHY
On Tue, Dec 27, 2022 at 10:23:30PM +0000, Andre Przywara wrote:
>On Tue, 27 Dec 2022 15:58:16 -0600
>Samuel Holland <samuel@...lland.org> wrote:
>
>> Hi Sasha,
>>
>> On 12/27/22 14:35, Sasha Levin wrote:
>> > From: Andre Przywara <andre.przywara@....com>
>> >
>> > [ Upstream commit 0f607406525d25019dd9c498bcc0b42734fc59d5 ]
>> >
>> > The USB PHY used in the Allwinner H616 SoC inherits some traits from its
>> > various predecessors: it has four full PHYs like the H3, needs some
>> > extra bits to be set like the H6, and puts SIDDQ on a different bit like
>> > the A100. Plus it needs this weird PHY2 quirk.
>> >
>> > Name all those properties in a new config struct and assign a new
>> > compatible name to it.
>> >
>> > Signed-off-by: Andre Przywara <andre.przywara@....com>
>> > Reviewed-by: Samuel Holland <samuel@...lland.org>
>> > Link: https://lore.kernel.org/r/20221031111358.3387297-5-andre.przywara@arm.com
>> > Signed-off-by: Vinod Koul <vkoul@...nel.org>
>> > Signed-off-by: Sasha Levin <sashal@...nel.org>
>> > ---
>> > drivers/phy/allwinner/phy-sun4i-usb.c | 12 ++++++++++++
>> > 1 file changed, 12 insertions(+)
>> >
>> > diff --git a/drivers/phy/allwinner/phy-sun4i-usb.c b/drivers/phy/allwinner/phy-sun4i-usb.c
>> > index 651d5e2a25ce..230987e55ece 100644
>> > --- a/drivers/phy/allwinner/phy-sun4i-usb.c
>> > +++ b/drivers/phy/allwinner/phy-sun4i-usb.c
>> > @@ -974,6 +974,17 @@ static const struct sun4i_usb_phy_cfg sun50i_h6_cfg = {
>> > .missing_phys = BIT(1) | BIT(2),
>> > };
>> >
>> > +static const struct sun4i_usb_phy_cfg sun50i_h616_cfg = {
>> > + .num_phys = 4,
>> > + .type = sun50i_h6_phy,
>> > + .disc_thresh = 3,
>> > + .phyctl_offset = REG_PHYCTL_A33,
>> > + .dedicated_clocks = true,
>> > + .phy0_dual_route = true,
>> > + .hci_phy_ctl_clear = PHY_CTL_SIDDQ,
>> > + .needs_phy2_siddq = true,
>>
>> This will fail to compile without b45c6d80325b ("phy: sun4i-usb:
>> Introduce port2 SIDDQ quirk"). However, like Andre mentioned in
>> reference to the devicetree updates[1], we were not expecting any of
>> these patches to be backported. Since you already dropped the DT
>> portion, there is no need to bother with these two patches either.
>
>Well, definitely not for 5.4 and 5.10, since the essential pinctrl and
>clock patches for the H616 were only added in 5.12, so there is no
>point in having USB support.
>
>I don't know how useful it is for 6.0, but having both patches in 6.1
>would make some sense, since it's an LTS kernel. The H616 SoC became
>usable in 6.0, with the USB patches being delayed back then. And it's
>only those two that are missing from enabling USB support, IIRC.
>The DT part is not really relevant, since you can always use U-Boot's
>DT (recommended) or the DT from any newer kernel.
>
>So from an user's perspective, it would be very helpful to just have:
>- [PATCH AUTOSEL 6.1 12/28]
>- [PATCH AUTOSEL 6.1 13/28]
>Personally I would support this, since it makes all H616 based devices
>much more usable with next year's distribution kernels.
>
>I don't know if this fulfils the stable kernel rules, though, since
>strictly speaking they don't fix anything, but add (USB) support to a
>new SoC. Then again they are little risk, since most of the code is
>guarded by H616 filters, so wouldn't be used by other SoCs.
Quirks and new device ids are accepted in the stable trees. I'll leave
those two patches on 6.1. Thanks!
--
Thanks,
Sasha
Powered by blists - more mailing lists