RE: [PATCH V2 1/2] dt-bindings: serial: add Broadcom's BCMBCA family High Speed UART

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

 



> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> Sent: Wednesday, November 22, 2023 10:46 AM
> To: William Zhang <william.zhang@xxxxxxxxxxxx>; Rafał Miłecki
> <zajec5@xxxxxxxxx>; Florian Fainelli <florian.fainelli@xxxxxxxxxxxx>;
> Anand Gore <anand.gore@xxxxxxxxxxxx>; Kursad Oney
> <kursad.oney@xxxxxxxxxxxx>; Rob Herring <robh+dt@xxxxxxxxxx>;
> Krzysztof Kozlowski <krzysztof.kozlowski+dt@xxxxxxxxxx>; Conor Dooley
> <conor+dt@xxxxxxxxxx>
> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>; Jiri Slaby
> <jirislaby@xxxxxxxxxx>; Andre Przywara <andre.przywara@xxxxxxx>;
> Alexandre TORGUE <alexandre.torgue@xxxxxx>; Neil Armstrong
> <neil.armstrong@xxxxxxxxxx>; linux-serial@xxxxxxxxxxxxxxx;
> devicetree@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; bcm-
> kernel-feedback-list@xxxxxxxxxxxx; Rafał Miłecki <rafal@xxxxxxxxxx>
> Subject: Re: [PATCH V2 1/2] dt-bindings: serial: add Broadcom's BCMBCA
> family High Speed UART
>
> On 22/11/2023 19:39, William Zhang wrote:
> > Hi,
> >
> > On 11/22/2023 07:52 AM, Rafał Miłecki wrote:
> >> On 22.11.2023 16:50, Krzysztof Kozlowski wrote:
> >>> On 22/11/2023 16:49, Rafał Miłecki wrote:
> >>>>>> For example a year ago I added binding for BCMBCA SoC timer
> without
> >>>>>> actual driver, see e112f2de151b ("dt-bindings: timer: Add
> Broadcom's
> >>>>>> BCMBCA timers").
> >>>>>>
> >>>>>> I'm not sure if we're going to agree on this, but personally I like
> >>>>>> describing hardware as much as I can. So it's well documented /
> >>>>>> understood and people may eventually write drivers for it. Maybe
> it's
> >>>>>> partially because I come from Broadcom's world that isn't well
> known
> >>>>>> for upstream efforts in general.
> >>>>>
> >>>>> The problem is that "brcm,bcmbca-hs-uart" is not describing
> >>>>> hardware. It
> >>>>> is saying that all these devices have similar (compatible)
> >>>>> programming
> >>>>> model, so the OS can use just one compatible. This goes away from
> pure
> >>>>> hardware description into interpretation.
> >>>>>
> > It is the same hardware IP block used in bcmbca SoCs.  To me, it
> > perfectly describe the hardware IP block and it does not need fallback
> > because there is no fallback.  We did that for SPI controller although
> > it has two revisions of that IP block so we have brcm,bcmbca-hsspi-v1.0
> > and 1.1
> >
> >>>>> Rob already commented on such non-SoC compatibles multiple times.
> I do
> >>>>> not see any reason here to not use specific compatible as fallback.
> >>>>
> > Sorry I missed Rob's comments.  If we have any new rule or notes about
> > this, I would like to check it out.
> >
> >>>> Do I get it right we should rather have some base specific compatible
> >>>> like: "brcm,bcm63138-hs-uart" and then if anything use fallback to it
> >>>> like: "brcm,bcm4908-hs-uart", "brcm,bcm63138-hs-uart"; ?
> >>>
> >>> Yes, or the other way around, depends which is probably the oldest.
> > If we absolutely can not use bcmbca-hs-uart, I would suggest to use
>
> We can, but I am surprised that you want without any driver. What's the
> point of generic compatible?
>
I agree we should have the driver along with the dts. But it looks it
depends on
the bandwidth of Rafal.

> > bcm63xx-hs-uart to be more soc specific and in fact the oldest SoC have
>
> What is xx? Wildcard? I mean... ehhh...
>
Bcm63 series of SoC (DSL broadband chip, part of the bcmbca family) and it
is
the oldest chip for such IP.   bcm63xx has been used in many ip block's
compatible
string for long time in the upstream kernel.

> Best regards,
> Krzysztof

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


[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