History

Merge tag 'drm/panel/for-4.8-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next

drm/panel: Changes for v4.8-rc1 This set of changes contains a few cleanups for existing panels as well as improved handling of certain backlights. In addition there's support for a few new simple panels. * tag 'drm/panel/for-4.8-rc1' of git://anongit.freedesktop.org/tegra/linux: drm/panel: simple: Add support for Starry KR122EA0SRA panel dt-bindings: Add Starry KR122EA0SRA panel binding dt-bindings: Add vendor prefix for Starry dt-bindings: display: Add Sharp LQ101K1LY04 panel binding drm/panel: simple: Add support for Sharp LQ101K1LY04 drm/panel: simple: Add support for LG LP079QX1-SP0V panel dt-bindings: Add support for LG LP079QX1-SP0V panel drm/panel: simple: Add support for Sharp LQ123P1JX31 panel dt-bindings: Add Sharp LQ123P1JX31 panel binding drm/panel: simple: Add support for Samsung LSN122DL01-C01 panel dt-bindings: Add Samsung LSN122DL01-C01 panel binding drm/panel: simple: Add support for LG LP097QX1-SPA1 panel dt-bindings: Add LG LP097QX1-SPA1 panel binding drm/panel: simple: Update backlight state property drm/panel: simple: Remove gratuitous blank line drm/panel: simple: Fix a couple of physical sizes

Dave Airlie committed 10 years ago

Commit ec2174f2 parents 877fa9a 9bb34c48 files · +204 −5Browse files

Unified · Split

8 files
  1. Documentation/devicetree/bindings/display/panel/lg,lp079qx1-sp0v.txt +7 −0
  2. Documentation/devicetree/bindings/display/panel/lg,lp097qx1-spa1.txt +7 −0
  3. Documentation/devicetree/bindings/display/panel/samsung,lsn122dl01-c01.txt +7 −0
  4. Documentation/devicetree/bindings/display/panel/sharp,lq101k1ly04.txt +7 −0
  5. Documentation/devicetree/bindings/display/panel/sharp,lq123p1jx31.txt +7 −0
  6. Documentation/devicetree/bindings/display/panel/starry,kr122ea0sra.txt +7 −0
  7. Documentation/devicetree/bindings/vendor-prefixes.txt +1 −0
  8. drivers/gpu/drm/panel/panel-simple.c +161 −5
