18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci# Copyright 2019 BayLibre, SAS
38c2ecf20Sopenharmony_ci%YAML 1.2
48c2ecf20Sopenharmony_ci---
58c2ecf20Sopenharmony_ci$id: "http://devicetree.org/schemas/soc/amlogic/amlogic,canvas.yaml#"
68c2ecf20Sopenharmony_ci$schema: "http://devicetree.org/meta-schemas/core.yaml#"
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_cititle: Amlogic Canvas Video Lookup Table
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_cimaintainers:
118c2ecf20Sopenharmony_ci  - Neil Armstrong <narmstrong@baylibre.com>
128c2ecf20Sopenharmony_ci  - Maxime Jourdan <mjourdan@baylibre.com>
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_cidescription: |
158c2ecf20Sopenharmony_ci  A canvas is a collection of metadata that describes a pixel buffer.
168c2ecf20Sopenharmony_ci  Those metadata include: width, height, phyaddr, wrapping and block mode.
178c2ecf20Sopenharmony_ci  Starting with GXBB the endianness can also be described.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci  Many IPs within Amlogic SoCs rely on canvas indexes to read/write pixel data
208c2ecf20Sopenharmony_ci  rather than use the phy addresses directly. For instance, this is the case for
218c2ecf20Sopenharmony_ci  the video decoders and the display.
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci  Amlogic SoCs have 256 canvas.
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciproperties:
268c2ecf20Sopenharmony_ci  compatible:
278c2ecf20Sopenharmony_ci    oneOf:
288c2ecf20Sopenharmony_ci      - items:
298c2ecf20Sopenharmony_ci          - enum:
308c2ecf20Sopenharmony_ci              - amlogic,meson8-canvas
318c2ecf20Sopenharmony_ci              - amlogic,meson8b-canvas
328c2ecf20Sopenharmony_ci              - amlogic,meson8m2-canvas
338c2ecf20Sopenharmony_ci          - const: amlogic,canvas
348c2ecf20Sopenharmony_ci      - const: amlogic,canvas # GXBB and newer SoCs
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci  reg:
378c2ecf20Sopenharmony_ci    maxItems: 1
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_cirequired:
408c2ecf20Sopenharmony_ci  - compatible
418c2ecf20Sopenharmony_ci  - reg
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ciadditionalProperties: false
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ciexamples:
468c2ecf20Sopenharmony_ci  - |
478c2ecf20Sopenharmony_ci    canvas: video-lut@48 {
488c2ecf20Sopenharmony_ci        compatible = "amlogic,canvas";
498c2ecf20Sopenharmony_ci        reg = <0x48 0x14>;
508c2ecf20Sopenharmony_ci    };
518c2ecf20Sopenharmony_ci
52