1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2fac71e4eSEmmanuel Vadot%YAML 1.2 3fac71e4eSEmmanuel Vadot--- 4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/media/samsung,exynos4210-fimc.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6fac71e4eSEmmanuel Vadot 7fac71e4eSEmmanuel Vadottitle: Samsung S5P/Exynos SoC Fully Integrated Mobile Camera 8fac71e4eSEmmanuel Vadot 9fac71e4eSEmmanuel Vadotmaintainers: 10fac71e4eSEmmanuel Vadot - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 11fac71e4eSEmmanuel Vadot - Sylwester Nawrocki <s.nawrocki@samsung.com> 12fac71e4eSEmmanuel Vadot 13fac71e4eSEmmanuel Vadotdescription: 14fac71e4eSEmmanuel Vadot Each FIMC device should have an alias in the aliases node, in the form of 15fac71e4eSEmmanuel Vadot fimc<n>, where <n> is an integer specifying the IP block instance. 16fac71e4eSEmmanuel Vadot 17fac71e4eSEmmanuel Vadotproperties: 18fac71e4eSEmmanuel Vadot compatible: 19fac71e4eSEmmanuel Vadot enum: 20fac71e4eSEmmanuel Vadot - samsung,exynos4210-fimc 21fac71e4eSEmmanuel Vadot - samsung,exynos4212-fimc 22fac71e4eSEmmanuel Vadot - samsung,s5pv210-fimc 23fac71e4eSEmmanuel Vadot 24fac71e4eSEmmanuel Vadot reg: 25fac71e4eSEmmanuel Vadot maxItems: 1 26fac71e4eSEmmanuel Vadot 27fac71e4eSEmmanuel Vadot clocks: 28fac71e4eSEmmanuel Vadot maxItems: 2 29fac71e4eSEmmanuel Vadot 30fac71e4eSEmmanuel Vadot clock-names: 31fac71e4eSEmmanuel Vadot items: 32fac71e4eSEmmanuel Vadot - const: fimc 33fac71e4eSEmmanuel Vadot - const: sclk_fimc 34fac71e4eSEmmanuel Vadot 35fac71e4eSEmmanuel Vadot clock-frequency: 36fac71e4eSEmmanuel Vadot description: 37fac71e4eSEmmanuel Vadot Maximum FIMC local clock (LCLK) frequency. 38fac71e4eSEmmanuel Vadot 39fac71e4eSEmmanuel Vadot interrupts: 40fac71e4eSEmmanuel Vadot maxItems: 1 41fac71e4eSEmmanuel Vadot 42fac71e4eSEmmanuel Vadot iommus: 43fac71e4eSEmmanuel Vadot maxItems: 1 44fac71e4eSEmmanuel Vadot 45fac71e4eSEmmanuel Vadot power-domains: 46fac71e4eSEmmanuel Vadot maxItems: 1 47fac71e4eSEmmanuel Vadot 48fac71e4eSEmmanuel Vadot samsung,cam-if: 49fac71e4eSEmmanuel Vadot type: boolean 50fac71e4eSEmmanuel Vadot description: 51fac71e4eSEmmanuel Vadot The FIMC IP block includes the camera input interface. 52fac71e4eSEmmanuel Vadot 53fac71e4eSEmmanuel Vadot samsung,isp-wb: 54fac71e4eSEmmanuel Vadot type: boolean 55fac71e4eSEmmanuel Vadot description: | 56fac71e4eSEmmanuel Vadot The FIMC IP block has the ISP writeback input. 57fac71e4eSEmmanuel Vadot 58fac71e4eSEmmanuel Vadot samsung,lcd-wb: 59fac71e4eSEmmanuel Vadot type: boolean 60fac71e4eSEmmanuel Vadot description: | 61fac71e4eSEmmanuel Vadot The FIMC IP block has the LCD writeback input. 62fac71e4eSEmmanuel Vadot 63fac71e4eSEmmanuel Vadot samsung,mainscaler-ext: 64fac71e4eSEmmanuel Vadot type: boolean 65fac71e4eSEmmanuel Vadot description: 66fac71e4eSEmmanuel Vadot FIMC IP supports extended image size and has CIEXTEN register. 67fac71e4eSEmmanuel Vadot 68fac71e4eSEmmanuel Vadot samsung,min-pix-alignment: 69fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 70fac71e4eSEmmanuel Vadot items: 71fac71e4eSEmmanuel Vadot - description: Minimum supported image height alignment. 72fac71e4eSEmmanuel Vadot - description: Horizontal image offset. 73fac71e4eSEmmanuel Vadot description: 74fac71e4eSEmmanuel Vadot The values are in pixels and default is <2 1>. 75fac71e4eSEmmanuel Vadot 76fac71e4eSEmmanuel Vadot samsung,min-pix-sizes: 77fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 78fac71e4eSEmmanuel Vadot maxItems: 2 79fac71e4eSEmmanuel Vadot description: | 80*b2d2a78aSEmmanuel Vadot An array specifying minimum image size in pixels at the FIMC input and 81fac71e4eSEmmanuel Vadot output DMA, in the first and second cell respectively. Default value 82fac71e4eSEmmanuel Vadot is <16 16>. 83fac71e4eSEmmanuel Vadot 84fac71e4eSEmmanuel Vadot samsung,pix-limits: 85fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 86fac71e4eSEmmanuel Vadot maxItems: 4 87fac71e4eSEmmanuel Vadot description: | 88fac71e4eSEmmanuel Vadot An array of maximum supported image sizes in pixels, for details refer to 89fac71e4eSEmmanuel Vadot Table 2-1 in the S5PV210 SoC User Manual. The meaning of each cell is as 90fac71e4eSEmmanuel Vadot follows: 91fac71e4eSEmmanuel Vadot 0 - scaler input horizontal size 92fac71e4eSEmmanuel Vadot 1 - input horizontal size for the scaler bypassed 93fac71e4eSEmmanuel Vadot 2 - REAL_WIDTH without input rotation 94fac71e4eSEmmanuel Vadot 3 - REAL_HEIGHT with input rotation 95fac71e4eSEmmanuel Vadot 96fac71e4eSEmmanuel Vadot samsung,rotators: 97fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 98fac71e4eSEmmanuel Vadot default: 0x11 99fac71e4eSEmmanuel Vadot description: | 100fac71e4eSEmmanuel Vadot A bitmask specifying whether this IP has the input and the output 101fac71e4eSEmmanuel Vadot rotator. Bits 4 and 0 correspond to input and output rotator 102fac71e4eSEmmanuel Vadot respectively. If a rotator is present its corresponding bit should be 103fac71e4eSEmmanuel Vadot set. 104fac71e4eSEmmanuel Vadot 105fac71e4eSEmmanuel Vadot samsung,sysreg: 106fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 107fac71e4eSEmmanuel Vadot description: 108fac71e4eSEmmanuel Vadot System Registers (SYSREG) node. 109fac71e4eSEmmanuel Vadot 110fac71e4eSEmmanuel Vadotrequired: 111fac71e4eSEmmanuel Vadot - compatible 112fac71e4eSEmmanuel Vadot - reg 113fac71e4eSEmmanuel Vadot - clocks 114fac71e4eSEmmanuel Vadot - clock-names 115fac71e4eSEmmanuel Vadot - samsung,pix-limits 116fac71e4eSEmmanuel Vadot 117fac71e4eSEmmanuel VadotallOf: 118fac71e4eSEmmanuel Vadot - if: 119fac71e4eSEmmanuel Vadot required: 120fac71e4eSEmmanuel Vadot - samsung,isp-wb 121fac71e4eSEmmanuel Vadot then: 122fac71e4eSEmmanuel Vadot required: 123fac71e4eSEmmanuel Vadot - samsung,sysreg 124fac71e4eSEmmanuel Vadot 125fac71e4eSEmmanuel VadotadditionalProperties: false 126fac71e4eSEmmanuel Vadot 127fac71e4eSEmmanuel Vadotexamples: 128fac71e4eSEmmanuel Vadot - | 129fac71e4eSEmmanuel Vadot #include <dt-bindings/clock/exynos4.h> 130fac71e4eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 131fac71e4eSEmmanuel Vadot 132fac71e4eSEmmanuel Vadot fimc@11800000 { 133fac71e4eSEmmanuel Vadot compatible = "samsung,exynos4212-fimc"; 134fac71e4eSEmmanuel Vadot reg = <0x11800000 0x1000>; 135fac71e4eSEmmanuel Vadot clocks = <&clock CLK_FIMC0>, 136fac71e4eSEmmanuel Vadot <&clock CLK_SCLK_FIMC0>; 137fac71e4eSEmmanuel Vadot clock-names = "fimc", "sclk_fimc"; 138fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 139fac71e4eSEmmanuel Vadot iommus = <&sysmmu_fimc0>; 140fac71e4eSEmmanuel Vadot power-domains = <&pd_cam>; 141fac71e4eSEmmanuel Vadot samsung,sysreg = <&sys_reg>; 142fac71e4eSEmmanuel Vadot 143fac71e4eSEmmanuel Vadot samsung,pix-limits = <4224 8192 1920 4224>; 144fac71e4eSEmmanuel Vadot samsung,mainscaler-ext; 145fac71e4eSEmmanuel Vadot samsung,isp-wb; 146fac71e4eSEmmanuel Vadot samsung,cam-if; 147fac71e4eSEmmanuel Vadot 148fac71e4eSEmmanuel Vadot assigned-clocks = <&clock CLK_MOUT_FIMC0>, 149fac71e4eSEmmanuel Vadot <&clock CLK_SCLK_FIMC0>; 150fac71e4eSEmmanuel Vadot assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>; 151fac71e4eSEmmanuel Vadot assigned-clock-rates = <0>, <176000000>; 152fac71e4eSEmmanuel Vadot }; 153