[PATCH can-next v2 01/20] dt-bindings: can: rockchip_canfd: add rockchip CAN-FD controller

Marc Kleine-Budde mkl at pengutronix.de
Tue Aug 6 12:55:38 PDT 2024


On 06.08.2024 10:50:20, Rob Herring wrote:
> On Wed, Jul 31, 2024 at 11:37:03AM +0200, Marc Kleine-Budde wrote:
> > Add documentation for the rockchip rk3568 CAN-FD controller.
> > 
> > Co-developed-by: Elaine Zhang <zhangqing at rock-chips.com>
> > Signed-off-by: Elaine Zhang <zhangqing at rock-chips.com>
> > Signed-off-by: Marc Kleine-Budde <mkl at pengutronix.de>
> > ---
> >  .../bindings/net/can/rockchip,canfd.yaml           | 76 ++++++++++++++++++++++
> 
> rockchip,rk3568-canfd.yaml

Thanks, will rename.

> >  MAINTAINERS                                        |  7 ++
> >  2 files changed, 83 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/net/can/rockchip,canfd.yaml b/Documentation/devicetree/bindings/net/can/rockchip,canfd.yaml
> > new file mode 100644
> > index 000000000000..444269f630f4
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/net/can/rockchip,canfd.yaml
> > @@ -0,0 +1,76 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/net/can/rockchip,canfd.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title:
> > +  Rockchip CAN-FD controller
> > +
> > +maintainers:
> > +  - Marc Kleine-Budde <mkl at pengutronix.de>
> > +
> > +allOf:
> > +  - $ref: can-controller.yaml#
> > +
> > +properties:
> > +  compatible:
> > +    oneOf:
> > +      - const: rockchip,rk3568-canfd
> > +      - items:
> > +          - enum:
> > +              - rockchip,rk3568v2-canfd
> > +              - rockchip,rk3568v3-canfd
> > +          - const: rockchip,rk3568-canfd
> 
> Given you already know there are differences in the versions to handle 
> and there's no existing driver supporting the fallback, I don't know 
> that a fallback is too useful here.

Let me re-think out loud about the compatibilities:

There is a CAN-FD IP core in the rockchip,rk3568 SoC.
 
In the silicon revision v2 of the SoC it has 12 documented errata und
silicon revision v3 some of them are fixed. This means the driver can
skip some of the workarounds.

The v3 revision works with all the errata of the v2 active, currently
with a probably not measurable increase of CPU load. This might change
in the future, if more v2 workarounds are added. These might
degrade performance.

So it's for the v2 silicon revision:
compatible = "rockchip,rk3568v2-canfd";

And for the v3 silicon revision:
compatible = "rockchip,rk3568v3-canfd", "rockchip,rk3568v2-canfd";

Which is documented in the yaml as:

properties:
  compatible:
    oneOf:
      - const: rockchip,rk3568v2-canfd
      - items:
          - const: rockchip,rk3568v3-canfd
          - const: rockchip,rk3568v2-canfd

regards,
Marc

-- 
Pengutronix e.K.                 | Marc Kleine-Budde          |
Embedded Linux                   | https://www.pengutronix.de |
Vertretung Nürnberg              | Phone: +49-5121-206917-129 |
Amtsgericht Hildesheim, HRA 2686 | Fax:   +49-5121-206917-9   |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-rockchip/attachments/20240806/a2e9f56a/attachment.sig>


More information about the Linux-rockchip mailing list