From d59a83501cac8bbff91f53ec2ee00315ac309bd6 Mon Sep 17 00:00:00 2001 From: Yuanfang Zhang Date: Fri, 11 Sep 2020 14:04:09 +0800 Subject: [PATCH] dcc_v2: fix 1 write 1 read register configuration fail issue Re-use base address from last entry only when the decs_type of last entry equal to "DCC_ADDR_TYPE" in dcc_config_add(). Change-Id: I6c678ddaac6c689d73b14c63d03abdbd6289dc0c Signed-off-by: Yuanfang Zhang --- drivers/soc/qcom/dcc_v2.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/soc/qcom/dcc_v2.c b/drivers/soc/qcom/dcc_v2.c index 0f71cbb3129b..dd3c07d3bdbc 100644 --- a/drivers/soc/qcom/dcc_v2.c +++ b/drivers/soc/qcom/dcc_v2.c @@ -1053,7 +1053,8 @@ static int dcc_config_add(struct dcc_drvdata *drvdata, unsigned int addr, pentry = list_last_entry(&drvdata->cfg_head[drvdata->curr_list], struct dcc_config_entry, list); - if (addr >= (pentry->base + pentry->offset) && + if (pentry->desc_type == DCC_ADDR_TYPE && + addr >= (pentry->base + pentry->offset) && addr <= (pentry->base + pentry->offset + MAX_DCC_OFFSET)) { /* Re-use base address from last entry */