按照荔枝派nano即食的教程
git clone https://github.com/uestczyh222/tina-spl.git
pushd tina-spl
make
得到 .bin文件
烧录进RAM,然后启动
sudo sunxi-fel -p write 0x00000000 tina-spl.bin
sudo sunxi-fel exec 0x00000000
现在有个问题,加了 spiflash-write 烧写入spiflash,复位后运行不了,是烧写地址错了吗?
离线
离线
离线
我发现在https://github.com/uestczyh222/tina-spl.git(现在实际链接为https://github.com/lymzzyh/tina-spl.git)里面,里面的代码直接编译然后按照教程用fel烧入到ram里面,然后运行,是可以跑的通的。但是用mksunxi对文件进行修补之后,烧入到spi-flash中,可以看到能被brom识别,但是就是跑不了,或者说硬件错误了。然后发现是sys_clock_init有点问题,我将其用https://gitee.com/kasira/f1c200s_rtt_lvgl830.git这个仓库里面的sys_clock_init替换过后,就可以成功运行。
离线
return_to_fel这个函数也有点问题,也需要改成https://gitee.com/kasira/f1c200s_rtt_lvgl830.git中的样子,不然没法返回到fel中去。
.global return_to_fel
return_to_fel:
ldr r0, =0x00000040
ldr sp, [r0, #0]
ldr lr, [r0, #4]
ldr r1, [r0, #16]
mcr p15, 0, r1, c1, c0, 0
ldr r1, [r0, #12]
mcr p15, 0, r1, c1, c0, 0
ldr r1, [r0, #8]
msr cpsr, r1
ldr r1, =0xffff0020
bx r1
bx lr离线