diff --git a/drivers/soc/qcom/spss_utils.c b/drivers/soc/qcom/spss_utils.c index d728e4950872..608547913422 100644 --- a/drivers/soc/qcom/spss_utils.c +++ b/drivers/soc/qcom/spss_utils.c @@ -820,9 +820,8 @@ static int spss_set_fw_cmac(u32 *cmac, size_t cmac_size) writel_relaxed(cmac[i], reg + i*sizeof(u32)); pr_debug("cmac[%d] [0x%x]\n", i, cmac[i]); } - reg += cmac_size; - iounmap(cmac_mem); + reg += cmac_size; return 0; } @@ -1057,6 +1056,11 @@ static int spss_remove(struct platform_device *pdev) kfree(spss_utils_dev); spss_utils_dev = 0; + if (cmac_mem != NULL) { + iounmap(cmac_mem); + cmac_mem = NULL; + } + return 0; }