1c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only 2c9ccf3a3SEmmanuel Vadot%YAML 1.2 3c9ccf3a3SEmmanuel Vadot--- 4c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/display/samsung/samsung,fimd.yaml# 5c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c9ccf3a3SEmmanuel Vadot 7c9ccf3a3SEmmanuel Vadottitle: Samsung S3C/S5P/Exynos SoC Fully Interactive Mobile Display (FIMD) 8c9ccf3a3SEmmanuel Vadot 9c9ccf3a3SEmmanuel Vadotmaintainers: 10c9ccf3a3SEmmanuel Vadot - Inki Dae <inki.dae@samsung.com> 11c9ccf3a3SEmmanuel Vadot - Seung-Woo Kim <sw0312.kim@samsung.com> 12c9ccf3a3SEmmanuel Vadot - Kyungmin Park <kyungmin.park@samsung.com> 13c9ccf3a3SEmmanuel Vadot - Krzysztof Kozlowski <krzk@kernel.org> 14c9ccf3a3SEmmanuel Vadot 15c9ccf3a3SEmmanuel Vadotproperties: 16c9ccf3a3SEmmanuel Vadot compatible: 17c9ccf3a3SEmmanuel Vadot enum: 18c9ccf3a3SEmmanuel Vadot - samsung,s3c2443-fimd 19c9ccf3a3SEmmanuel Vadot - samsung,s3c6400-fimd 20c9ccf3a3SEmmanuel Vadot - samsung,s5pv210-fimd 21c9ccf3a3SEmmanuel Vadot - samsung,exynos3250-fimd 22c9ccf3a3SEmmanuel Vadot - samsung,exynos4210-fimd 23c9ccf3a3SEmmanuel Vadot - samsung,exynos5250-fimd 24c9ccf3a3SEmmanuel Vadot - samsung,exynos5420-fimd 25c9ccf3a3SEmmanuel Vadot 26c9ccf3a3SEmmanuel Vadot '#address-cells': 27c9ccf3a3SEmmanuel Vadot const: 1 28c9ccf3a3SEmmanuel Vadot 29c9ccf3a3SEmmanuel Vadot clocks: 30c9ccf3a3SEmmanuel Vadot maxItems: 2 31c9ccf3a3SEmmanuel Vadot 32c9ccf3a3SEmmanuel Vadot clock-names: 33c9ccf3a3SEmmanuel Vadot items: 34c9ccf3a3SEmmanuel Vadot - const: sclk_fimd 35c9ccf3a3SEmmanuel Vadot - const: fimd 36c9ccf3a3SEmmanuel Vadot 37c9ccf3a3SEmmanuel Vadot display-timings: 38c9ccf3a3SEmmanuel Vadot $ref: ../panel/display-timings.yaml# 39c9ccf3a3SEmmanuel Vadot 40c9ccf3a3SEmmanuel Vadot i80-if-timings: 41c9ccf3a3SEmmanuel Vadot type: object 42*7ef62cebSEmmanuel Vadot additionalProperties: false 43c9ccf3a3SEmmanuel Vadot description: | 44c9ccf3a3SEmmanuel Vadot Timing configuration for lcd i80 interface support. 45c9ccf3a3SEmmanuel Vadot The parameters are defined as:: 46c9ccf3a3SEmmanuel Vadot VCLK(internal) __|??????|_____|??????|_____|??????|_____|??????|_____|?? 47c9ccf3a3SEmmanuel Vadot : : : : : 48c9ccf3a3SEmmanuel Vadot Address Output --:<XXXXXXXXXXX:XXXXXXXXXXXX:XXXXXXXXXXXX:XXXXXXXXXXXX:XX 49c9ccf3a3SEmmanuel Vadot | cs-setup+1 | : : : 50c9ccf3a3SEmmanuel Vadot |<---------->| : : : 51c9ccf3a3SEmmanuel Vadot Chip Select ???????????????|____________:____________:____________|?? 52c9ccf3a3SEmmanuel Vadot | wr-setup+1 | | wr-hold+1 | 53c9ccf3a3SEmmanuel Vadot |<---------->| |<---------->| 54c9ccf3a3SEmmanuel Vadot Write Enable ????????????????????????????|____________|??????????????? 55c9ccf3a3SEmmanuel Vadot | wr-active+1| 56c9ccf3a3SEmmanuel Vadot |<---------->| 57c9ccf3a3SEmmanuel Vadot Video Data ----------------------------<XXXXXXXXXXXXXXXXXXXXXXXXX>-- 58c9ccf3a3SEmmanuel Vadot 59c9ccf3a3SEmmanuel Vadot properties: 60c9ccf3a3SEmmanuel Vadot cs-setup: 61c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 62c9ccf3a3SEmmanuel Vadot description: 63c9ccf3a3SEmmanuel Vadot Clock cycles for the active period of address signal is enabled until 64c9ccf3a3SEmmanuel Vadot chip select is enabled. 65c9ccf3a3SEmmanuel Vadot default: 0 66c9ccf3a3SEmmanuel Vadot 67c9ccf3a3SEmmanuel Vadot wr-active: 68c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 69c9ccf3a3SEmmanuel Vadot description: 70c9ccf3a3SEmmanuel Vadot Clock cycles for the active period of CS is enabled. 71c9ccf3a3SEmmanuel Vadot default: 1 72c9ccf3a3SEmmanuel Vadot 73c9ccf3a3SEmmanuel Vadot wr-hold: 74c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 75c9ccf3a3SEmmanuel Vadot description: 76c9ccf3a3SEmmanuel Vadot Clock cycles for the active period of CS is disabled until write 77c9ccf3a3SEmmanuel Vadot signal is disabled. 78c9ccf3a3SEmmanuel Vadot default: 0 79c9ccf3a3SEmmanuel Vadot 80c9ccf3a3SEmmanuel Vadot wr-setup: 81c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 82c9ccf3a3SEmmanuel Vadot description: 83c9ccf3a3SEmmanuel Vadot Clock cycles for the active period of CS signal is enabled until 84c9ccf3a3SEmmanuel Vadot write signal is enabled. 85c9ccf3a3SEmmanuel Vadot default: 0 86c9ccf3a3SEmmanuel Vadot 87c9ccf3a3SEmmanuel Vadot iommus: 88c9ccf3a3SEmmanuel Vadot minItems: 1 89c9ccf3a3SEmmanuel Vadot maxItems: 2 90c9ccf3a3SEmmanuel Vadot 91c9ccf3a3SEmmanuel Vadot iommu-names: 92c9ccf3a3SEmmanuel Vadot items: 93c9ccf3a3SEmmanuel Vadot - const: m0 94c9ccf3a3SEmmanuel Vadot - const: m1 95c9ccf3a3SEmmanuel Vadot 96c9ccf3a3SEmmanuel Vadot interrupts: 97c9ccf3a3SEmmanuel Vadot items: 98c9ccf3a3SEmmanuel Vadot - description: FIFO level 99c9ccf3a3SEmmanuel Vadot - description: VSYNC 100c9ccf3a3SEmmanuel Vadot - description: LCD system 101c9ccf3a3SEmmanuel Vadot 102c9ccf3a3SEmmanuel Vadot interrupt-names: 103c9ccf3a3SEmmanuel Vadot items: 104c9ccf3a3SEmmanuel Vadot - const: fifo 105c9ccf3a3SEmmanuel Vadot - const: vsync 106c9ccf3a3SEmmanuel Vadot - const: lcd_sys 107c9ccf3a3SEmmanuel Vadot 108c9ccf3a3SEmmanuel Vadot power-domains: 109c9ccf3a3SEmmanuel Vadot maxItems: 1 110c9ccf3a3SEmmanuel Vadot 111c9ccf3a3SEmmanuel Vadot reg: 112c9ccf3a3SEmmanuel Vadot maxItems: 1 113c9ccf3a3SEmmanuel Vadot 114c9ccf3a3SEmmanuel Vadot samsung,invert-vden: 115c9ccf3a3SEmmanuel Vadot type: boolean 116c9ccf3a3SEmmanuel Vadot description: 117c9ccf3a3SEmmanuel Vadot Video enable signal is inverted. 118c9ccf3a3SEmmanuel Vadot 119c9ccf3a3SEmmanuel Vadot samsung,invert-vclk: 120c9ccf3a3SEmmanuel Vadot type: boolean 121c9ccf3a3SEmmanuel Vadot description: 122c9ccf3a3SEmmanuel Vadot Video clock signal is inverted. 123c9ccf3a3SEmmanuel Vadot 124c9ccf3a3SEmmanuel Vadot samsung,sysreg: 125c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 126c9ccf3a3SEmmanuel Vadot description: 127c9ccf3a3SEmmanuel Vadot Phandle to System Register syscon. 128c9ccf3a3SEmmanuel Vadot 129c9ccf3a3SEmmanuel Vadot '#size-cells': 130c9ccf3a3SEmmanuel Vadot const: 0 131c9ccf3a3SEmmanuel Vadot 132c9ccf3a3SEmmanuel VadotpatternProperties: 133c9ccf3a3SEmmanuel Vadot "^port@[0-4]+$": 134c9ccf3a3SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 135c9ccf3a3SEmmanuel Vadot description: | 136c9ccf3a3SEmmanuel Vadot Contains ports with port with index:: 137c9ccf3a3SEmmanuel Vadot 0 - for CAMIF0 input, 138c9ccf3a3SEmmanuel Vadot 1 - for CAMIF1 input, 139c9ccf3a3SEmmanuel Vadot 2 - for CAMIF2 input, 140c9ccf3a3SEmmanuel Vadot 3 - for parallel output, 141c9ccf3a3SEmmanuel Vadot 4 - for write-back interface 142c9ccf3a3SEmmanuel Vadot 143c9ccf3a3SEmmanuel Vadotrequired: 144c9ccf3a3SEmmanuel Vadot - compatible 145c9ccf3a3SEmmanuel Vadot - clocks 146c9ccf3a3SEmmanuel Vadot - clock-names 147c9ccf3a3SEmmanuel Vadot - interrupts 148c9ccf3a3SEmmanuel Vadot - interrupt-names 149c9ccf3a3SEmmanuel Vadot - reg 150c9ccf3a3SEmmanuel Vadot 151c9ccf3a3SEmmanuel VadotallOf: 152c9ccf3a3SEmmanuel Vadot - if: 153c9ccf3a3SEmmanuel Vadot properties: 154c9ccf3a3SEmmanuel Vadot compatible: 155c9ccf3a3SEmmanuel Vadot contains: 156c9ccf3a3SEmmanuel Vadot const: samsung,exynos5420-fimd 157c9ccf3a3SEmmanuel Vadot then: 158c9ccf3a3SEmmanuel Vadot properties: 159c9ccf3a3SEmmanuel Vadot iommus: 160c9ccf3a3SEmmanuel Vadot minItems: 2 161c9ccf3a3SEmmanuel Vadot maxItems: 2 162c9ccf3a3SEmmanuel Vadot 163c9ccf3a3SEmmanuel VadotadditionalProperties: false 164c9ccf3a3SEmmanuel Vadot 165c9ccf3a3SEmmanuel Vadotexamples: 166c9ccf3a3SEmmanuel Vadot - | 167c9ccf3a3SEmmanuel Vadot #include <dt-bindings/clock/exynos4.h> 168c9ccf3a3SEmmanuel Vadot 169c9ccf3a3SEmmanuel Vadot fimd@11c00000 { 170c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos4210-fimd"; 171c9ccf3a3SEmmanuel Vadot interrupt-parent = <&combiner>; 172c9ccf3a3SEmmanuel Vadot reg = <0x11c00000 0x20000>; 173c9ccf3a3SEmmanuel Vadot interrupt-names = "fifo", "vsync", "lcd_sys"; 174c9ccf3a3SEmmanuel Vadot interrupts = <11 0>, <11 1>, <11 2>; 175c9ccf3a3SEmmanuel Vadot clocks = <&clock CLK_SCLK_FIMD0>, <&clock CLK_FIMD0>; 176c9ccf3a3SEmmanuel Vadot clock-names = "sclk_fimd", "fimd"; 177c9ccf3a3SEmmanuel Vadot power-domains = <&pd_lcd0>; 178c9ccf3a3SEmmanuel Vadot iommus = <&sysmmu_fimd0>; 179c9ccf3a3SEmmanuel Vadot samsung,sysreg = <&sys_reg>; 180c9ccf3a3SEmmanuel Vadot 181c9ccf3a3SEmmanuel Vadot #address-cells = <1>; 182c9ccf3a3SEmmanuel Vadot #size-cells = <0>; 183c9ccf3a3SEmmanuel Vadot 184c9ccf3a3SEmmanuel Vadot samsung,invert-vden; 185c9ccf3a3SEmmanuel Vadot samsung,invert-vclk; 186c9ccf3a3SEmmanuel Vadot 187c9ccf3a3SEmmanuel Vadot pinctrl-0 = <&lcd_clk>, <&lcd_data24>; 188c9ccf3a3SEmmanuel Vadot pinctrl-names = "default"; 189c9ccf3a3SEmmanuel Vadot 190c9ccf3a3SEmmanuel Vadot port@3 { 191c9ccf3a3SEmmanuel Vadot reg = <3>; 192c9ccf3a3SEmmanuel Vadot 193c9ccf3a3SEmmanuel Vadot fimd_dpi_ep: endpoint { 194c9ccf3a3SEmmanuel Vadot remote-endpoint = <&lcd_ep>; 195c9ccf3a3SEmmanuel Vadot }; 196c9ccf3a3SEmmanuel Vadot }; 197c9ccf3a3SEmmanuel Vadot }; 198