310P SPI 25M时钟启动
收藏回复举报
310P SPI 25M时钟启动
发表于2026-07-09 20:21:47
0 查看

1硬件切换启动方式

cke_1844.png

修改硬件管脚为BSBC启动

注:正常启动方式为001 spi flash启动,只需要修改BOOT_MD0 即可。

 2、将以下代码放在hboot1a中c代码最开始的位置,让BISO强制从25M启动。

#define SFC_CLK_SEL_25M 0x2

#define SFC_CLK_SEL_50M 0x0

#define BIT0 0x1

#define BIT1 0x2

#define BIT2 0x4

#define HISS_SUBCTRL_BASE_ADDR 0x10100000

#define HSC_SFC_ICG_EN (HISS_SUBCTRL_BASE_ADDR + 0x358)

#define HSC_SFC_ICG_DIS (HISS_SUBCTRL_BASE_ADDR + 0x35C)

#define HSC_SFC_CLK_SEL (HISS_SUBCTRL_BASE_ADDR + 0x104)

void adjust_sfc_frequency_to_25M(void)

{

uint32_t val;

uint32_t clk_sel = SFC_CLK_SEL_25M;

val = read32(HSC_SFC_ICG_DIS);

val |= (BIT0 | BIT1 | BIT2);

write32(val, HSC_SFC_ICG_DIS);

udelay(1);

write32(clk_sel, HSC_SFC_CLK_SEL);

udelay(1);

val = read32(HSC_SFC_ICG_EN);

val |= (BIT0 | BIT1 | BIT2);

write32(val, HSC_SFC_ICG_EN);

}

3、测试SPI_CLK频率到25M

cke_122532.png

我要发帖子