OdroidXU3: add workaround for MFC crash issue
authorMarek Szyprowski <m.szyprowski@samsung.com>
Thu, 17 Sep 2015 10:53:16 +0000 (12:53 +0200)
committerJaehoon Chung <jh80.chung@samsung.com>
Fri, 8 Apr 2016 02:17:34 +0000 (11:17 +0900)
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/common/exynos5-dt.c
include/configs/odroid_xu3.h

index 4d9e151756b3be9555c81e539bf76f0baee2fbe7..1f284fd4a0f250af9ab1669f63a043297e2532d7 100644 (file)
@@ -66,6 +66,18 @@ int exynos_init(void)
 {
        board_enable_audio_codec();
 
+#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 8957f543c4cd2a30e6aeaa2079c59eb910433e62..a05eaa33d4346b662df1f14c2a6cab321ed09289 100644 (file)
        "dfu_alt_system="CONFIG_DFU_ALT_SYSTEM \
        "dfu_alt_info=Autoset by THOR/DFU command run.\0"
 
+/* Hacking */
+#define EXYNOS5422_MFC_CPLL_FIX
+
 #endif /* __CONFIG_H */