Skip to content

Commit

Permalink
gpu: drm: jz4780: Add LCD and HDMI driver
Browse files Browse the repository at this point in the history
Adds LCD and HDMI driver for the jz4780.

Note: Upstream has diverged. HDMI phy driver has moved out of
staging and has been renamed. DRM_BRIDGE support has been added
to the phy.

This patch moves the 3.16 work on the driver to 'make it work'
on the CI20 with 3.18.

There will be subtle changed in the encoder/connector side.
CRTC should be the same.

Note: The jz4780 LCDC likes the framebuffer to be explicitly unpacked.
This is especially necessary for the dma to work.

Hence the DefaultFbBpp must be set to 32. Otherwise XOrg defaults to
24 and the driver doesn't work.

Sample Xorg.conf for modesetting

Section "Device"
        Identifier      "Video Device"
        Driver          "modesetting"
EndSection

Section "Monitor"
        Identifier      "Monitor"
        Option          "PreferredMode" "1920x1080"
EndSection

Section "Screen"
        Identifier      "Screen"
        Monitor         "Monitor"
        Device          "Video Device"
        DefaultFbBpp    32
EndSection

Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com>

Conflicts:
	drivers/gpu/drm/Kconfig
	drivers/gpu/drm/Makefile
  • Loading branch information
Zubair Lutfullah Kakakhel authored and Zubair Lutfullah Kakakhel committed Jan 23, 2015
1 parent cd3ffe2 commit 8f4d8f4
Show file tree
Hide file tree
Showing 11 changed files with 4,735 additions and 0 deletions.
2 changes: 2 additions & 0 deletions drivers/gpu/drm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -200,3 +200,5 @@ source "drivers/gpu/drm/tegra/Kconfig"
source "drivers/gpu/drm/panel/Kconfig"

source "drivers/gpu/drm/sti/Kconfig"

source "drivers/gpu/drm/jz4780/Kconfig"
1 change: 1 addition & 0 deletions drivers/gpu/drm/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ obj-$(CONFIG_DRM_BOCHS) += bochs/
obj-$(CONFIG_DRM_MSM) += msm/
obj-$(CONFIG_DRM_TEGRA) += tegra/
obj-$(CONFIG_DRM_STI) += sti/
obj-$(CONFIG_DRM_JZ4780) += jz4780/
obj-y += i2c/
obj-y += panel/
obj-y += bridge/
13 changes: 13 additions & 0 deletions drivers/gpu/drm/jz4780/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
config DRM_JZ4780
tristate "DRM Support for Ingenic JZ4780 LCDC Display Controller"
depends on DRM && OF
select DRM_KMS_HELPER
select DRM_KMS_FB_HELPER
select DRM_KMS_CMA_HELPER
select DRM_GEM_CMA_HELPER
select VIDEOMODE_HELPERS
select BACKLIGHT_CLASS_DEVICE
select BACKLIGHT_LCD_SUPPORT
help
Choose this option if you have an Ingenic SoC with LCDC display
controller, for example the CI20 board
11 changes: 11 additions & 0 deletions drivers/gpu/drm/jz4780/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
ccflags-y := -Iinclude/drm
ifeq (, $(findstring -W,$(EXTRA_CFLAGS)))

endif

jz4780-y := \
jz4780_crtc.o \
dwc_hdmi.o \
jz4780_drv.o

obj-$(CONFIG_DRM_JZ4780) += jz4780.o
Loading

0 comments on commit 8f4d8f4

Please sign in to comment.