Firmware is responsible for properly enabling smmu workarounds. Print
a message for better diagnostics when Cavium erratum 27704 was
detected.
Signed-off-by: Robert Richter <[email protected]>
---
drivers/iommu/arm-smmu.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
index abf6496843a6..c88bf8deb958 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
@@ -1887,6 +1887,7 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
atomic_add_return(smmu->num_context_banks,
&cavium_smmu_context_count);
smmu->cavium_id_base -= smmu->num_context_banks;
+ dev_notice(smmu->dev, "\tenabling workaround for Cavium erratum 27704\n");
}
/* ID2 */
--
2.11.0
On 13/03/17 10:39, Robert Richter wrote:
> Firmware is responsible for properly enabling smmu workarounds. Print
> a message for better diagnostics when Cavium erratum 27704 was
> detected.
The wording there could possibly be misinterpreted as the firmware
actively having to do something to the hardware prior to handing it off
to Linux, as opposed to merely supplying a correct FDT or IORT table,
but I'm not sure it matters all that much, and the patch itself is fine:
Reviewed-by: Robin Murphy <[email protected]>
Thanks,
Robin.
> Signed-off-by: Robert Richter <[email protected]>
> ---
> drivers/iommu/arm-smmu.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
> index abf6496843a6..c88bf8deb958 100644
> --- a/drivers/iommu/arm-smmu.c
> +++ b/drivers/iommu/arm-smmu.c
> @@ -1887,6 +1887,7 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
> atomic_add_return(smmu->num_context_banks,
> &cavium_smmu_context_count);
> smmu->cavium_id_base -= smmu->num_context_banks;
> + dev_notice(smmu->dev, "\tenabling workaround for Cavium erratum 27704\n");
> }
>
> /* ID2 */
>