Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3970faae authored by Ujwal Patel's avatar Ujwal Patel Committed by Gerrit - the friendly Code Review server
Browse files

iommu: msm: fix vbif base address during tlb sync operation



If tlb sync is not complete to due some reason, recovery sequence is
performed on a client vbif. However vbif base address to perform this
recovery sequence is incorrect and leads to xpu violation. Fix the vbif
base address to prevent unintentional register access.

Change-Id: I8cffffa1f0f3e30116fd245c7b6e8f2c61ce847e
Signed-off-by: default avatarUjwal Patel <ujwalp@codeaurora.org>
Signed-off-by: default avatarSiddhartha Agrawal <agrawals@codeaurora.org>
parent 8a749c24
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
/* Copyright (c) 2012-2014, The Linux Foundation. All rights reserved.
/* Copyright (c) 2012-2015, The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
@@ -216,7 +216,7 @@ static int __check_vbif_state(struct msm_iommu_drvdata const *drvdata)

	if (base) {
		__dump_vbif_state(drvdata->base, base);
		__halt_vbif_xin(drvdata->base);
		__halt_vbif_xin(base);
		__dump_vbif_state(drvdata->base, base);
		iounmap(base);
	} else {
@@ -265,7 +265,7 @@ static void check_tlb_sync_state(struct msm_iommu_drvdata const *drvdata,
{
	int res;
	unsigned int val;
	void __iomem *base = drvdata->base;
	void __iomem *base = drvdata->cb_base;
	char const *name = drvdata->name;

	pr_err("Timed out waiting for TLB SYNC to complete for %s (client: %s)\n",