Documentation/devicetree/bindings/display/panel/lg,lp079qx1-sp0v.txt+7−0
@@ -0,0 +1,7 @@
1+LG LP079QX1-SP0V 7.9" (1536x2048 pixels) TFT LCD panel
2+
3+Required properties:
4+- compatible: should be "lg,lp079qx1-sp0v"
5+
6+This binding is compatible with the simple-panel binding, which is specified
7+in simple-panel.txt in this directory.
Documentation/devicetree/bindings/display/panel/lg,lp097qx1-spa1.txt+7−0
@@ -0,0 +1,7 @@
1+LG 9.7" (2048x1536 pixels) TFT LCD panel
2+
3+Required properties:
4+- compatible: should be "lg,lp097qx1-spa1"
5+
6+This binding is compatible with the simple-panel binding, which is specified
7+in simple-panel.txt in this directory.
Documentation/devicetree/bindings/display/panel/samsung,lsn122dl01-c01.txt+7−0
@@ -0,0 +1,7 @@
1+Samsung 12.2" (2560x1600 pixels) TFT LCD panel
2+
3+Required properties:
4+- compatible: should be "samsung,lsn122dl01-c01"
5+
6+This binding is compatible with the simple-panel binding, which is specified
7+in simple-panel.txt in this directory.
Documentation/devicetree/bindings/display/panel/sharp,lq101k1ly04.txt+7−0
@@ -0,0 +1,7 @@
1+Sharp Display Corp. LQ101K1LY04 10.07" WXGA TFT LCD panel
2+
3+Required properties:
4+- compatible: should be "sharp,lq101k1ly04"
5+
6+This binding is compatible with the simple-panel binding, which is specified
7+in simple-panel.txt in this directory.
Documentation/devicetree/bindings/display/panel/sharp,lq123p1jx31.txt+7−0
@@ -0,0 +1,7 @@
1+Sharp 12.3" (2400x1600 pixels) TFT LCD panel
2+
3+Required properties:
4+- compatible: should be "sharp,lq123p1jx31"
5+
6+This binding is compatible with the simple-panel binding, which is specified
7+in simple-panel.txt in this directory.
Documentation/devicetree/bindings/display/panel/starry,kr122ea0sra.txt+7−0
@@ -0,0 +1,7 @@
1+Starry 12.2" (1920x1200 pixels) TFT LCD panel
2+
3+Required properties:
4+- compatible: should be "starry,kr122ea0sra"
5+
6+This binding is compatible with the simple-panel binding, which is specified
7+in simple-panel.txt in this directory.
Documentation/devicetree/bindings/vendor-prefixes.txt+1−0
@@ -247,6 +247,7 @@ sony Sony Corporation · 246 unmodified lines
247247 spansion Spansion Inc.
248248 sprd Spreadtrum Communications Inc.
249249 st STMicroelectronics
250+starry Starry Electronic Technology (ShenZhen) Co., LTD
250251 startek Startek
251252 ste ST-Ericsson
252253 stericsson ST-Ericsson
drivers/gpu/drm/panel/panel-simple.c+161−5
@@ -168,6 +168,7 @@ static int panel_simple_disable(struct drm_panel *panel) · 167 unmodified lines
168168
169169 if (p->backlight) {
170170 p->backlight->props.power = FB_BLANK_POWERDOWN;
171+ p->backlight->props.state |= BL_CORE_FBBLANK;
171172 backlight_update_status(p->backlight);
172173 }
173174
@@ -235,6 +236,7 @@ static int panel_simple_enable(struct drm_panel *panel) · 61 unmodified lines
235236 msleep(p->desc->delay.enable);
236237
237238 if (p->backlight) {
239+ p->backlight->props.state &= ~BL_CORE_FBBLANK;
238240 p->backlight->props.power = FB_BLANK_UNBLANK;
239241 backlight_update_status(p->backlight);
240242 }
@@ -964,8 +966,8 @@ static const struct panel_desc innolux_zj070na_01p = { · 723 unmodified lines
964966 .num_modes = 1,
965967 .bpc = 6,
966968 .size = {
967− .width = 1024,
968− .height = 600,
969+ .width = 154,
970+ .height = 90,
969971 },
970972 };
971973
@@ -1017,6 +1019,51 @@ static const struct panel_desc lg_lb070wv8 = { · 45 unmodified lines
10171019 .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
10181020 };
10191021
1022+static const struct drm_display_mode lg_lp079qx1_sp0v_mode = {
1023+ .clock = 200000,
1024+ .hdisplay = 1536,
1025+ .hsync_start = 1536 + 12,
1026+ .hsync_end = 1536 + 12 + 16,
1027+ .htotal = 1536 + 12 + 16 + 48,
1028+ .vdisplay = 2048,
1029+ .vsync_start = 2048 + 8,
1030+ .vsync_end = 2048 + 8 + 4,
1031+ .vtotal = 2048 + 8 + 4 + 8,
1032+ .vrefresh = 60,
1033+ .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC,
1034+};
1035+
1036+static const struct panel_desc lg_lp079qx1_sp0v = {
1037+ .modes = &lg_lp079qx1_sp0v_mode,
1038+ .num_modes = 1,
1039+ .size = {
1040+ .width = 129,
1041+ .height = 171,
1042+ },
1043+};
1044+
1045+static const struct drm_display_mode lg_lp097qx1_spa1_mode = {
1046+ .clock = 205210,
1047+ .hdisplay = 2048,
1048+ .hsync_start = 2048 + 150,
1049+ .hsync_end = 2048 + 150 + 5,
1050+ .htotal = 2048 + 150 + 5 + 5,
1051+ .vdisplay = 1536,
1052+ .vsync_start = 1536 + 3,
1053+ .vsync_end = 1536 + 3 + 1,
1054+ .vtotal = 1536 + 3 + 1 + 9,
1055+ .vrefresh = 60,
1056+};
1057+
1058+static const struct panel_desc lg_lp097qx1_spa1 = {
1059+ .modes = &lg_lp097qx1_spa1_mode,
1060+ .num_modes = 1,
1061+ .size = {
1062+ .width = 208,
1063+ .height = 147,
1064+ },
1065+};
1066+
10201067 static const struct drm_display_mode lg_lp120up1_mode = {
10211068 .clock = 162300,
10221069 .hdisplay = 1920,
@@ -1224,6 +1271,28 @@ static const struct panel_desc qd43003c0_40 = { · 201 unmodified lines
12241271 .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
12251272 };
12261273
1274+static const struct drm_display_mode samsung_lsn122dl01_c01_mode = {
1275+ .clock = 271560,
1276+ .hdisplay = 2560,
1277+ .hsync_start = 2560 + 48,
1278+ .hsync_end = 2560 + 48 + 32,
1279+ .htotal = 2560 + 48 + 32 + 80,
1280+ .vdisplay = 1600,
1281+ .vsync_start = 1600 + 2,
1282+ .vsync_end = 1600 + 2 + 5,
1283+ .vtotal = 1600 + 2 + 5 + 57,
1284+ .vrefresh = 60,
1285+};
1286+
1287+static const struct panel_desc samsung_lsn122dl01_c01 = {
1288+ .modes = &samsung_lsn122dl01_c01_mode,
1289+ .num_modes = 1,
1290+ .size = {
1291+ .width = 263,
1292+ .height = 164,
1293+ },
1294+};
1295+
12271296 static const struct drm_display_mode samsung_ltn101nt05_mode = {
12281297 .clock = 54030,
12291298 .hdisplay = 1024,
@@ -1242,8 +1311,8 @@ static const struct panel_desc samsung_ltn101nt05 = { · 12 unmodified lines
12421311 .num_modes = 1,
12431312 .bpc = 6,
12441313 .size = {
1245− .width = 1024,
1246− .height = 600,
1314+ .width = 223,
1315+ .height = 125,
12471316 },
12481317 };
12491318
@@ -1270,6 +1339,53 @@ static const struct panel_desc samsung_ltn140at29_301 = { · 20 unmodified lines
12701339 },
12711340 };
12721341
1342+static const struct display_timing sharp_lq101k1ly04_timing = {
1343+ .pixelclock = { 60000000, 65000000, 80000000 },
1344+ .hactive = { 1280, 1280, 1280 },
1345+ .hfront_porch = { 20, 20, 20 },
1346+ .hback_porch = { 20, 20, 20 },
1347+ .hsync_len = { 10, 10, 10 },
1348+ .vactive = { 800, 800, 800 },
1349+ .vfront_porch = { 4, 4, 4 },
1350+ .vback_porch = { 4, 4, 4 },
1351+ .vsync_len = { 4, 4, 4 },
1352+ .flags = DISPLAY_FLAGS_PIXDATA_POSEDGE,
1353+};
1354+
1355+static const struct panel_desc sharp_lq101k1ly04 = {
1356+ .timings = &sharp_lq101k1ly04_timing,
1357+ .num_timings = 1,
1358+ .bpc = 8,
1359+ .size = {
1360+ .width = 217,
1361+ .height = 136,
1362+ },
1363+ .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA,
1364+};
1365+
1366+static const struct drm_display_mode sharp_lq123p1jx31_mode = {
1367+ .clock = 252750,
1368+ .hdisplay = 2400,
1369+ .hsync_start = 2400 + 48,
1370+ .hsync_end = 2400 + 48 + 32,
1371+ .htotal = 2400 + 48 + 32 + 80,
1372+ .vdisplay = 1600,
1373+ .vsync_start = 1600 + 3,
1374+ .vsync_end = 1600 + 3 + 10,
1375+ .vtotal = 1600 + 3 + 10 + 33,
1376+ .vrefresh = 60,
1377+ .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC,
1378+};
1379+
1380+static const struct panel_desc sharp_lq123p1jx31 = {
1381+ .modes = &sharp_lq123p1jx31_mode,
1382+ .num_modes = 1,
1383+ .size = {
1384+ .width = 259,
1385+ .height = 173,
1386+ },
1387+};
1388+
12731389 static const struct drm_display_mode shelly_sca07010_bfn_lnn_mode = {
12741390 .clock = 33300,
12751391 .hdisplay = 800,
@@ -1293,6 +1409,29 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { · 17 unmodified lines
12931409 .bus_format = MEDIA_BUS_FMT_RGB666_1X18,
12941410 };
12951411
1412+static const struct drm_display_mode starry_kr122ea0sra_mode = {
1413+ .clock = 147000,
1414+ .hdisplay = 1920,
1415+ .hsync_start = 1920 + 16,
1416+ .hsync_end = 1920 + 16 + 16,
1417+ .htotal = 1920 + 16 + 16 + 32,
1418+ .vdisplay = 1200,
1419+ .vsync_start = 1200 + 15,
1420+ .vsync_end = 1200 + 15 + 2,
1421+ .vtotal = 1200 + 15 + 2 + 18,
1422+ .vrefresh = 60,
1423+ .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC,
1424+};
1425+
1426+static const struct panel_desc starry_kr122ea0sra = {
1427+ .modes = &starry_kr122ea0sra_mode,
1428+ .num_modes = 1,
1429+ .size = {
1430+ .width = 263,
1431+ .height = 164,
1432+ },
1433+};
1434+
12961435 static const struct drm_display_mode tpk_f07a_0102_mode = {
12971436 .clock = 33260,
12981437 .hdisplay = 800,
@@ -1456,6 +1595,12 @@ static const struct of_device_id platform_of_match[] = { · 157 unmodified lines
14561595 }, {
14571596 .compatible = "lg,lb070wv8",
14581597 .data = &lg_lb070wv8,
1598+ }, {
1599+ .compatible = "lg,lp079qx1-sp0v",
1600+ .data = &lg_lp079qx1_sp0v,
1601+ }, {
1602+ .compatible = "lg,lp097qx1-spa1",
1603+ .data = &lg_lp097qx1_spa1,
14591604 }, {
14601605 .compatible = "lg,lp120up1",
14611606 .data = &lg_lp120up1,
@@ -1480,15 +1625,27 @@ static const struct of_device_id platform_of_match[] = { · 18 unmodified lines
14801625 }, {
14811626 .compatible = "qiaodian,qd43003c0-40",
14821627 .data = &qd43003c0_40,
1628+ }, {
1629+ .compatible = "samsung,lsn122dl01-c01",
1630+ .data = &samsung_lsn122dl01_c01,
14831631 }, {
14841632 .compatible = "samsung,ltn101nt05",
14851633 .data = &samsung_ltn101nt05,
14861634 }, {
14871635 .compatible = "samsung,ltn140at29-301",
14881636 .data = &samsung_ltn140at29_301,
1637+ }, {
1638+ .compatible = "sharp,lq101k1ly04",
1639+ .data = &sharp_lq101k1ly04,
1640+ }, {
1641+ .compatible = "sharp,lq123p1jx31",
1642+ .data = &sharp_lq123p1jx31,
14891643 }, {
14901644 .compatible = "shelly,sca07010-bfn-lnn",
14911645 .data = &shelly_sca07010_bfn_lnn,
1646+ }, {
1647+ .compatible = "starry,kr122ea0sra",
1648+ .data = &starry_kr122ea0sra,
14921649 }, {
14931650 .compatible = "tpk,f07a-0102",
14941651 .data = &tpk_f07a_0102,
@@ -1701,7 +1858,6 @@ static const struct panel_desc_dsi panasonic_vvx10f004b00 = { · 206 unmodified lines
17011858 .lanes = 4,
17021859 };
17031860
1704−
17051861 static const struct of_device_id dsi_of_match[] = {
17061862 {
17071863 .compatible = "auo,b080uan01",

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t