Re: [PATCH v9 1/3] media: dt-bindings: media: add bindings for Rockchip CIF

Paul Kocialkowski
2023-10-31T09:52:39Z

[-- Attachment #1: Type: text/plain, Size: 4877 bytes --]

Hi Rob,

On Mon 30 Oct 23, 14:32, Rob Herring wrote:
> On Mon, Oct 30, 2023 at 01:25:12PM +0100, Mehdi Djait wrote:
> > Add a documentation for the Rockchip Camera Interface
> > binding.
> >
> > Signed-off-by: Mehdi Djait <mehdi.djait@bootlin.com>
> > ---
> > v8=>v9:
> > dropped the "Reviewed-by: Rob Herring <robh@kernel.org>"
> > because of the following changes:
> > - changed the compatible to rk3066-cif: rk3066 is the earliest Rockchip SoC
> > that uses cif and it is the first model starting the RK30 lineup.
>
> Is px30 compatible with rk3066? It's not clear because you didn't add
> rk3066 support. If not compatible, then add rk3066 when you have a user.
> If it is compatible, then you should have a fallback for px30.

Just to clarify here: we haven't checked that rk3066 uses the exact same
programming model as px30 (so there should be no fallback compatible), but it
is definitely the same unit (in a different version).

Since the yaml binding document will apply to all generations of the unit,
the name of the file should be the first generation (rk3066) instead of the
px30 which is just one of the many iterations of the unit.

It would be both confusing and irrelevant to pick px30 just because it happens
to be the first generation supported in the Linux driver (and described in
the binding).

Cheers,

Paul

> > - adjusted the description
> > - changed the node name to video-capture
> >
> >
> > .../bindings/media/rockchip,rk3066-cif.yaml | 96 +++++++++++++++++++
> > 1 file changed, 96 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/media/rockchip,rk3066-cif.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/media/rockchip,rk3066-cif.yaml b/Documentation/devicetree/bindings/media/rockchip,rk3066-cif.yaml
> > new file mode 100644
> > index 000000000000..be69e474ed26
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/media/rockchip,rk3066-cif.yaml
> > @@ -0,0 +1,96 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/media/rockchip,rk3066-cif.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Rockchip CIF Camera Interface
> > +
> > +maintainers:
> > + - Mehdi Djait <mehdi.djait@bootlin.com>
> > +
> > +description: |
>
> Don't need '|'
>
> > + CIF is a camera interface present on some rockchip SoCs. It
> > + receives the data from Camera sensor or CCIR656 encoder and
> > + transfers it into system main memory by AXI bus.
>
> Wrap lines at 80.
>
> > +
> > +properties:
> > + compatible:
> > + enum:
> > + - rockchip,rk3066-cif
> > + - rockchip,px30-vip
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + interrupts:
> > + maxItems: 1
> > +
> > + clocks:
> > + items:
> > + - description: ACLK
> > + - description: HCLK
> > + - description: PCLK
> > +
> > + clock-names:
> > + items:
> > + - const: aclk
> > + - const: hclk
> > + - const: pclk
> > +
> > + resets:
> > + items:
> > + - description: AXI
> > + - description: AHB
> > + - description: PCLK IN
> > +
> > + reset-names:
> > + items:
> > + - const: axi
> > + - const: ahb
> > + - const: pclkin
> > +
> > + power-domains:
> > + maxItems: 1
> > +
> > + port:
> > + $ref: /schemas/graph.yaml#/properties/port
> > + description: A connection to a sensor or decoder
> > +
> > +required:
> > + - compatible
> > + - reg
> > + - interrupts
> > + - clocks
> > + - port
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + #include <dt-bindings/interrupt-controller/arm-gic.h>
> > + #include <dt-bindings/clock/px30-cru.h>
> > + #include <dt-bindings/power/px30-power.h>
> > +
> > + parent {
> > + #address-cells = <2>;
> > + #size-cells = <2>;
> > +
> > + video-capture@ff490000 {
> > + compatible = "rockchip,px30-vip";
> > + reg = <0x0 0xff490000 0x0 0x200>;
> > + interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
> > + clocks = <&cru ACLK_CIF>, <&cru HCLK_CIF>, <&cru PCLK_CIF>;
> > + clock-names = "aclk", "hclk", "pclk";
> > + resets = <&cru SRST_CIF_A>, <&cru SRST_CIF_H>, <&cru SRST_CIF_PCLKIN>;
> > + reset-names = "axi", "ahb", "pclkin";
> > + power-domains = <&power PX30_PD_VI>;
> > +
> > + port {
> > + endpoint {
> > + remote-endpoint = <&tw9900_out>;
> > + };
> > + };
> > + };
> > + };
> > +...
> > --
> > 2.41.0
> >

--
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]