blob: 1b6f7e3950060dfb2a63081c48d8792df5cf0b6c [file] [log] [blame]
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/atmel,lcdc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Microchip's LCDC Framebuffer
maintainers:
- Nicolas Ferre <nicolas.ferre@microchip.com>
- Dharma Balasubiramani <dharma.b@microchip.com>
description:
The LCDC works with a framebuffer, which is a section of memory that contains
a complete frame of data representing pixel values for the display. The LCDC
reads the pixel data from the framebuffer and sends it to the LCD panel to
render the image.
properties:
compatible:
enum:
- atmel,at91sam9261-lcdc
- atmel,at91sam9263-lcdc
- atmel,at91sam9g10-lcdc
- atmel,at91sam9g45-lcdc
- atmel,at91sam9g45es-lcdc
- atmel,at91sam9rl-lcdc
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
maxItems: 2
clock-names:
items:
- const: hclk
- const: lcdc_clk
display:
$ref: /schemas/types.yaml#/definitions/phandle
description: A phandle pointing to the display node.
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
- display
additionalProperties: false
examples:
- |
#include <dt-bindings/clock/at91.h>
#include <dt-bindings/interrupt-controller/irq.h>
fb@500000 {
compatible = "atmel,at91sam9g45-lcdc";
reg = <0x00500000 0x1000>;
interrupts = <23 IRQ_TYPE_LEVEL_HIGH 0>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_fb>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 23>, <&pmc PMC_TYPE_PERIPHERAL 23>;
clock-names = "hclk", "lcdc_clk";
display = <&display>;
};