drm/vc4: Add KMS support for Raspberry Pi.
authorEric Anholt <eric@anholt.net>
Mon, 2 Mar 2015 21:01:12 +0000 (13:01 -0800)
committerEric Anholt <eric@anholt.net>
Wed, 21 Oct 2015 09:33:12 +0000 (10:33 +0100)
commitc8b75bca92cbf064b9fa125fc74a85994452e935
treeb138884349ffeef48cd83a1a9937d15c875f42cc
parent1f9573241080449d221b6f8a9cc68e28fdeb7408
drm/vc4: Add KMS support for Raspberry Pi.

This is enough for fbcon and bringing up X using
xf86-video-modesetting.  It doesn't support the 3D accelerator or
power management yet.

v2: Drop FB_HELPER select thanks to Archit's patches.  Do manual init
    ordering instead of using the .load hook.  Structure registration
    more like tegra's, but still using the typical "component" code.
    Drop no-op hooks for atomic_begin and mode_fixup() now that
    they're optional.  Drop sentinel in Makefile.  Fix minor style
    nits I noticed on another reread.

v3: Use the new bcm2835 clk driver to manage pixel/HSM clocks instead
    of having a fixed video mode.  Use exynos-style component driver
    matching instead of devicetree nodes to list the component driver
    instances.  Rename compatibility strings to say bcm2835, and
    distinguish pv0/1/2.  Clean up some h/vsync code, and add in
    interlaced mode setup.  Fix up probe/bind error paths.  Use
    bitops.h macros for vc4_regs.h

v4: Include i2c.h, allow building under COMPILE_TEST, drop msleep now
    that other bugs have been fixed, add timeouts to cpu_relax()
    loops, rename hpd-gpio to hpd-gpios.

Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
14 files changed:
drivers/gpu/drm/Kconfig
drivers/gpu/drm/Makefile
drivers/gpu/drm/vc4/Kconfig [new file with mode: 0644]
drivers/gpu/drm/vc4/Makefile [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_bo.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_crtc.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_debugfs.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_drv.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_drv.h [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_hdmi.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_hvs.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_kms.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_plane.c [new file with mode: 0644]
drivers/gpu/drm/vc4/vc4_regs.h [new file with mode: 0644]