# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/media/starfive,jh7110-camss.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Starfive SoC CAMSS ISP maintainers: - Jack Zhu - Changhuang Liang description: The Starfive CAMSS ISP is a Camera interface for Starfive JH7110 SoC. It consists of a VIN controller (Video In Controller, a top-level control unit) and an ISP. properties: compatible: const: starfive,jh7110-camss reg: maxItems: 2 reg-names: items: - const: syscon - const: isp clocks: maxItems: 7 clock-names: items: - const: apb_func - const: wrapper_clk_c - const: dvp_inv - const: axiwr - const: mipi_rx0_pxl - const: ispcore_2x - const: isp_axi resets: maxItems: 6 reset-names: items: - const: wrapper_p - const: wrapper_c - const: axird - const: axiwr - const: isp_top_n - const: isp_top_axi power-domains: items: - description: JH7110 ISP Power Domain Switch Controller. interrupts: maxItems: 4 ports: $ref: /schemas/graph.yaml#/properties/ports properties: port@0: $ref: /schemas/graph.yaml#/$defs/port-base unevaluatedProperties: false description: Input port for receiving DVP data. properties: endpoint: $ref: video-interfaces.yaml# unevaluatedProperties: false properties: bus-type: enum: [5, 6] bus-width: enum: [8, 10, 12] data-shift: enum: [0, 2] default: 0 hsync-active: enum: [0, 1] default: 1 vsync-active: enum: [0, 1] default: 1 required: - bus-type - bus-width port@1: $ref: /schemas/graph.yaml#/properties/port description: Input port for receiving CSI data. required: - port@0 - port@1 required: - compatible - reg - reg-names - clocks - clock-names - resets - reset-names - power-domains - interrupts - ports additionalProperties: false examples: - | isp@19840000 { compatible = "starfive,jh7110-camss"; reg = <0x19840000 0x10000>, <0x19870000 0x30000>; reg-names = "syscon", "isp"; clocks = <&ispcrg 0>, <&ispcrg 13>, <&ispcrg 2>, <&ispcrg 12>, <&ispcrg 1>, <&syscrg 51>, <&syscrg 52>; clock-names = "apb_func", "wrapper_clk_c", "dvp_inv", "axiwr", "mipi_rx0_pxl", "ispcore_2x", "isp_axi"; resets = <&ispcrg 0>, <&ispcrg 1>, <&ispcrg 10>, <&ispcrg 11>, <&syscrg 41>, <&syscrg 42>; reset-names = "wrapper_p", "wrapper_c", "axird", "axiwr", "isp_top_n", "isp_top_axi"; power-domains = <&pwrc 5>; interrupts = <92>, <87>, <88>, <90>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; vin_from_sc2235: endpoint { remote-endpoint = <&sc2235_to_vin>; bus-type = <5>; bus-width = <8>; data-shift = <2>; hsync-active = <1>; vsync-active = <0>; pclk-sample = <1>; }; }; port@1 { reg = <1>; vin_from_csi2rx: endpoint { remote-endpoint = <&csi2rx_to_vin>; }; }; }; };