162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
262306a36Sopenharmony_ci# Copyright (C) 2021 Renesas Electronics Corp.
362306a36Sopenharmony_ci%YAML 1.2
462306a36Sopenharmony_ci---
562306a36Sopenharmony_ci$id: http://devicetree.org/schemas/media/renesas,isp.yaml#
662306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
762306a36Sopenharmony_ci
862306a36Sopenharmony_cititle: Renesas R-Car ISP Channel Selector
962306a36Sopenharmony_ci
1062306a36Sopenharmony_cimaintainers:
1162306a36Sopenharmony_ci  - Niklas Söderlund <niklas.soderlund@ragnatech.se>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_cidescription:
1462306a36Sopenharmony_ci  The R-Car ISP Channel Selector provides MIPI CSI-2 VC and DT filtering
1562306a36Sopenharmony_ci  capabilities for the Renesas R-Car family of devices. It is used in
1662306a36Sopenharmony_ci  conjunction with the R-Car VIN and CSI-2 modules, which provides the video
1762306a36Sopenharmony_ci  capture capabilities.
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ciproperties:
2062306a36Sopenharmony_ci  compatible:
2162306a36Sopenharmony_ci    items:
2262306a36Sopenharmony_ci      - enum:
2362306a36Sopenharmony_ci          - renesas,r8a779a0-isp # V3U
2462306a36Sopenharmony_ci          - renesas,r8a779g0-isp # V4H
2562306a36Sopenharmony_ci  reg:
2662306a36Sopenharmony_ci    maxItems: 1
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci  interrupts:
2962306a36Sopenharmony_ci    maxItems: 1
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci  clocks:
3262306a36Sopenharmony_ci    maxItems: 1
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci  power-domains:
3562306a36Sopenharmony_ci    maxItems: 1
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci  resets:
3862306a36Sopenharmony_ci    maxItems: 1
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci  ports:
4162306a36Sopenharmony_ci    $ref: /schemas/graph.yaml#/properties/ports
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci    properties:
4462306a36Sopenharmony_ci      port@0:
4562306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
4662306a36Sopenharmony_ci        description:
4762306a36Sopenharmony_ci          Input port node, multiple endpoints describing the connected R-Car
4862306a36Sopenharmony_ci          CSI-2 receivers.
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci      port@1:
5162306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
5262306a36Sopenharmony_ci        description:
5362306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 0.
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci      port@2:
5662306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
5762306a36Sopenharmony_ci        description:
5862306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 1.
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ci      port@3:
6162306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
6262306a36Sopenharmony_ci        description:
6362306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 2.
6462306a36Sopenharmony_ci
6562306a36Sopenharmony_ci      port@4:
6662306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
6762306a36Sopenharmony_ci        description:
6862306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 3.
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_ci      port@5:
7162306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
7262306a36Sopenharmony_ci        description:
7362306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 4.
7462306a36Sopenharmony_ci
7562306a36Sopenharmony_ci      port@6:
7662306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
7762306a36Sopenharmony_ci        description:
7862306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 5.
7962306a36Sopenharmony_ci
8062306a36Sopenharmony_ci      port@7:
8162306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
8262306a36Sopenharmony_ci        description:
8362306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 6.
8462306a36Sopenharmony_ci
8562306a36Sopenharmony_ci      port@8:
8662306a36Sopenharmony_ci        $ref: /schemas/graph.yaml#/properties/port
8762306a36Sopenharmony_ci        description:
8862306a36Sopenharmony_ci          Single endpoint describing the R-Car VIN connected to output port 7.
8962306a36Sopenharmony_ci
9062306a36Sopenharmony_ci    required:
9162306a36Sopenharmony_ci      - port@0
9262306a36Sopenharmony_ci      - port@1
9362306a36Sopenharmony_ci      - port@2
9462306a36Sopenharmony_ci      - port@3
9562306a36Sopenharmony_ci      - port@4
9662306a36Sopenharmony_ci      - port@5
9762306a36Sopenharmony_ci      - port@6
9862306a36Sopenharmony_ci      - port@7
9962306a36Sopenharmony_ci      - port@8
10062306a36Sopenharmony_ci
10162306a36Sopenharmony_cirequired:
10262306a36Sopenharmony_ci  - compatible
10362306a36Sopenharmony_ci  - reg
10462306a36Sopenharmony_ci  - interrupts
10562306a36Sopenharmony_ci  - clocks
10662306a36Sopenharmony_ci  - power-domains
10762306a36Sopenharmony_ci  - resets
10862306a36Sopenharmony_ci  - ports
10962306a36Sopenharmony_ci
11062306a36Sopenharmony_ciadditionalProperties: false
11162306a36Sopenharmony_ci
11262306a36Sopenharmony_ciexamples:
11362306a36Sopenharmony_ci  - |
11462306a36Sopenharmony_ci    #include <dt-bindings/clock/r8a779a0-cpg-mssr.h>
11562306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
11662306a36Sopenharmony_ci    #include <dt-bindings/power/r8a779a0-sysc.h>
11762306a36Sopenharmony_ci
11862306a36Sopenharmony_ci    isp1: isp@fed20000 {
11962306a36Sopenharmony_ci            compatible = "renesas,r8a779a0-isp";
12062306a36Sopenharmony_ci            reg = <0xfed20000 0x10000>;
12162306a36Sopenharmony_ci            interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
12262306a36Sopenharmony_ci            clocks = <&cpg CPG_MOD 613>;
12362306a36Sopenharmony_ci            power-domains = <&sysc R8A779A0_PD_A3ISP01>;
12462306a36Sopenharmony_ci            resets = <&cpg 613>;
12562306a36Sopenharmony_ci
12662306a36Sopenharmony_ci            ports {
12762306a36Sopenharmony_ci                    #address-cells = <1>;
12862306a36Sopenharmony_ci                    #size-cells = <0>;
12962306a36Sopenharmony_ci
13062306a36Sopenharmony_ci                    port@0 {
13162306a36Sopenharmony_ci                            #address-cells = <1>;
13262306a36Sopenharmony_ci                            #size-cells = <0>;
13362306a36Sopenharmony_ci
13462306a36Sopenharmony_ci                            reg = <0>;
13562306a36Sopenharmony_ci                            isp1csi41: endpoint@1 {
13662306a36Sopenharmony_ci                                    reg = <1>;
13762306a36Sopenharmony_ci                                    remote-endpoint = <&csi41isp1>;
13862306a36Sopenharmony_ci                            };
13962306a36Sopenharmony_ci                    };
14062306a36Sopenharmony_ci
14162306a36Sopenharmony_ci                    port@1 {
14262306a36Sopenharmony_ci                            reg = <1>;
14362306a36Sopenharmony_ci                            isp1vin08: endpoint {
14462306a36Sopenharmony_ci                                    remote-endpoint = <&vin08isp1>;
14562306a36Sopenharmony_ci                            };
14662306a36Sopenharmony_ci                    };
14762306a36Sopenharmony_ci
14862306a36Sopenharmony_ci                    port@2 {
14962306a36Sopenharmony_ci                            reg = <2>;
15062306a36Sopenharmony_ci                            isp1vin09: endpoint {
15162306a36Sopenharmony_ci                                    remote-endpoint = <&vin09isp1>;
15262306a36Sopenharmony_ci                            };
15362306a36Sopenharmony_ci                    };
15462306a36Sopenharmony_ci
15562306a36Sopenharmony_ci                    port@3 {
15662306a36Sopenharmony_ci                            reg = <3>;
15762306a36Sopenharmony_ci                            isp1vin10: endpoint {
15862306a36Sopenharmony_ci                                    remote-endpoint = <&vin10isp1>;
15962306a36Sopenharmony_ci                            };
16062306a36Sopenharmony_ci                    };
16162306a36Sopenharmony_ci
16262306a36Sopenharmony_ci                    port@4 {
16362306a36Sopenharmony_ci                            reg = <4>;
16462306a36Sopenharmony_ci                            isp1vin11: endpoint {
16562306a36Sopenharmony_ci                                    remote-endpoint = <&vin11isp1>;
16662306a36Sopenharmony_ci                            };
16762306a36Sopenharmony_ci                    };
16862306a36Sopenharmony_ci
16962306a36Sopenharmony_ci                    port@5 {
17062306a36Sopenharmony_ci                            reg = <5>;
17162306a36Sopenharmony_ci                            isp1vin12: endpoint {
17262306a36Sopenharmony_ci                                    remote-endpoint = <&vin12isp1>;
17362306a36Sopenharmony_ci                            };
17462306a36Sopenharmony_ci                    };
17562306a36Sopenharmony_ci
17662306a36Sopenharmony_ci                    port@6 {
17762306a36Sopenharmony_ci                            reg = <6>;
17862306a36Sopenharmony_ci                            isp1vin13: endpoint {
17962306a36Sopenharmony_ci                                    remote-endpoint = <&vin13isp1>;
18062306a36Sopenharmony_ci                            };
18162306a36Sopenharmony_ci                    };
18262306a36Sopenharmony_ci
18362306a36Sopenharmony_ci                    port@7 {
18462306a36Sopenharmony_ci                            reg = <7>;
18562306a36Sopenharmony_ci                            isp1vin14: endpoint {
18662306a36Sopenharmony_ci                                    remote-endpoint = <&vin14isp1>;
18762306a36Sopenharmony_ci                            };
18862306a36Sopenharmony_ci                    };
18962306a36Sopenharmony_ci
19062306a36Sopenharmony_ci                    port@8 {
19162306a36Sopenharmony_ci                            reg = <8>;
19262306a36Sopenharmony_ci                            isp1vin15: endpoint {
19362306a36Sopenharmony_ci                                    remote-endpoint = <&vin15isp1>;
19462306a36Sopenharmony_ci                            };
19562306a36Sopenharmony_ci                    };
19662306a36Sopenharmony_ci            };
19762306a36Sopenharmony_ci    };
198