linux/drivers/gpu/drm/meson
Neil Armstrong 3273fc63e1 drm/meson: Make DMT timings parameters and pixel clock generic
Remove the modes timings tables for DMT modes and calculate the HW
paremeters from the modes timings.

Switch the DMT modes pixel clock calculation out of the static frequency
list to a generic calculation from a range of possible PLL dividers.

This patch is an intermediate step towards usage of the Common Clock
Framwework for PLL setup, by reworking the code to have common
sel_pll() function called by the CEA (HDMI) freq setup and the generic
DMT frequencies setup, we should be able to simply call clk_set_rate()
on the PLL clock handle in a near future.

The CEA (HDMI) and CVBS modes needs very specific clock paths that CCF will
never be able to determine by itself, so there is still some work to do for
a full handoff to CCF handling the clocks.

This setup permits setting non-CEA modes like :
- 1600x900-60Hz
- 1280x1024-75Hz
- 1280x1024-60Hz
- 1440x900-60Hz
- 1366x768-60Hz
- 1280x800-60Hz
- 1152x864-75Hz
- 1024x768-75Hz
- 1024x768-70Hz
- 1024x768-60Hz
- 832x624-75Hz
- 800x600-75Hz
- 800x600-72Hz
- 800x600-60Hz
- 640x480-75Hz
- 640x480-73Hz
- 640x480-67Hz

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Acked-by: Jerome Brunet <jbrunet@baylibre.com>
[narmstrong: fixed trivial checkpatch issues]
Link: https://patchwork.freedesktop.org/patch/msgid/1531726814-14638-1-git-send-email-narmstrong@baylibre.com
2018-07-16 11:14:59 +02:00
..
Kconfig
Makefile
meson_canvas.c
meson_canvas.h
meson_crtc.c drm/meson: fix vsync buffer update 2018-02-20 10:03:52 +01:00
meson_crtc.h
meson_drv.c drm/meson: Fix an un-handled error path in 'meson_drv_bind_master()' 2018-06-26 10:22:29 +02:00
meson_drv.h drm/meson: fix vsync buffer update 2018-02-20 10:03:52 +01:00
meson_dw_hdmi.c drm/meson: Make DMT timings parameters and pixel clock generic 2018-07-16 11:14:59 +02:00
meson_dw_hdmi.h
meson_plane.c Linux 4.16-rc7 2018-03-28 14:30:41 +10:00
meson_plane.h
meson_registers.h drm/meson: Add missing VPU init 2017-12-08 10:43:46 +01:00
meson_vclk.c drm/meson: Make DMT timings parameters and pixel clock generic 2018-07-16 11:14:59 +02:00
meson_vclk.h drm/meson: Make DMT timings parameters and pixel clock generic 2018-07-16 11:14:59 +02:00
meson_venc_cvbs.c drm: drop _mode_ from drm_mode_connector_attach_encoder 2018-07-13 18:40:27 +02:00
meson_venc_cvbs.h
meson_venc.c drm/meson: Make DMT timings parameters and pixel clock generic 2018-07-16 11:14:59 +02:00
meson_venc.h drm/meson: Make DMT timings parameters and pixel clock generic 2018-07-16 11:14:59 +02:00
meson_viu.c
meson_viu.h
meson_vpp.c
meson_vpp.h