linux-stable/drivers/gpu/drm/sun4i
Maxime Ripard 8f1f25534f
drm/sun4i: backend: Assign the pipes automatically
Since we now have a way to enforce the zpos, check for the number of alpha
planes, the only missing part is to assign our pipe automatically instead
of hardcoding it.

The algorithm is quite simple, but requires two iterations over the list of
planes.

In the first one (which is the same one that we've had to check for alpha,
the frontend usage, and so on), we order the planes by their zpos.

We can then do a second iteration over that array by ascending zpos
starting with the pipe 0. When and if we encounter our alpha plane, we put
it and all the other subsequent planes in the second pipe.

Reviewed-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Link: https://patchwork.freedesktop.org/patch/msgid/e9caf21d831438d36a3ccc7cef229c9a7ea7f69f.1518802627.git-series.maxime.ripard@bootlin.com
2018-02-22 16:19:52 +01:00
..
Kconfig drm/sun4i: Implement A83T HDMI driver 2018-02-16 09:38:30 +01:00
Makefile drm/sun4i: Implement A83T HDMI driver 2018-02-16 09:38:30 +01:00
sun4i_backend.c drm/sun4i: backend: Assign the pipes automatically 2018-02-22 16:19:52 +01:00
sun4i_backend.h drm/sun4i: backend: Check for the number of alpha planes 2018-01-29 14:02:42 +01:00
sun4i_crtc.c drm/sun4i: backend: Wire in the frontend 2018-01-22 15:17:04 +01:00
sun4i_crtc.h drm/sun4i: abstract a engine type 2017-06-01 09:47:23 +02:00
sun4i_dotclock.c drm/sun4i: Create minimal multipliers and dividers 2018-01-04 20:08:42 +01:00
sun4i_dotclock.h
sun4i_drv.c drm/sun4i: Add a driver for the display frontend 2018-01-22 15:15:38 +01:00
sun4i_drv.h drm/sun4i: Add a driver for the display frontend 2018-01-22 15:15:38 +01:00
sun4i_framebuffer.c drm/sun4i: backend: Add support for zpos 2018-01-29 14:02:40 +01:00
sun4i_framebuffer.h drm/sun4i: Use drm_fb_cma_fbdev_init/fini() 2017-12-08 14:47:42 +01:00
sun4i_frontend.c drm/sun4i: Add a driver for the display frontend 2018-01-22 15:15:38 +01:00
sun4i_frontend.h drm/sun4i: Add a driver for the display frontend 2018-01-22 15:15:38 +01:00
sun4i_hdmi.h drm/sun4i: hdmi: Document PAD_CTRL1 output invert bits 2017-10-16 09:54:21 +02:00
sun4i_hdmi_ddc_clk.c drm/sun4i: tcon: Don't rely on encoders to set the TCON mode 2017-10-17 19:49:13 +02:00
sun4i_hdmi_enc.c drm/sun4i: hdmi: Move the mode_valid callback to the encoder 2017-12-20 12:59:46 +01:00
sun4i_hdmi_i2c.c drm/sun4i: hdmi: Add support for controller hardware variants 2017-10-11 09:53:33 +02:00
sun4i_hdmi_tmds_clk.c drm/sun4i: hdmi: Add missing rate halving check in sun4i_tmds_determine_rate 2018-01-11 13:25:43 +01:00
sun4i_layer.c drm/sun4i: backend: Assign the pipes automatically 2018-02-22 16:19:52 +01:00
sun4i_layer.h drm/sun4i: backend: Assign the pipes automatically 2018-02-22 16:19:52 +01:00
sun4i_lvds.c drm/sun4i: Add LVDS support 2018-01-04 20:37:17 +01:00
sun4i_lvds.h drm/sun4i: Add LVDS support 2018-01-04 20:37:17 +01:00
sun4i_rgb.c drm/sun4i: tcon: Don't rely on encoders to set the TCON mode 2017-10-17 19:49:13 +02:00
sun4i_rgb.h drm/sun4i: rgb: Pass tcon pointer when initializing RGB encoder 2017-03-07 22:18:24 +01:00
sun4i_tcon.c Merge airlied/drm-next into drm-misc-next 2018-02-16 15:47:43 -05:00
sun4i_tcon.h drm/sun4i: Add has_channel_0 TCON quirk 2018-02-16 09:35:16 +01:00
sun4i_tv.c drm/sun4i: tcon: Don't rely on encoders to set the TCON mode 2017-10-17 19:49:13 +02:00
sun6i_drc.c Merge tag 'drm-misc-next-2016-11-16' of git://anongit.freedesktop.org/git/drm-misc into drm-next 2016-11-17 08:02:46 +10:00
sun8i_csc.c drm/sun4i: Add DE2 CSC library 2017-12-05 13:22:44 +01:00
sun8i_csc.h drm/sun4i: Add DE2 CSC library 2017-12-05 13:22:44 +01:00
sun8i_dw_hdmi.c drm/sun4i: Implement A83T HDMI driver 2018-02-16 09:38:30 +01:00
sun8i_dw_hdmi.h drm/sun4i: Implement A83T HDMI driver 2018-02-16 09:38:30 +01:00
sun8i_hdmi_phy.c drm/sun4i: Implement A83T HDMI driver 2018-02-16 09:38:30 +01:00
sun8i_mixer.c drm/sun4i: Add support for A83T second DE2 mixer 2018-02-16 09:35:32 +01:00
sun8i_mixer.h drm/sun4i: Force the mixer rate at 150MHz 2018-01-04 20:04:32 +01:00
sun8i_ui_layer.c drm/sun4i: Use drm_mode_get_hv_timing() to populate plane clip rectangle 2018-02-02 16:52:24 +02:00
sun8i_ui_layer.h drm/sun4i: Reorganize UI layer code in DE2 2017-12-05 13:22:43 +01:00
sun8i_ui_scaler.c drm/sun4i: Add support for HW scaling to DE2 2017-12-05 13:22:44 +01:00
sun8i_ui_scaler.h drm/sun4i: Add support for HW scaling to DE2 2017-12-05 13:22:44 +01:00
sun8i_vi_layer.c drm/sun4i: Use drm_mode_get_hv_timing() to populate plane clip rectangle 2018-02-02 16:52:24 +02:00
sun8i_vi_layer.h drm/sun4i: Add support for DE2 VI planes 2017-12-05 13:22:43 +01:00
sun8i_vi_scaler.c drm/sun4i: Expand DE2 scaler lib with YUV support 2017-12-05 13:22:44 +01:00
sun8i_vi_scaler.h drm/sun4i: Expand DE2 scaler lib with YUV support 2017-12-05 13:22:44 +01:00
sunxi_engine.h drm/sun4i: Fix build warnings in sunxi_engine.h 2018-01-23 10:45:01 +01:00