diff options
author | Dave Airlie <airlied@redhat.com> | 2017-12-03 14:38:52 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2017-12-03 14:42:49 -0500 |
commit | 2c1c55cb75a9c72f9726fabb8c3607947711a8df (patch) | |
tree | fa835b954149545970eaa256107876d9a24bbf28 /drivers/gpu/drm/panel/panel-simple.c | |
parent | ae64f9bd1d3621b5e60d7363bc20afb46aede215 (diff) | |
parent | 2f51be0945b9e0b9baafe47289c802be6d4c7980 (diff) |
Merge tag 'drm-misc-next-2017-11-30' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
Cross-subsystem Changes:
- device tree doc for the Mitsubishi AA070MC01 and Tianma TM070RVHG71
panels (Lukasz Majewski) and for a 2nd endpoint on stm32 (Philippe Cornu)
Core Changes:
The most important changes are:
- Add drm_driver .last_close and .output_poll_changed helpers to reduce
fbdev emulation footprint in drivers (Noralf)
- Fix plane clipping in core and for vmwgfx (Ville)
Then we have a bunch of of improvement for print and debug such as the
addition of a framebuffer debugfs file. ELD connector, HDMI and
improvements. And a bunch of misc improvements, clean ups and style
changes and doc updates
[airlied: drop eld bits from amdgpu_dm]
Driver Changes:
- sii8620: filter unsupported modes and add DVI mode support (Maciej Purski)
- rockchip: analogix_dp: Remove unnecessary init code (Jeffy Chen)
- virtio, cirrus: add fb create_handle support to enable screenshots(Lepton Wu)
- virtio: replace reference/unreference with get/put (Aastha Gupta)
- vc4, gma500: Convert timers to use timer_setup() (Kees Cook)
- vc4: Reject HDMI modes with too high of clocks (Eric)
- vc4: Add support for more pixel formats (Dave Stevenson)
- stm: dsi: Rename driver name to "stm32-display-dsi" (Philippe Cornu)
- stm: ltdc: add a 2nd endpoint (Philippe Cornu)
- via: use monotonic time for VIA_WAIT_IRQ (Arnd Bergmann)
* tag 'drm-misc-next-2017-11-30' of git://anongit.freedesktop.org/drm/drm-misc: (96 commits)
drm/bridge: tc358767: add copyright lines
MAINTAINERS: change maintainer for Rockchip drm drivers
drm/vblank: Fix vblank timestamp debugs
drm/via: use monotonic time for VIA_WAIT_IRQ
dma-buf: Fix ifnullfree.cocci warnings
drm/printer: Add drm_vprintf()
drm/edid: Allow HDMI infoframe without VIC or S3D
video/hdmi: Allow "empty" HDMI infoframes
dma-buf/fence: Fix lock inversion within dma-fence-array
drm/sti: Handle return value of platform_get_irq_byname
drm/vc4: Add support for NV21 and NV61.
drm/vc4: Use .pixel_order instead of custom .flip_cbcr
drm/vc4: Add support for DRM_FORMAT_RGB888 and DRM_FORMAT_BGR888
drm: Move drm_plane_helper_check_state() into drm_atomic_helper.c
drm: Check crtc_state->enable rather than crtc->enabled in drm_plane_helper_check_state()
drm/vmwgfx: Try to fix plane clipping
drm/vmwgfx: Use drm_plane_helper_check_state()
drm/vmwgfx: Remove bogus crtc coords vs fb size check
gpu: gma500: remove unneeded DRIVER_LICENSE #define
drm: don't link DP aux i2c adapter to the hardware device node
...
Diffstat (limited to 'drivers/gpu/drm/panel/panel-simple.c')
-rw-r--r-- | drivers/gpu/drm/panel/panel-simple.c | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index b7c4709f7b34..5591984a392b 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c | |||
@@ -1356,6 +1356,38 @@ static const struct panel_desc lg_lp129qe = { | |||
1356 | }, | 1356 | }, |
1357 | }; | 1357 | }; |
1358 | 1358 | ||
1359 | static const struct drm_display_mode mitsubishi_aa070mc01_mode = { | ||
1360 | .clock = 30400, | ||
1361 | .hdisplay = 800, | ||
1362 | .hsync_start = 800 + 0, | ||
1363 | .hsync_end = 800 + 1, | ||
1364 | .htotal = 800 + 0 + 1 + 160, | ||
1365 | .vdisplay = 480, | ||
1366 | .vsync_start = 480 + 0, | ||
1367 | .vsync_end = 480 + 48 + 1, | ||
1368 | .vtotal = 480 + 48 + 1 + 0, | ||
1369 | .vrefresh = 60, | ||
1370 | .flags = DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC, | ||
1371 | }; | ||
1372 | |||
1373 | static const struct panel_desc mitsubishi_aa070mc01 = { | ||
1374 | .modes = &mitsubishi_aa070mc01_mode, | ||
1375 | .num_modes = 1, | ||
1376 | .bpc = 8, | ||
1377 | .size = { | ||
1378 | .width = 152, | ||
1379 | .height = 91, | ||
1380 | }, | ||
1381 | |||
1382 | .delay = { | ||
1383 | .enable = 200, | ||
1384 | .unprepare = 200, | ||
1385 | .disable = 400, | ||
1386 | }, | ||
1387 | .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, | ||
1388 | .bus_flags = DRM_BUS_FLAG_DE_HIGH, | ||
1389 | }; | ||
1390 | |||
1359 | static const struct display_timing nec_nl12880bc20_05_timing = { | 1391 | static const struct display_timing nec_nl12880bc20_05_timing = { |
1360 | .pixelclock = { 67000000, 71000000, 75000000 }, | 1392 | .pixelclock = { 67000000, 71000000, 75000000 }, |
1361 | .hactive = { 1280, 1280, 1280 }, | 1393 | .hactive = { 1280, 1280, 1280 }, |
@@ -1837,6 +1869,30 @@ static const struct panel_desc tianma_tm070jdhg30 = { | |||
1837 | .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, | 1869 | .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, |
1838 | }; | 1870 | }; |
1839 | 1871 | ||
1872 | static const struct display_timing tianma_tm070rvhg71_timing = { | ||
1873 | .pixelclock = { 27700000, 29200000, 39600000 }, | ||
1874 | .hactive = { 800, 800, 800 }, | ||
1875 | .hfront_porch = { 12, 40, 212 }, | ||
1876 | .hback_porch = { 88, 88, 88 }, | ||
1877 | .hsync_len = { 1, 1, 40 }, | ||
1878 | .vactive = { 480, 480, 480 }, | ||
1879 | .vfront_porch = { 1, 13, 88 }, | ||
1880 | .vback_porch = { 32, 32, 32 }, | ||
1881 | .vsync_len = { 1, 1, 3 }, | ||
1882 | .flags = DISPLAY_FLAGS_DE_HIGH, | ||
1883 | }; | ||
1884 | |||
1885 | static const struct panel_desc tianma_tm070rvhg71 = { | ||
1886 | .timings = &tianma_tm070rvhg71_timing, | ||
1887 | .num_timings = 1, | ||
1888 | .bpc = 8, | ||
1889 | .size = { | ||
1890 | .width = 154, | ||
1891 | .height = 86, | ||
1892 | }, | ||
1893 | .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, | ||
1894 | }; | ||
1895 | |||
1840 | static const struct drm_display_mode toshiba_lt089ac29000_mode = { | 1896 | static const struct drm_display_mode toshiba_lt089ac29000_mode = { |
1841 | .clock = 79500, | 1897 | .clock = 79500, |
1842 | .hdisplay = 1280, | 1898 | .hdisplay = 1280, |
@@ -2086,6 +2142,9 @@ static const struct of_device_id platform_of_match[] = { | |||
2086 | .compatible = "lg,lp129qe", | 2142 | .compatible = "lg,lp129qe", |
2087 | .data = &lg_lp129qe, | 2143 | .data = &lg_lp129qe, |
2088 | }, { | 2144 | }, { |
2145 | .compatible = "mitsubishi,aa070mc01-ca1", | ||
2146 | .data = &mitsubishi_aa070mc01, | ||
2147 | }, { | ||
2089 | .compatible = "nec,nl12880bc20-05", | 2148 | .compatible = "nec,nl12880bc20-05", |
2090 | .data = &nec_nl12880bc20_05, | 2149 | .data = &nec_nl12880bc20_05, |
2091 | }, { | 2150 | }, { |
@@ -2143,6 +2202,9 @@ static const struct of_device_id platform_of_match[] = { | |||
2143 | .compatible = "tianma,tm070jdhg30", | 2202 | .compatible = "tianma,tm070jdhg30", |
2144 | .data = &tianma_tm070jdhg30, | 2203 | .data = &tianma_tm070jdhg30, |
2145 | }, { | 2204 | }, { |
2205 | .compatible = "tianma,tm070rvhg71", | ||
2206 | .data = &tianma_tm070rvhg71, | ||
2207 | }, { | ||
2146 | .compatible = "toshiba,lt089ac29000", | 2208 | .compatible = "toshiba,lt089ac29000", |
2147 | .data = &toshiba_lt089ac29000, | 2209 | .data = &toshiba_lt089ac29000, |
2148 | }, { | 2210 | }, { |