OdroidXU3: add workaround for MFC crash issue 39/48339/1 tizen_-4
authorMarek Szyprowski <m.szyprowski@samsung.com>
Thu, 17 Sep 2015 10:53:16 +0000 (12:53 +0200)
committerPrzemyslaw Marczak <p.marczak@samsung.com>
Fri, 18 Sep 2015 07:25:18 +0000 (09:25 +0200)
Most versions of MFC v8 firmware suffer from various hang and crash
issues. Most of those issues has been fixed in updated MFC v8 firmware
available for Exynos 5433, however using it on Odroid XU3 sometimes
causes random crashes. In our experiments it turned out that such
firmware works stable after increasing the MFC sclk rate from default
333MHz to 480MHz. This has been achieved by setting ACLK333 clock
divider to 1 (from 2) and setting CPLL rate to 480MHz (from 666MHz).

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Id38d914fddea7fa8fe7144e25cc47948184f9579

board/samsung/smdk5420/smdk5420.c
include/configs/odroid_xu3.h

index cab827ddc4f76e93b80db848a5da84e05892650d..e16236464ecbe41024b54e3ed8a0a0663fa57030 100644 (file)
@@ -30,6 +30,19 @@ DECLARE_GLOBAL_DATA_PTR;
 
 int exynos_init(void)
 {
+#ifdef EXYNOS5422_MFC_CPLL_FIX
+       /*
+        * A workaround for MFC crash on Odroid XU3:
+        * 1. set ACLK333 divider to 1
+        * 2. set CPLL rate to 480MHz
+        */
+       writel(0xa0500201, 0x10020120);
+       udelay(10);
+
+       writel(0x03100900, 0x10020504);
+       udelay(10);
+#endif
+
        return 0;
 }
 
index a123b8f9bbed73f9254c4732a8548647984a17c4..24b62701dd14186b143f310e63da270aa4e03b3d 100644 (file)
 #undef CONFIG_EXYNOS_TMU
 #undef CONFIG_TMU_CMD_DTT
 
+#define EXYNOS5422_MFC_CPLL_FIX
+
 #endif /* __CONFIG_H */