summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xarch/riscv/include/asm/arch-jh7110/jh7110-regs.h4
-rw-r--r--board/starfive/evb/spl.c5
2 files changed, 9 insertions, 0 deletions
diff --git a/arch/riscv/include/asm/arch-jh7110/jh7110-regs.h b/arch/riscv/include/asm/arch-jh7110/jh7110-regs.h
index 0672ee0d8d..a6a88c8581 100755
--- a/arch/riscv/include/asm/arch-jh7110/jh7110-regs.h
+++ b/arch/riscv/include/asm/arch-jh7110/jh7110-regs.h
@@ -100,6 +100,10 @@
#define CLK_QSPI_REF_SW_SHIFT 24
#define CLK_QSPI_REF_SW_MASK 0x1000000U
+#define CLK_SDIO0_SDCARD_OFFSET 0x174
+#define CLK_SDIO0_SDCARD_SHIFT 0
+#define CLK_SDIO0_SDCARD_MASK 0xFFFFFFU
+
#define PLL0_DACPD_SHIFT 0x18U
#define PLL0_DACPD_MASK 0x1000000U
#define PLL0_DSMPD_SHIFT 0x19U
diff --git a/board/starfive/evb/spl.c b/board/starfive/evb/spl.c
index b683786d28..689a954e6f 100644
--- a/board/starfive/evb/spl.c
+++ b/board/starfive/evb/spl.c
@@ -119,6 +119,11 @@ void board_init_f(ulong dummy)
/*set GPIO to 1.8v*/
setbits_le32(SYS_SYSCON_BASE + 0xC, 0xf);
+ /*set sdio0 sdcard clk default div to 4*/
+ clrsetbits_le32(SYS_CRG_BASE + CLK_SDIO0_SDCARD_OFFSET,
+ CLK_SDIO0_SDCARD_MASK,
+ (4 << CLK_SDIO0_SDCARD_SHIFT) & CLK_SDIO0_SDCARD_MASK);
+
/* reset emmc */
SYS_IOMUX_DOEN(22, LOW);
SYS_IOMUX_DOUT(22, 19);