diff options
| author | Alan Kwong <akwong@codeaurora.org> | 2016-10-12 16:44:00 -0400 |
|---|---|---|
| committer | Alan Kwong <akwong@codeaurora.org> | 2016-10-24 19:36:05 -0400 |
| commit | 8e3226a2fa93a42eac91227c0f95ff5f55b1cfc3 (patch) | |
| tree | 7ab6c5324f40074295f9afbfeb2b7fd4e710735c /drivers/gpu | |
| parent | 644936d86529f849005315ee15fa78361b74dc56 (diff) | |
drm/msm/sde: add writeback id parsing to hardware catalog
Writeback identifier is used to mapped clock control register
for each writeback device. Add writeback identifier parsing to
hardware catalog.
Change-Id: I666072f657dfeb30c6818f3dd25729e891c579ad
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/msm/sde/sde_hw_catalog.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/gpu/drm/msm/sde/sde_hw_catalog.c b/drivers/gpu/drm/msm/sde/sde_hw_catalog.c index fb75c2a59835..ec7c02b2ec6d 100644 --- a/drivers/gpu/drm/msm/sde/sde_hw_catalog.c +++ b/drivers/gpu/drm/msm/sde/sde_hw_catalog.c @@ -145,6 +145,7 @@ enum { enum { WB_OFF, WB_LEN, + WB_ID, WB_XIN_ID, }; @@ -259,6 +260,7 @@ static struct sde_prop_type intf_prop[] = { static struct sde_prop_type wb_prop[] = { {WB_OFF, "qcom,sde-wb-off", true, PROP_TYPE_U32_ARRAY}, {WB_LEN, "qcom,sde-wb-size", false, PROP_TYPE_U32}, + {WB_ID, "qcom,sde-wb-id", true, PROP_TYPE_U32_ARRAY}, {WB_XIN_ID, "qcom,sde-wb-xin-id", false, PROP_TYPE_U32_ARRAY}, }; @@ -833,8 +835,8 @@ static int sde_wb_parse_dt(struct device_node *np, struct sde_mdss_cfg *sde_cfg) wb->sblk = sblk; wb->base = prop_value[WB_OFF][i]; - wb->id = WB_0 + i; - wb->clk_ctrl = SDE_CLK_CTRL_NONE; + wb->id = WB_0 + prop_value[WB_ID][i]; + wb->clk_ctrl = SDE_CLK_CTRL_WB0 + prop_value[WB_ID][i]; wb->xin_id = prop_value[WB_XIN_ID][i]; wb->vbif_idx = VBIF_NRT; wb->len = prop_value[WB_LEN][0]; @@ -843,7 +845,7 @@ static int sde_wb_parse_dt(struct device_node *np, struct sde_mdss_cfg *sde_cfg) wb->len = DEFAULT_SDE_HW_BLOCK_LEN; sblk->maxlinewidth = sde_cfg->max_wb_linewidth; - if (i >= LINE_MODE_WB_OFFSET) + if (wb->id >= LINE_MODE_WB_OFFSET) set_bit(SDE_WB_LINE_MODE, &wb->features); else set_bit(SDE_WB_BLOCK_MODE, &wb->features); |
