From: Stanley Chu <[email protected]>

Select GFX_PLL as Pixel clock source

Signed-off-by: Stanley Chu <[email protected]>
---
 board/nuvoton/arbel_evb/arbel_evb.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/board/nuvoton/arbel_evb/arbel_evb.c 
b/board/nuvoton/arbel_evb/arbel_evb.c
index 17728f8435a..aa2bda25e79 100644
--- a/board/nuvoton/arbel_evb/arbel_evb.c
+++ b/board/nuvoton/arbel_evb/arbel_evb.c
@@ -6,10 +6,14 @@
 #include <dm.h>
 #include <event.h>
 #include <asm/io.h>
+#include <linux/bitfield.h>
 #include <asm/arch/gcr.h>
 #include "../common/uart.h"
 
-#define SR_MII_CTRL_SWR_BIT15  15
+#define NPCM_CLK_BA    0xF0801000
+#define CLKSEL         0x4
+#define PIXCKSEL_GFX   0
+#define PIXCKSEL_MASK  GENMASK(5, 4)
 
 #define DRAM_512MB_ECC_SIZE    0x1C000000ULL
 #define DRAM_512MB_SIZE                0x20000000ULL
@@ -22,6 +26,18 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
+int board_init(void)
+{
+       u32 val;
+
+       /* Select GFX_PLL as PIXCK source */
+       val = readl(NPCM_CLK_BA + CLKSEL);
+       val &= ~PIXCKSEL_MASK;
+       val |= FIELD_PREP(PIXCKSEL_MASK, PIXCKSEL_GFX);
+       writel(val, NPCM_CLK_BA + CLKSEL);
+       return 0;
+}
+
 phys_size_t get_effective_memsize(void)
 {
        /* Use bank0 only */
-- 
2.34.1

Reply via email to