Re: [PATCH 24/28] dt-bindings: media: Convert marvell,mmp2-ccic to json-schema

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

 



On Tue, Mar 17, 2020 at 10:39:18AM +0100, Lubomir Rintel wrote:
> Convert the marvell,mmp2-ccic binding to DT schema format using
> json-schema.
> 
> Signed-off-by: Lubomir Rintel <lkundrak@xxxxx>
> ---
>  .../bindings/media/marvell,mmp2-ccic.txt      |  50 ---------
>  .../bindings/media/marvell,mmp2-ccic.yaml     | 102 ++++++++++++++++++
>  2 files changed, 102 insertions(+), 50 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/media/marvell,mmp2-ccic.txt
>  create mode 100644 Documentation/devicetree/bindings/media/marvell,mmp2-ccic.yaml
> 
> diff --git a/Documentation/devicetree/bindings/media/marvell,mmp2-ccic.txt b/Documentation/devicetree/bindings/media/marvell,mmp2-ccic.txt
> deleted file mode 100644
> index 7ec2c8c8a3b98..0000000000000
> --- a/Documentation/devicetree/bindings/media/marvell,mmp2-ccic.txt
> +++ /dev/null
> @@ -1,50 +0,0 @@
> -Marvell MMP2 camera host interface
> -
> -Required properties:
> - - compatible: Should be "marvell,mmp2-ccic".
> - - reg: Register base and size.
> - - interrupts: The interrupt number.
> - - #clock-cells: Must be 0.
> -
> -Optional properties:
> - - clocks: Reference to the input clock as specified by
> -           Documentation/devicetree/bindings/clock/clock-bindings.txt.
> - - clock-names: Names of the clocks used; "axi" for the AXI bus interface,
> -                "func" for the peripheral clock and "phy" for the parallel
> -                video bus interface.
> - - clock-output-names: Optional clock source for sensors. Shall be "mclk".
> -
> -Required subnodes:
> - - port: The parallel bus interface port with a single endpoint linked to
> -         the sensor's endpoint as described in
> -         Documentation/devicetree/bindings/media/video-interfaces.txt.
> -
> -Required endpoint properties:
> - - bus-type: data bus type, <5> or <6> for Parallel or Bt.656 respectively
> - - pclk-sample: pixel clock polarity
> - - hsync-active: horizontal synchronization polarity (only required for
> -   parallel bus)
> - - vsync-active: vertical synchronization polarity (only required for
> -   parallel bus)
> -
> -Example:
> -
> -	camera0: camera@d420a000 {
> -		compatible = "marvell,mmp2-ccic";
> -		reg = <0xd420a000 0x800>;
> -		interrupts = <42>;
> -		clocks = <&soc_clocks MMP2_CLK_CCIC0>;
> -		clock-names = "axi";
> -		#clock-cells = <0>;
> -		clock-output-names = "mclk";
> -
> -		port {
> -			camera0_0: endpoint {
> -				remote-endpoint = <&ov7670_0>;
> -                                bus-type = <5>;      /* Parallel */
> -                                hsync-active = <1>;  /* Active high */
> -                                vsync-active = <1>;  /* Active high */
> -                                pclk-sample = <0>;   /* Falling */
> -			};
> -		};
> -	};
> diff --git a/Documentation/devicetree/bindings/media/marvell,mmp2-ccic.yaml b/Documentation/devicetree/bindings/media/marvell,mmp2-ccic.yaml
> new file mode 100644
> index 0000000000000..890a3f9d0302f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/marvell,mmp2-ccic.yaml
> @@ -0,0 +1,102 @@
> +# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)

GPL-2.0-only please. Dual license only if you have rights on the old 
file to do so.

> +# Copyright 2019,2020 Lubomir Rintel <lkundrak@xxxxx>
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/media/marvell,mmp2-ccic.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Marvell MMP2 camera host interface bindings
> +
> +maintainers:
> +  - Lubomir Rintel <lkundrak@xxxxx>
> +
> +properties:
> +  $nodename:
> +    pattern: '^camera@[a-f0-9]+$'
> +
> +  compatible:
> +    const: marvell,mmp2-ccic
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  port:
> +    type: object
> +    additionalProperties: false
> +
> +    properties:
> +       endpoint:

Wrong indentaion.

> +         type: object
> +         additionalProperties: false
> +
> +         # Properties described in
> +         # Documentation/devicetree/bindings/media/video-interfaces.txt
> +         properties:
> +           remote-endpoint: true
> +           hsync-active: true
> +           vsync-active: true
> +           pclk-sample: true
> +           bus-type: true
> +
> +         required:
> +           - remote-endpoint
> +
> +    required:
> +      - endpoint
> +
> +  clocks:
> +    minItems: 1
> +    maxItems: 3

Shouldn't really be variable for a single compatible.

> +    items:
> +      - description: AXI bus interface clock
> +      - description: Peripheral clock
> +      - description: Parallel video bus interface clock
> +
> +  clock-names:
> +    minItems: 1
> +    maxItems: 3
> +    items:
> +      - const: axi
> +      - const: func
> +      - const: phy
> +
> +  '#clock-cells':
> +    const: 0
> +
> +  clock-output-names:
> +    const: mclk
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - port
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/marvell,mmp2.h>
> +
> +    camera@d420a000 {
> +      compatible = "marvell,mmp2-ccic";
> +      reg = <0xd420a000 0x800>;
> +      interrupts = <42>;
> +      clocks = <&soc_clocks MMP2_CLK_CCIC0>;
> +      clock-names = "axi";
> +      #clock-cells = <0>;
> +      clock-output-names = "mclk";
> +
> +      port {
> +        camera0_0: endpoint {
> +          remote-endpoint = <&ov7670_0>;
> +          bus-type = <5>;      /* Parallel */
> +          hsync-active = <1>;  /* Active high */
> +          vsync-active = <1>;  /* Active high */
> +          pclk-sample = <0>;   /* Falling */
> +        };
> +      };
> +    };
> +
> +...
> -- 
> 2.25.1
> 



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux