Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/sun4i: Add compatible strings for A31/A31s display pipelines

The A31's display pipeline has 2 frontends, 2 backends, and 2 TCONs. It
also has new display enhancement blocks, such as the DRC (Dynamic Range
Controller), the DEU (Display Enhancement Unit), and the CMU (Color
Management Unit). It supports HDMI, MIPI DSI, and 2 LCD/LVDS channels.

The A31s display pipeline is almost the same, just without MIPI DSI.
Only the TCON seems to be different, due to the missing mux for MIPI
DSI.

Add compatible strings for both of them.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>

authored by

Chen-Yu Tsai and committed by
Maxime Ripard
49c440e8 93a5ec14

+8
+4
Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
··· 91 91 Required properties: 92 92 - compatible: value must be one of: 93 93 * allwinner,sun5i-a13-display-backend 94 + * allwinner,sun6i-a31-display-backend 94 95 * allwinner,sun8i-a33-display-backend 95 96 - reg: base address and size of the memory-mapped region. 96 97 - clocks: phandles to the clocks feeding the frontend and backend ··· 122 121 Required properties: 123 122 - compatible: value must be one of: 124 123 * allwinner,sun5i-a13-display-frontend 124 + * allwinner,sun6i-a31-display-frontend 125 125 * allwinner,sun8i-a33-display-frontend 126 126 - reg: base address and size of the memory-mapped region. 127 127 - interrupts: interrupt associated to this IP ··· 148 146 Required properties: 149 147 - compatible: value must be one of: 150 148 * allwinner,sun5i-a13-display-engine 149 + * allwinner,sun6i-a31-display-engine 150 + * allwinner,sun6i-a31s-display-engine 151 151 * allwinner,sun8i-a33-display-engine 152 152 153 153 - allwinner,pipelines: list of phandle to the display engine
+1
drivers/gpu/drm/sun4i/sun4i_backend.c
··· 408 408 409 409 static const struct of_device_id sun4i_backend_of_table[] = { 410 410 { .compatible = "allwinner,sun5i-a13-display-backend" }, 411 + { .compatible = "allwinner,sun6i-a31-display-backend" }, 411 412 { .compatible = "allwinner,sun8i-a33-display-backend" }, 412 413 { } 413 414 };
+3
drivers/gpu/drm/sun4i/sun4i_drv.c
··· 201 201 static bool sun4i_drv_node_is_frontend(struct device_node *node) 202 202 { 203 203 return of_device_is_compatible(node, "allwinner,sun5i-a13-display-frontend") || 204 + of_device_is_compatible(node, "allwinner,sun6i-a31-display-frontend") || 204 205 of_device_is_compatible(node, "allwinner,sun8i-a33-display-frontend"); 205 206 } 206 207 ··· 325 324 326 325 static const struct of_device_id sun4i_drv_of_table[] = { 327 326 { .compatible = "allwinner,sun5i-a13-display-engine" }, 327 + { .compatible = "allwinner,sun6i-a31-display-engine" }, 328 + { .compatible = "allwinner,sun6i-a31s-display-engine" }, 328 329 { .compatible = "allwinner,sun8i-a33-display-engine" }, 329 330 { } 330 331 };