197 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			197 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
 | 
						|
# Copyright (C) 2021 Renesas Electronics Corp.
 | 
						|
%YAML 1.2
 | 
						|
---
 | 
						|
$id: http://devicetree.org/schemas/media/renesas,isp.yaml#
 | 
						|
$schema: http://devicetree.org/meta-schemas/core.yaml#
 | 
						|
 | 
						|
title: Renesas R-Car ISP Channel Selector
 | 
						|
 | 
						|
maintainers:
 | 
						|
  - Niklas Söderlund <niklas.soderlund@ragnatech.se>
 | 
						|
 | 
						|
description:
 | 
						|
  The R-Car ISP Channel Selector provides MIPI CSI-2 VC and DT filtering
 | 
						|
  capabilities for the Renesas R-Car family of devices. It is used in
 | 
						|
  conjunction with the R-Car VIN and CSI-2 modules, which provides the video
 | 
						|
  capture capabilities.
 | 
						|
 | 
						|
properties:
 | 
						|
  compatible:
 | 
						|
    items:
 | 
						|
      - enum:
 | 
						|
          - renesas,r8a779a0-isp # V3U
 | 
						|
  reg:
 | 
						|
    maxItems: 1
 | 
						|
 | 
						|
  interrupts:
 | 
						|
    maxItems: 1
 | 
						|
 | 
						|
  clocks:
 | 
						|
    maxItems: 1
 | 
						|
 | 
						|
  power-domains:
 | 
						|
    maxItems: 1
 | 
						|
 | 
						|
  resets:
 | 
						|
    maxItems: 1
 | 
						|
 | 
						|
  ports:
 | 
						|
    $ref: /schemas/graph.yaml#/properties/ports
 | 
						|
 | 
						|
    properties:
 | 
						|
      port@0:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Input port node, multiple endpoints describing the connected R-Car
 | 
						|
          CSI-2 receivers.
 | 
						|
 | 
						|
      port@1:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 0.
 | 
						|
 | 
						|
      port@2:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 1.
 | 
						|
 | 
						|
      port@3:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 2.
 | 
						|
 | 
						|
      port@4:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 3.
 | 
						|
 | 
						|
      port@5:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 4.
 | 
						|
 | 
						|
      port@6:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 5.
 | 
						|
 | 
						|
      port@7:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 6.
 | 
						|
 | 
						|
      port@8:
 | 
						|
        $ref: /schemas/graph.yaml#/properties/port
 | 
						|
        description:
 | 
						|
          Single endpoint describing the R-Car VIN connected to output port 7.
 | 
						|
 | 
						|
    required:
 | 
						|
      - port@0
 | 
						|
      - port@1
 | 
						|
      - port@2
 | 
						|
      - port@3
 | 
						|
      - port@4
 | 
						|
      - port@5
 | 
						|
      - port@6
 | 
						|
      - port@7
 | 
						|
      - port@8
 | 
						|
 | 
						|
required:
 | 
						|
  - compatible
 | 
						|
  - reg
 | 
						|
  - interrupts
 | 
						|
  - clocks
 | 
						|
  - power-domains
 | 
						|
  - resets
 | 
						|
  - ports
 | 
						|
 | 
						|
additionalProperties: false
 | 
						|
 | 
						|
examples:
 | 
						|
  - |
 | 
						|
    #include <dt-bindings/clock/r8a779a0-cpg-mssr.h>
 | 
						|
    #include <dt-bindings/interrupt-controller/arm-gic.h>
 | 
						|
    #include <dt-bindings/power/r8a779a0-sysc.h>
 | 
						|
 | 
						|
    isp1: isp@fed20000 {
 | 
						|
            compatible = "renesas,r8a779a0-isp";
 | 
						|
            reg = <0xfed20000 0x10000>;
 | 
						|
            interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
 | 
						|
            clocks = <&cpg CPG_MOD 613>;
 | 
						|
            power-domains = <&sysc R8A779A0_PD_A3ISP01>;
 | 
						|
            resets = <&cpg 613>;
 | 
						|
 | 
						|
            ports {
 | 
						|
                    #address-cells = <1>;
 | 
						|
                    #size-cells = <0>;
 | 
						|
 | 
						|
                    port@0 {
 | 
						|
                            #address-cells = <1>;
 | 
						|
                            #size-cells = <0>;
 | 
						|
 | 
						|
                            reg = <0>;
 | 
						|
                            isp1csi41: endpoint@1 {
 | 
						|
                                    reg = <1>;
 | 
						|
                                    remote-endpoint = <&csi41isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@1 {
 | 
						|
                            reg = <1>;
 | 
						|
                            isp1vin08: endpoint {
 | 
						|
                                    remote-endpoint = <&vin08isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@2 {
 | 
						|
                            reg = <2>;
 | 
						|
                            isp1vin09: endpoint {
 | 
						|
                                    remote-endpoint = <&vin09isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@3 {
 | 
						|
                            reg = <3>;
 | 
						|
                            isp1vin10: endpoint {
 | 
						|
                                    remote-endpoint = <&vin10isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@4 {
 | 
						|
                            reg = <4>;
 | 
						|
                            isp1vin11: endpoint {
 | 
						|
                                    remote-endpoint = <&vin11isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@5 {
 | 
						|
                            reg = <5>;
 | 
						|
                            isp1vin12: endpoint {
 | 
						|
                                    remote-endpoint = <&vin12isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@6 {
 | 
						|
                            reg = <6>;
 | 
						|
                            isp1vin13: endpoint {
 | 
						|
                                    remote-endpoint = <&vin13isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@7 {
 | 
						|
                            reg = <7>;
 | 
						|
                            isp1vin14: endpoint {
 | 
						|
                                    remote-endpoint = <&vin14isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    port@8 {
 | 
						|
                            reg = <8>;
 | 
						|
                            isp1vin15: endpoint {
 | 
						|
                                    remote-endpoint = <&vin15isp1>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
            };
 | 
						|
    };
 |