summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorKevin Huang <kevinh@nvidia.com>2011-05-03 10:52:24 -0700
committerVarun Colbert <vcolbert@nvidia.com>2011-05-13 18:56:28 -0700
commit30582abff8f85b56bafb86d0bc05db25257bf456 (patch)
tree6b85f09a382c20262fb5bfe6226435cc133fd7f1 /drivers
parent179cfb15f90962530300cfd084314354a53f4517 (diff)
video: tegra: dsi: Adjusted the values of packet sequence registers.
Changed the values of packet sequence registers for DSI burst video mode. Change-Id: I70188ed3c8fff094862a89377457751fd0d4382c Reviewed-on: http://git-master/r/31080 Reviewed-by: Kevin Huang <kevinh@nvidia.com> Tested-by: Kevin Huang <kevinh@nvidia.com> Reviewed-by: Varun Colbert <vcolbert@nvidia.com>
Diffstat (limited to 'drivers')
-rwxr-xr-xdrivers/video/tegra/dc/dsi.c49
1 files changed, 33 insertions, 16 deletions
diff --git a/drivers/video/tegra/dc/dsi.c b/drivers/video/tegra/dc/dsi.c
index ef1d66fd54c2..070289786827 100755
--- a/drivers/video/tegra/dc/dsi.c
+++ b/drivers/video/tegra/dc/dsi.c
@@ -177,23 +177,37 @@ const u32 dsi_pkt_seq_video_non_burst[NUMOF_PKT_SEQ] = {
};
static const u32 dsi_pkt_seq_video_burst[NUMOF_PKT_SEQ] = {
- PKT_ID0(CMD_NULL) | PKT_LEN0(4) | PKT_ID1(CMD_VS) | PKT_LEN1(0) |
- PKT_ID2(CMD_EOT) | PKT_LEN2(0) | PKT_LP,
+ PKT_ID0(CMD_VS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(7) | PKT_LP,
0,
- PKT_ID0(CMD_NULL) | PKT_LEN0(4) | PKT_ID1(CMD_HS) | PKT_LEN1(0) |
- PKT_ID2(CMD_EOT) | PKT_LEN2(0) | PKT_LP,
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(7) | PKT_LP,
0,
- PKT_ID0(CMD_NULL) | PKT_LEN0(4) | PKT_ID1(CMD_HS) | PKT_LEN1(0) |
- PKT_ID2(CMD_EOT) | PKT_LEN2(0) | PKT_LP,
- PKT_ID0(CMD_BLNK) | PKT_LEN0(4) | PKT_ID1(CMD_HS) | PKT_LEN1(0) |
- PKT_ID2(CMD_BLNK) | PKT_LEN2(2),
- PKT_ID3(CMD_RGB) | PKT_LEN3(3) | PKT_ID4(CMD_EOT) | PKT_LEN4(0),
- PKT_ID0(CMD_NULL) | PKT_LEN0(4) | PKT_ID1(CMD_HS) | PKT_LEN1(0) |
- PKT_ID2(CMD_EOT) | PKT_LEN2(0) | PKT_LP,
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(7) | PKT_LP,
0,
- PKT_ID0(CMD_BLNK) | PKT_LEN0(4) | PKT_ID1(CMD_HS) | PKT_LEN1(0) |
- PKT_ID2(CMD_BLNK) | PKT_LEN2(2),
- PKT_ID3(CMD_RGB) | PKT_LEN3(3) | PKT_ID4(CMD_EOT) | PKT_LEN4(0),
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_BLNK) | PKT_LEN1(2)|
+ PKT_ID2(CMD_RGB) | PKT_LEN2(3) | PKT_LP,
+ PKT_ID0(CMD_EOT) | PKT_LEN0(7),
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(7) | PKT_LP,
+ 0,
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_BLNK) | PKT_LEN1(2)|
+ PKT_ID2(CMD_RGB) | PKT_LEN2(3) | PKT_LP,
+ PKT_ID0(CMD_EOT) | PKT_LEN0(7),
+};
+
+static const u32 dsi_pkt_seq_video_burst_no_eot[NUMOF_PKT_SEQ] = {
+ PKT_ID0(CMD_VS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(0) | PKT_LP,
+ 0,
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(0) | PKT_LP,
+ 0,
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(0) | PKT_LP,
+ 0,
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_BLNK) | PKT_LEN1(2)|
+ PKT_ID2(CMD_RGB) | PKT_LEN2(3) | PKT_LP,
+ PKT_ID0(CMD_EOT) | PKT_LEN0(0),
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_EOT) | PKT_LEN1(0) | PKT_LP,
+ 0,
+ PKT_ID0(CMD_HS) | PKT_LEN0(0) | PKT_ID1(CMD_BLNK) | PKT_LEN1(2)|
+ PKT_ID2(CMD_RGB) | PKT_LEN2(3) | PKT_LP,
+ PKT_ID0(CMD_EOT) | PKT_LEN0(0),
};
/* TODO: verify with hw about this format */
@@ -676,8 +690,11 @@ static void tegra_dsi_set_pkt_seq(struct tegra_dc *dc,
case TEGRA_DSI_VIDEO_BURST_MODE_FAST_SPEED:
case TEGRA_DSI_VIDEO_BURST_MODE_FASTEST_SPEED:
case TEGRA_DSI_VIDEO_BURST_MODE_MANUAL:
- pkt_seq_3_5_rgb_hi = DSI_PKT_SEQ_3_HI_PKT_33_ID(rgb_info);
- pkt_seq = dsi_pkt_seq_video_burst;
+ pkt_seq_3_5_rgb_lo = DSI_PKT_SEQ_3_LO_PKT_32_ID(rgb_info);
+ if(!dsi->info.no_pkt_seq_eot)
+ pkt_seq = dsi_pkt_seq_video_burst;
+ else
+ pkt_seq = dsi_pkt_seq_video_burst_no_eot;
break;
case TEGRA_DSI_VIDEO_NONE_BURST_MODE_WITH_SYNC_END:
pkt_seq_3_5_rgb_hi = DSI_PKT_SEQ_3_HI_PKT_34_ID(rgb_info);