From 217d5e488033c7337b80794563b2f13e29b9f88d Mon Sep 17 00:00:00 2001
From: David Abdurachmanov <david.abdurachmanov@sifive.com>
Date: Tue, 20 Jul 2021 19:02:39 +0200
Subject: generic: fu740: add workaround for CIP-1200 errata

Instruction TLB can fail to respect a non-global SFENCE thus we need to
flush the TLB using SFENCE.VMA x0, x0

See full description of CIP-1200 in Errata_FU740-C000_20210205 from
https://www.sifive.com/boards/hifive-unmatched

Signed-off-by: David Abdurachmanov <david.abdurachmanov@sifive.com>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
---
 platform/generic/platform.c | 2 ++
 1 file changed, 2 insertions(+)

(limited to 'platform/generic/platform.c')

diff --git a/platform/generic/platform.c b/platform/generic/platform.c
index 0787d10..0757d87 100644
--- a/platform/generic/platform.c
+++ b/platform/generic/platform.c
@@ -24,9 +24,11 @@
 #include <sbi_utils/reset/fdt_reset.h>
 
 extern const struct platform_override sifive_fu540;
+extern const struct platform_override sifive_fu740;
 
 static const struct platform_override *special_platforms[] = {
 	&sifive_fu540,
+	&sifive_fu740,
 };
 
 static const struct platform_override *generic_plat = NULL;
-- 
cgit v1.2.3