diff --git a/drivers/video/fbdev/msm/mdss_debug_xlog.c b/drivers/video/fbdev/msm/mdss_debug_xlog.c index 2d23d074cf70..8f62919529a5 100644 --- a/drivers/video/fbdev/msm/mdss_debug_xlog.c +++ b/drivers/video/fbdev/msm/mdss_debug_xlog.c @@ -266,6 +266,9 @@ static void mdss_dump_debug_bus(u32 bus_dump_flag, dump_addr[i*4 + 3] = status; } + /* Disable debug bus once we are done */ + writel_relaxed(0, mdss_res->mdp_base + head->wr_addr); + } mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF); diff --git a/drivers/video/fbdev/msm/mdss_mdp_debug.c b/drivers/video/fbdev/msm/mdss_mdp_debug.c index 294474fa3a0e..06b2e87ceedd 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_debug.c +++ b/drivers/video/fbdev/msm/mdss_mdp_debug.c @@ -22,6 +22,586 @@ #define BUF_DUMP_LAST_N 10 +static struct debug_bus dbg_bus_8996[] = { + + /* Unpack 0 sspp 0*/ + { 0x188, 50, 6 }, + { 0x188, 60, 6 }, + { 0x188, 54, 6 }, + { 0x188, 64, 6 }, + { 0x188, 70, 6 }, + { 0x188, 85, 6 }, + /* Upack 0 sspp 1*/ + { 0x298, 50, 6 }, + { 0x298, 60, 6 }, + { 0x298, 54, 6 }, + { 0x298, 64, 6 }, + { 0x298, 70, 6 }, + { 0x298, 85, 6 }, + /* scheduler */ + { 0x348, 130, 0 }, + { 0x348, 130, 1 }, + { 0x348, 130, 2 }, + { 0x348, 130, 3 }, + { 0x348, 130, 4 }, + { 0x348, 130, 5 }, + + /* fetch sspp0 */ + + /* vig 0 */ + { 0x188, 0, 0 }, + { 0x188, 0, 1 }, + { 0x188, 0, 2 }, + { 0x188, 0, 3 }, + { 0x188, 0, 4 }, + { 0x188, 0, 5 }, + { 0x188, 0, 6 }, + { 0x188, 0, 7 }, + + { 0x188, 1, 0 }, + { 0x188, 1, 1 }, + { 0x188, 1, 2 }, + { 0x188, 1, 3 }, + { 0x188, 1, 4 }, + { 0x188, 1, 5 }, + { 0x188, 1, 6 }, + { 0x188, 1, 7 }, + + { 0x188, 2, 0 }, + { 0x188, 2, 1 }, + { 0x188, 2, 2 }, + { 0x188, 2, 3 }, + { 0x188, 2, 4 }, + { 0x188, 2, 5 }, + { 0x188, 2, 6 }, + { 0x188, 2, 7 }, + + { 0x188, 4, 0 }, + { 0x188, 4, 1 }, + { 0x188, 4, 2 }, + { 0x188, 4, 3 }, + { 0x188, 4, 4 }, + { 0x188, 4, 5 }, + { 0x188, 4, 6 }, + { 0x188, 4, 7 }, + + { 0x188, 5, 0 }, + { 0x188, 5, 1 }, + { 0x188, 5, 2 }, + { 0x188, 5, 3 }, + { 0x188, 5, 4 }, + { 0x188, 5, 5 }, + { 0x188, 5, 6 }, + { 0x188, 5, 7 }, + + /* vig 2 */ + { 0x188, 20, 0 }, + { 0x188, 20, 1 }, + { 0x188, 20, 2 }, + { 0x188, 20, 3 }, + { 0x188, 20, 4 }, + { 0x188, 20, 5 }, + { 0x188, 20, 6 }, + { 0x188, 20, 7 }, + + { 0x188, 21, 0 }, + { 0x188, 21, 1 }, + { 0x188, 21, 2 }, + { 0x188, 21, 3 }, + { 0x188, 21, 4 }, + { 0x188, 21, 5 }, + { 0x188, 21, 6 }, + { 0x188, 21, 7 }, + + { 0x188, 22, 0 }, + { 0x188, 22, 1 }, + { 0x188, 22, 2 }, + { 0x188, 22, 3 }, + { 0x188, 22, 4 }, + { 0x188, 22, 5 }, + { 0x188, 22, 6 }, + { 0x188, 22, 7 }, + + { 0x188, 24, 0 }, + { 0x188, 24, 1 }, + { 0x188, 24, 2 }, + { 0x188, 24, 3 }, + { 0x188, 24, 4 }, + { 0x188, 24, 5 }, + { 0x188, 24, 6 }, + { 0x188, 24, 7 }, + + { 0x188, 25, 0 }, + { 0x188, 25, 1 }, + { 0x188, 25, 2 }, + { 0x188, 25, 3 }, + { 0x188, 25, 4 }, + { 0x188, 25, 5 }, + { 0x188, 25, 6 }, + { 0x188, 25, 7 }, + + /* rgb 0 */ + { 0x188, 10, 0 }, + { 0x188, 10, 1 }, + { 0x188, 10, 2 }, + { 0x188, 10, 3 }, + { 0x188, 10, 4 }, + { 0x188, 10, 5 }, + { 0x188, 10, 6 }, + { 0x188, 10, 7 }, + + { 0x188, 11, 0 }, + { 0x188, 11, 1 }, + { 0x188, 11, 2 }, + { 0x188, 11, 3 }, + { 0x188, 11, 4 }, + { 0x188, 11, 5 }, + { 0x188, 11, 6 }, + { 0x188, 11, 7 }, + + { 0x188, 12, 0 }, + { 0x188, 12, 1 }, + { 0x188, 12, 2 }, + { 0x188, 12, 3 }, + { 0x188, 12, 4 }, + { 0x188, 12, 5 }, + { 0x188, 12, 6 }, + { 0x188, 12, 7 }, + + { 0x188, 14, 0 }, + { 0x188, 14, 1 }, + { 0x188, 14, 2 }, + { 0x188, 14, 3 }, + { 0x188, 14, 4 }, + { 0x188, 14, 5 }, + { 0x188, 14, 6 }, + { 0x188, 14, 7 }, + + { 0x188, 15, 0 }, + { 0x188, 15, 1 }, + { 0x188, 15, 2 }, + { 0x188, 15, 3 }, + { 0x188, 15, 4 }, + { 0x188, 15, 5 }, + { 0x188, 15, 6 }, + { 0x188, 15, 7 }, + + /* rgb 2 */ + { 0x188, 30, 0 }, + { 0x188, 30, 1 }, + { 0x188, 30, 2 }, + { 0x188, 30, 3 }, + { 0x188, 30, 4 }, + { 0x188, 30, 5 }, + { 0x188, 30, 6 }, + { 0x188, 30, 7 }, + + { 0x188, 31, 0 }, + { 0x188, 31, 1 }, + { 0x188, 31, 2 }, + { 0x188, 31, 3 }, + { 0x188, 31, 4 }, + { 0x188, 31, 5 }, + { 0x188, 31, 6 }, + { 0x188, 31, 7 }, + + { 0x188, 32, 0 }, + { 0x188, 32, 1 }, + { 0x188, 32, 2 }, + { 0x188, 32, 3 }, + { 0x188, 32, 4 }, + { 0x188, 32, 5 }, + { 0x188, 32, 6 }, + { 0x188, 32, 7 }, + + { 0x188, 34, 0 }, + { 0x188, 34, 1 }, + { 0x188, 34, 2 }, + { 0x188, 34, 3 }, + { 0x188, 34, 4 }, + { 0x188, 34, 5 }, + { 0x188, 34, 6 }, + { 0x188, 34, 7 }, + + { 0x188, 35, 0 }, + { 0x188, 35, 1 }, + { 0x188, 35, 2 }, + { 0x188, 35, 3 }, + { 0x188, 35, 4 }, + { 0x188, 35, 5 }, + { 0x188, 35, 6 }, + { 0x188, 35, 7 }, + + /* dma 0 */ + { 0x188, 40, 0 }, + { 0x188, 40, 1 }, + { 0x188, 40, 2 }, + { 0x188, 40, 3 }, + { 0x188, 40, 4 }, + { 0x188, 40, 5 }, + { 0x188, 40, 6 }, + { 0x188, 40, 7 }, + + { 0x188, 41, 0 }, + { 0x188, 41, 1 }, + { 0x188, 41, 2 }, + { 0x188, 41, 3 }, + { 0x188, 41, 4 }, + { 0x188, 41, 5 }, + { 0x188, 41, 6 }, + { 0x188, 41, 7 }, + + { 0x188, 42, 0 }, + { 0x188, 42, 1 }, + { 0x188, 42, 2 }, + { 0x188, 42, 3 }, + { 0x188, 42, 4 }, + { 0x188, 42, 5 }, + { 0x188, 42, 6 }, + { 0x188, 42, 7 }, + + { 0x188, 44, 0 }, + { 0x188, 44, 1 }, + { 0x188, 44, 2 }, + { 0x188, 44, 3 }, + { 0x188, 44, 4 }, + { 0x188, 44, 5 }, + { 0x188, 44, 6 }, + { 0x188, 44, 7 }, + + { 0x188, 45, 0 }, + { 0x188, 45, 1 }, + { 0x188, 45, 2 }, + { 0x188, 45, 3 }, + { 0x188, 45, 4 }, + { 0x188, 45, 5 }, + { 0x188, 45, 6 }, + { 0x188, 45, 7 }, + + /* cursor 0 */ + { 0x188, 80, 0 }, + { 0x188, 80, 1 }, + { 0x188, 80, 2 }, + { 0x188, 80, 3 }, + { 0x188, 80, 4 }, + { 0x188, 80, 5 }, + { 0x188, 80, 6 }, + { 0x188, 80, 7 }, + + { 0x188, 81, 0 }, + { 0x188, 81, 1 }, + { 0x188, 81, 2 }, + { 0x188, 81, 3 }, + { 0x188, 81, 4 }, + { 0x188, 81, 5 }, + { 0x188, 81, 6 }, + { 0x188, 81, 7 }, + + { 0x188, 82, 0 }, + { 0x188, 82, 1 }, + { 0x188, 82, 2 }, + { 0x188, 82, 3 }, + { 0x188, 82, 4 }, + { 0x188, 82, 5 }, + { 0x188, 82, 6 }, + { 0x188, 82, 7 }, + + { 0x188, 83, 0 }, + { 0x188, 83, 1 }, + { 0x188, 83, 2 }, + { 0x188, 83, 3 }, + { 0x188, 83, 4 }, + { 0x188, 83, 5 }, + { 0x188, 83, 6 }, + { 0x188, 83, 7 }, + + { 0x188, 84, 0 }, + { 0x188, 84, 1 }, + { 0x188, 84, 2 }, + { 0x188, 84, 3 }, + { 0x188, 84, 4 }, + { 0x188, 84, 5 }, + { 0x188, 84, 6 }, + { 0x188, 84, 7 }, + + /* fetch sspp1 */ + /* vig 1 */ + { 0x298, 0, 0 }, + { 0x298, 0, 1 }, + { 0x298, 0, 2 }, + { 0x298, 0, 3 }, + { 0x298, 0, 4 }, + { 0x298, 0, 5 }, + { 0x298, 0, 6 }, + { 0x298, 0, 7 }, + + { 0x298, 1, 0 }, + { 0x298, 1, 1 }, + { 0x298, 1, 2 }, + { 0x298, 1, 3 }, + { 0x298, 1, 4 }, + { 0x298, 1, 5 }, + { 0x298, 1, 6 }, + { 0x298, 1, 7 }, + + { 0x298, 2, 0 }, + { 0x298, 2, 1 }, + { 0x298, 2, 2 }, + { 0x298, 2, 3 }, + { 0x298, 2, 4 }, + { 0x298, 2, 5 }, + { 0x298, 2, 6 }, + { 0x298, 2, 7 }, + + { 0x298, 4, 0 }, + { 0x298, 4, 1 }, + { 0x298, 4, 2 }, + { 0x298, 4, 3 }, + { 0x298, 4, 4 }, + { 0x298, 4, 5 }, + { 0x298, 4, 6 }, + { 0x298, 4, 7 }, + + { 0x298, 5, 0 }, + { 0x298, 5, 1 }, + { 0x298, 5, 2 }, + { 0x298, 5, 3 }, + { 0x298, 5, 4 }, + { 0x298, 5, 5 }, + { 0x298, 5, 6 }, + { 0x298, 5, 7 }, + + /* vig 3 */ + { 0x298, 20, 0 }, + { 0x298, 20, 1 }, + { 0x298, 20, 2 }, + { 0x298, 20, 3 }, + { 0x298, 20, 4 }, + { 0x298, 20, 5 }, + { 0x298, 20, 6 }, + { 0x298, 20, 7 }, + + { 0x298, 21, 0 }, + { 0x298, 21, 1 }, + { 0x298, 21, 2 }, + { 0x298, 21, 3 }, + { 0x298, 21, 4 }, + { 0x298, 21, 5 }, + { 0x298, 21, 6 }, + { 0x298, 21, 7 }, + + { 0x298, 22, 0 }, + { 0x298, 22, 1 }, + { 0x298, 22, 2 }, + { 0x298, 22, 3 }, + { 0x298, 22, 4 }, + { 0x298, 22, 5 }, + { 0x298, 22, 6 }, + { 0x298, 22, 7 }, + + { 0x298, 24, 0 }, + { 0x298, 24, 1 }, + { 0x298, 24, 2 }, + { 0x298, 24, 3 }, + { 0x298, 24, 4 }, + { 0x298, 24, 5 }, + { 0x298, 24, 6 }, + { 0x298, 24, 7 }, + + { 0x298, 25, 0 }, + { 0x298, 25, 1 }, + { 0x298, 25, 2 }, + { 0x298, 25, 3 }, + { 0x298, 25, 4 }, + { 0x298, 25, 5 }, + { 0x298, 25, 6 }, + { 0x298, 25, 7 }, + + /* rgb 1 */ + { 0x298, 10, 0 }, + { 0x298, 10, 1 }, + { 0x298, 10, 2 }, + { 0x298, 10, 3 }, + { 0x298, 10, 4 }, + { 0x298, 10, 5 }, + { 0x298, 10, 6 }, + { 0x298, 10, 7 }, + + { 0x298, 11, 0 }, + { 0x298, 11, 1 }, + { 0x298, 11, 2 }, + { 0x298, 11, 3 }, + { 0x298, 11, 4 }, + { 0x298, 11, 5 }, + { 0x298, 11, 6 }, + { 0x298, 11, 7 }, + + { 0x298, 12, 0 }, + { 0x298, 12, 1 }, + { 0x298, 12, 2 }, + { 0x298, 12, 3 }, + { 0x298, 12, 4 }, + { 0x298, 12, 5 }, + { 0x298, 12, 6 }, + { 0x298, 12, 7 }, + + { 0x298, 14, 0 }, + { 0x298, 14, 1 }, + { 0x298, 14, 2 }, + { 0x298, 14, 3 }, + { 0x298, 14, 4 }, + { 0x298, 14, 5 }, + { 0x298, 14, 6 }, + { 0x298, 14, 7 }, + + { 0x298, 15, 0 }, + { 0x298, 15, 1 }, + { 0x298, 15, 2 }, + { 0x298, 15, 3 }, + { 0x298, 15, 4 }, + { 0x298, 15, 5 }, + { 0x298, 15, 6 }, + { 0x298, 15, 7 }, + + /* rgb 3 */ + { 0x298, 30, 0 }, + { 0x298, 30, 1 }, + { 0x298, 30, 2 }, + { 0x298, 30, 3 }, + { 0x298, 30, 4 }, + { 0x298, 30, 5 }, + { 0x298, 30, 6 }, + { 0x298, 30, 7 }, + + { 0x298, 31, 0 }, + { 0x298, 31, 1 }, + { 0x298, 31, 2 }, + { 0x298, 31, 3 }, + { 0x298, 31, 4 }, + { 0x298, 31, 5 }, + { 0x298, 31, 6 }, + { 0x298, 31, 7 }, + + { 0x298, 32, 0 }, + { 0x298, 32, 1 }, + { 0x298, 32, 2 }, + { 0x298, 32, 3 }, + { 0x298, 32, 4 }, + { 0x298, 32, 5 }, + { 0x298, 32, 6 }, + { 0x298, 32, 7 }, + + { 0x298, 34, 0 }, + { 0x298, 34, 1 }, + { 0x298, 34, 2 }, + { 0x298, 34, 3 }, + { 0x298, 34, 4 }, + { 0x298, 34, 5 }, + { 0x298, 34, 6 }, + { 0x298, 34, 7 }, + + { 0x298, 35, 0 }, + { 0x298, 35, 1 }, + { 0x298, 35, 2 }, + { 0x298, 35, 3 }, + { 0x298, 35, 4 }, + { 0x298, 35, 5 }, + { 0x298, 35, 6 }, + { 0x298, 35, 7 }, + + /* dma 1 */ + { 0x298, 40, 0 }, + { 0x298, 40, 1 }, + { 0x298, 40, 2 }, + { 0x298, 40, 3 }, + { 0x298, 40, 4 }, + { 0x298, 40, 5 }, + { 0x298, 40, 6 }, + { 0x298, 40, 7 }, + + { 0x298, 41, 0 }, + { 0x298, 41, 1 }, + { 0x298, 41, 2 }, + { 0x298, 41, 3 }, + { 0x298, 41, 4 }, + { 0x298, 41, 5 }, + { 0x298, 41, 6 }, + { 0x298, 41, 7 }, + + { 0x298, 42, 0 }, + { 0x298, 42, 1 }, + { 0x298, 42, 2 }, + { 0x298, 42, 3 }, + { 0x298, 42, 4 }, + { 0x298, 42, 5 }, + { 0x298, 42, 6 }, + { 0x298, 42, 7 }, + + { 0x298, 44, 0 }, + { 0x298, 44, 1 }, + { 0x298, 44, 2 }, + { 0x298, 44, 3 }, + { 0x298, 44, 4 }, + { 0x298, 44, 5 }, + { 0x298, 44, 6 }, + { 0x298, 44, 7 }, + + { 0x298, 45, 0 }, + { 0x298, 45, 1 }, + { 0x298, 45, 2 }, + { 0x298, 45, 3 }, + { 0x298, 45, 4 }, + { 0x298, 45, 5 }, + { 0x298, 45, 6 }, + { 0x298, 45, 7 }, + + /* cursor 1 */ + { 0x298, 80, 0 }, + { 0x298, 80, 1 }, + { 0x298, 80, 2 }, + { 0x298, 80, 3 }, + { 0x298, 80, 4 }, + { 0x298, 80, 5 }, + { 0x298, 80, 6 }, + { 0x298, 80, 7 }, + + { 0x298, 81, 0 }, + { 0x298, 81, 1 }, + { 0x298, 81, 2 }, + { 0x298, 81, 3 }, + { 0x298, 81, 4 }, + { 0x298, 81, 5 }, + { 0x298, 81, 6 }, + { 0x298, 81, 7 }, + + { 0x298, 82, 0 }, + { 0x298, 82, 1 }, + { 0x298, 82, 2 }, + { 0x298, 82, 3 }, + { 0x298, 82, 4 }, + { 0x298, 82, 5 }, + { 0x298, 82, 6 }, + { 0x298, 82, 7 }, + + { 0x298, 83, 0 }, + { 0x298, 83, 1 }, + { 0x298, 83, 2 }, + { 0x298, 83, 3 }, + { 0x298, 83, 4 }, + { 0x298, 83, 5 }, + { 0x298, 83, 6 }, + { 0x298, 83, 7 }, + + { 0x298, 84, 0 }, + { 0x298, 84, 1 }, + { 0x298, 84, 2 }, + { 0x298, 84, 3 }, + { 0x298, 84, 4 }, + { 0x298, 84, 5 }, + { 0x298, 84, 6 }, + { 0x298, 84, 7 }, +}; + static struct debug_bus dbg_bus_8994[] = { /* VIG QSEED */ { 0x298, 4, 0}, @@ -134,6 +714,11 @@ void mdss_mdp_hw_rev_debug_caps_init(struct mdss_data_type *mdata) mdata->dbg_bus = dbg_bus_8994; mdata->dbg_bus_size = ARRAY_SIZE(dbg_bus_8994); break; + case MDSS_MDP_HW_REV_107: + case MDSS_MDP_HW_REV_107_1: + case MDSS_MDP_HW_REV_107_2: + mdata->dbg_bus = dbg_bus_8996; + mdata->dbg_bus_size = ARRAY_SIZE(dbg_bus_8996); default: break; }