Skip to content

Commit 974b711

Browse files
konradybciorobclark
authored andcommitted
drm/msm/mdp5: Add MDP5 configuration for SDM636/660
This commit adds support for the MDP5 IP on Snapdragon 636/660. Signed-off-by: Konrad Dybcio <[email protected]> Signed-off-by: Rob Clark <[email protected]>
1 parent 033f47f commit 974b711

File tree

1 file changed

+105
-0
lines changed

1 file changed

+105
-0
lines changed

drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.c

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1002,6 +1002,110 @@ static const struct mdp5_cfg_hw sdm630_config = {
10021002
.max_clk = 412500000,
10031003
};
10041004

1005+
static const struct mdp5_cfg_hw sdm660_config = {
1006+
.name = "sdm660",
1007+
.mdp = {
1008+
.count = 1,
1009+
.caps = MDP_CAP_DSC |
1010+
MDP_CAP_CDM |
1011+
MDP_CAP_SRC_SPLIT |
1012+
0,
1013+
},
1014+
.ctl = {
1015+
.count = 5,
1016+
.base = { 0x01000, 0x01200, 0x01400, 0x01600, 0x01800 },
1017+
.flush_hw_mask = 0xf4ffffff,
1018+
},
1019+
.pipe_vig = {
1020+
.count = 2,
1021+
.base = { 0x04000, 0x6000 },
1022+
.caps = MDP_PIPE_CAP_HFLIP |
1023+
MDP_PIPE_CAP_VFLIP |
1024+
MDP_PIPE_CAP_SCALE |
1025+
MDP_PIPE_CAP_CSC |
1026+
MDP_PIPE_CAP_DECIMATION |
1027+
MDP_PIPE_CAP_SW_PIX_EXT |
1028+
0,
1029+
},
1030+
.pipe_rgb = {
1031+
.count = 4,
1032+
.base = { 0x14000, 0x16000, 0x18000, 0x1a000 },
1033+
.caps = MDP_PIPE_CAP_HFLIP |
1034+
MDP_PIPE_CAP_VFLIP |
1035+
MDP_PIPE_CAP_SCALE |
1036+
MDP_PIPE_CAP_DECIMATION |
1037+
MDP_PIPE_CAP_SW_PIX_EXT |
1038+
0,
1039+
},
1040+
.pipe_dma = {
1041+
.count = 2, /* driver supports max of 2 currently */
1042+
.base = { 0x24000, 0x26000, 0x28000 },
1043+
.caps = MDP_PIPE_CAP_HFLIP |
1044+
MDP_PIPE_CAP_VFLIP |
1045+
MDP_PIPE_CAP_SW_PIX_EXT |
1046+
0,
1047+
},
1048+
.pipe_cursor = {
1049+
.count = 1,
1050+
.base = { 0x34000 },
1051+
.caps = MDP_PIPE_CAP_HFLIP |
1052+
MDP_PIPE_CAP_VFLIP |
1053+
MDP_PIPE_CAP_SW_PIX_EXT |
1054+
MDP_PIPE_CAP_CURSOR |
1055+
0,
1056+
},
1057+
1058+
.lm = {
1059+
.count = 4,
1060+
.base = { 0x44000, 0x45000, 0x46000, 0x49000 },
1061+
.instances = {
1062+
{ .id = 0, .pp = 0, .dspp = 0,
1063+
.caps = MDP_LM_CAP_DISPLAY |
1064+
MDP_LM_CAP_PAIR, },
1065+
{ .id = 1, .pp = 1, .dspp = 1,
1066+
.caps = MDP_LM_CAP_DISPLAY, },
1067+
{ .id = 2, .pp = 2, .dspp = -1,
1068+
.caps = MDP_LM_CAP_DISPLAY |
1069+
MDP_LM_CAP_PAIR, },
1070+
{ .id = 3, .pp = 3, .dspp = -1,
1071+
.caps = MDP_LM_CAP_WB, },
1072+
},
1073+
.nb_stages = 8,
1074+
.max_width = 2560,
1075+
.max_height = 0xFFFF,
1076+
},
1077+
.dspp = {
1078+
.count = 2,
1079+
.base = { 0x54000, 0x56000 },
1080+
},
1081+
.ad = {
1082+
.count = 2,
1083+
.base = { 0x78000, 0x78800 },
1084+
},
1085+
.pp = {
1086+
.count = 5,
1087+
.base = { 0x70000, 0x70800, 0x71000, 0x71800, 0x72000 },
1088+
},
1089+
.cdm = {
1090+
.count = 1,
1091+
.base = { 0x79200 },
1092+
},
1093+
.dsc = {
1094+
.count = 2,
1095+
.base = { 0x80000, 0x80400 },
1096+
},
1097+
.intf = {
1098+
.base = { 0x6a000, 0x6a800, 0x6b000, 0x6b800 },
1099+
.connect = {
1100+
[0] = INTF_DISABLED,
1101+
[1] = INTF_DSI,
1102+
[2] = INTF_DSI,
1103+
[3] = INTF_HDMI,
1104+
},
1105+
},
1106+
.max_clk = 412500000,
1107+
};
1108+
10051109
static const struct mdp5_cfg_handler cfg_handlers_v1[] = {
10061110
{ .revision = 0, .config = { .hw = &msm8x74v1_config } },
10071111
{ .revision = 2, .config = { .hw = &msm8x74v2_config } },
@@ -1016,6 +1120,7 @@ static const struct mdp5_cfg_handler cfg_handlers_v1[] = {
10161120

10171121
static const struct mdp5_cfg_handler cfg_handlers_v3[] = {
10181122
{ .revision = 0, .config = { .hw = &msm8998_config } },
1123+
{ .revision = 2, .config = { .hw = &sdm660_config } },
10191124
{ .revision = 3, .config = { .hw = &sdm630_config } },
10201125
};
10211126

0 commit comments

Comments
 (0)