1*7d0873ebSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*7d0873ebSEmmanuel Vadot%YAML 1.2 3*7d0873ebSEmmanuel Vadot--- 4*7d0873ebSEmmanuel Vadot$id: http://devicetree.org/schemas/display/atmel,lcdc.yaml# 5*7d0873ebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*7d0873ebSEmmanuel Vadot 7*7d0873ebSEmmanuel Vadottitle: Microchip's LCDC Framebuffer 8*7d0873ebSEmmanuel Vadot 9*7d0873ebSEmmanuel Vadotmaintainers: 10*7d0873ebSEmmanuel Vadot - Nicolas Ferre <nicolas.ferre@microchip.com> 11*7d0873ebSEmmanuel Vadot - Dharma Balasubiramani <dharma.b@microchip.com> 12*7d0873ebSEmmanuel Vadot 13*7d0873ebSEmmanuel Vadotdescription: 14*7d0873ebSEmmanuel Vadot The LCDC works with a framebuffer, which is a section of memory that contains 15*7d0873ebSEmmanuel Vadot a complete frame of data representing pixel values for the display. The LCDC 16*7d0873ebSEmmanuel Vadot reads the pixel data from the framebuffer and sends it to the LCD panel to 17*7d0873ebSEmmanuel Vadot render the image. 18*7d0873ebSEmmanuel Vadot 19*7d0873ebSEmmanuel Vadotproperties: 20*7d0873ebSEmmanuel Vadot compatible: 21*7d0873ebSEmmanuel Vadot enum: 22*7d0873ebSEmmanuel Vadot - atmel,at91sam9261-lcdc 23*7d0873ebSEmmanuel Vadot - atmel,at91sam9263-lcdc 24*7d0873ebSEmmanuel Vadot - atmel,at91sam9g10-lcdc 25*7d0873ebSEmmanuel Vadot - atmel,at91sam9g45-lcdc 26*7d0873ebSEmmanuel Vadot - atmel,at91sam9g45es-lcdc 27*7d0873ebSEmmanuel Vadot - atmel,at91sam9rl-lcdc 28*7d0873ebSEmmanuel Vadot 29*7d0873ebSEmmanuel Vadot reg: 30*7d0873ebSEmmanuel Vadot maxItems: 1 31*7d0873ebSEmmanuel Vadot 32*7d0873ebSEmmanuel Vadot interrupts: 33*7d0873ebSEmmanuel Vadot maxItems: 1 34*7d0873ebSEmmanuel Vadot 35*7d0873ebSEmmanuel Vadot clocks: 36*7d0873ebSEmmanuel Vadot maxItems: 2 37*7d0873ebSEmmanuel Vadot 38*7d0873ebSEmmanuel Vadot clock-names: 39*7d0873ebSEmmanuel Vadot items: 40*7d0873ebSEmmanuel Vadot - const: hclk 41*7d0873ebSEmmanuel Vadot - const: lcdc_clk 42*7d0873ebSEmmanuel Vadot 43*7d0873ebSEmmanuel Vadot display: 44*7d0873ebSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 45*7d0873ebSEmmanuel Vadot description: A phandle pointing to the display node. 46*7d0873ebSEmmanuel Vadot 47*7d0873ebSEmmanuel Vadotrequired: 48*7d0873ebSEmmanuel Vadot - compatible 49*7d0873ebSEmmanuel Vadot - reg 50*7d0873ebSEmmanuel Vadot - interrupts 51*7d0873ebSEmmanuel Vadot - clocks 52*7d0873ebSEmmanuel Vadot - clock-names 53*7d0873ebSEmmanuel Vadot - display 54*7d0873ebSEmmanuel Vadot 55*7d0873ebSEmmanuel VadotadditionalProperties: false 56*7d0873ebSEmmanuel Vadot 57*7d0873ebSEmmanuel Vadotexamples: 58*7d0873ebSEmmanuel Vadot - | 59*7d0873ebSEmmanuel Vadot #include <dt-bindings/clock/at91.h> 60*7d0873ebSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 61*7d0873ebSEmmanuel Vadot fb@500000 { 62*7d0873ebSEmmanuel Vadot compatible = "atmel,at91sam9g45-lcdc"; 63*7d0873ebSEmmanuel Vadot reg = <0x00500000 0x1000>; 64*7d0873ebSEmmanuel Vadot interrupts = <23 IRQ_TYPE_LEVEL_HIGH 0>; 65*7d0873ebSEmmanuel Vadot pinctrl-names = "default"; 66*7d0873ebSEmmanuel Vadot pinctrl-0 = <&pinctrl_fb>; 67*7d0873ebSEmmanuel Vadot clocks = <&pmc PMC_TYPE_PERIPHERAL 23>, <&pmc PMC_TYPE_PERIPHERAL 23>; 68*7d0873ebSEmmanuel Vadot clock-names = "hclk", "lcdc_clk"; 69*7d0873ebSEmmanuel Vadot display = <&display>; 70*7d0873ebSEmmanuel Vadot }; 71