226 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/media/samsung,exynos4212-fimc-is.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Samsung Exynos4212/4412 SoC Imaging Subsystem (FIMC-IS)8 9maintainers:10 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>11 - Sylwester Nawrocki <s.nawrocki@samsung.com>12 13description:14 The FIMC-IS is a subsystem for processing image signal from an image sensor.15 The Exynos4x12 SoC series FIMC-IS V1.5 comprises of a dedicated ARM Cortex-A516 processor, ISP, DRC and FD IP blocks and peripheral devices such as UART, I2C17 and SPI bus controllers, PWM and ADC.18 19properties:20 compatible:21 enum:22 - samsung,exynos4212-fimc-is23 24 reg:25 maxItems: 126 27 ranges: true28 29 '#address-cells':30 const: 131 32 '#size-cells':33 const: 134 35 clocks:36 maxItems: 2137 38 clock-names:39 items:40 - const: lite041 - const: lite142 - const: ppmuispx43 - const: ppmuispmx44 - const: isp45 - const: drc46 - const: fd47 - const: mcuisp48 - const: gicisp49 - const: mcuctl_isp50 - const: pwm_isp51 - const: ispdiv052 - const: ispdiv153 - const: mcuispdiv054 - const: mcuispdiv155 - const: mpll56 - const: aclk20057 - const: aclk400mcuisp58 - const: div_aclk20059 - const: div_aclk400mcuisp60 - const: uart61 62 interrupts:63 maxItems: 264 65 iommus:66 maxItems: 467 68 iommu-names:69 items:70 - const: isp71 - const: drc72 - const: fd73 - const: mcuctl74 75 power-domains:76 maxItems: 177 78 samsung,pmu-syscon:79 $ref: /schemas/types.yaml#/definitions/phandle80 description:81 Power Management Unit (PMU) system controller interface, used to82 power/start the ISP.83 84patternProperties:85 "^pmu@[0-9a-f]+$":86 type: object87 additionalProperties: false88 deprecated: true89 description:90 Node representing the SoC's Power Management Unit (duplicated with the91 correct PMU node in the SoC). Deprecated, use samsung,pmu-syscon.92 93 properties:94 reg:95 maxItems: 196 97 required:98 - reg99 100 "^i2c-isp@[0-9a-f]+$":101 type: object102 $ref: /schemas/i2c/i2c-controller.yaml#103 unevaluatedProperties: false104 description:105 ISP I2C bus controller106 107 properties:108 compatible:109 const: samsung,exynos4212-i2c-isp110 111 reg:112 maxItems: 1113 114 115 clocks:116 maxItems: 1117 118 clock-names:119 items:120 - const: i2c_isp121 122 pinctrl-0: true123 pinctrl-names:124 items:125 - const: default126 127 required:128 - compatible129 - reg130 - clocks131 - clock-names132 133required:134 - compatible135 - reg136 - '#address-cells'137 - clocks138 - clock-names139 - interrupts140 - ranges141 - samsung,pmu-syscon142 - '#size-cells'143 144additionalProperties: false145 146examples:147 - |148 #include <dt-bindings/clock/exynos4.h>149 #include <dt-bindings/gpio/gpio.h>150 #include <dt-bindings/interrupt-controller/arm-gic.h>151 152 fimc-is@12000000 {153 compatible = "samsung,exynos4212-fimc-is";154 reg = <0x12000000 0x260000>;155 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,156 <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;157 clocks = <&isp_clock CLK_ISP_FIMC_LITE0>,158 <&isp_clock CLK_ISP_FIMC_LITE1>,159 <&isp_clock CLK_ISP_PPMUISPX>,160 <&isp_clock CLK_ISP_PPMUISPMX>,161 <&isp_clock CLK_ISP_FIMC_ISP>,162 <&isp_clock CLK_ISP_FIMC_DRC>,163 <&isp_clock CLK_ISP_FIMC_FD>,164 <&isp_clock CLK_ISP_MCUISP>,165 <&isp_clock CLK_ISP_GICISP>,166 <&isp_clock CLK_ISP_MCUCTL_ISP>,167 <&isp_clock CLK_ISP_PWM_ISP>,168 <&isp_clock CLK_ISP_DIV_ISP0>,169 <&isp_clock CLK_ISP_DIV_ISP1>,170 <&isp_clock CLK_ISP_DIV_MCUISP0>,171 <&isp_clock CLK_ISP_DIV_MCUISP1>,172 <&clock CLK_MOUT_MPLL_USER_T>,173 <&clock CLK_ACLK200>,174 <&clock CLK_ACLK400_MCUISP>,175 <&clock CLK_DIV_ACLK200>,176 <&clock CLK_DIV_ACLK400_MCUISP>,177 <&clock CLK_UART_ISP_SCLK>;178 clock-names = "lite0", "lite1", "ppmuispx",179 "ppmuispmx", "isp",180 "drc", "fd", "mcuisp",181 "gicisp", "mcuctl_isp", "pwm_isp",182 "ispdiv0", "ispdiv1", "mcuispdiv0",183 "mcuispdiv1", "mpll", "aclk200",184 "aclk400mcuisp", "div_aclk200",185 "div_aclk400mcuisp", "uart";186 iommus = <&sysmmu_fimc_isp>, <&sysmmu_fimc_drc>,187 <&sysmmu_fimc_fd>, <&sysmmu_fimc_mcuctl>;188 iommu-names = "isp", "drc", "fd", "mcuctl";189 power-domains = <&pd_isp>;190 samsung,pmu-syscon = <&pmu_system_controller>;191 192 #address-cells = <1>;193 #size-cells = <1>;194 ranges;195 196 i2c-isp@12140000 {197 compatible = "samsung,exynos4212-i2c-isp";198 reg = <0x12140000 0x100>;199 clocks = <&isp_clock CLK_ISP_I2C1_ISP>;200 clock-names = "i2c_isp";201 pinctrl-0 = <&fimc_is_i2c1>;202 pinctrl-names = "default";203 #address-cells = <1>;204 #size-cells = <0>;205 206 image-sensor@10 {207 compatible = "samsung,s5k6a3";208 reg = <0x10>;209 svdda-supply = <&cam_io_reg>;210 svddio-supply = <&ldo19_reg>;211 afvdd-supply = <&ldo19_reg>;212 clock-frequency = <24000000>;213 clocks = <&camera 1>;214 clock-names = "extclk";215 gpios = <&gpm1 6 GPIO_ACTIVE_LOW>;216 217 port {218 endpoint {219 remote-endpoint = <&csis1_ep>;220 data-lanes = <1>;221 };222 };223 };224 };225 };226