WhyCan Forum

人过留名,雁过留声,感谢各位朋友不离不弃地支持。 QQ: 516333132 (挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2019-11-04 18:17:32

EddyZhan
会员
注册时间: 2018-05-11
累计积分: 35

licheepi nano f1c100s uboot 从spiflash启动困惑

按照官网(nano.licheepi.pro)里面配置了uboot,从spiflash启动。

目前发现一个问题,如果不插SD卡启动的话,没有问题,但是SPL阶段会报错。

如果插上SD卡(非linux系统卡),就会出现trying to boot from MMC1,而且一直停止在那里。。。。

我尝试关闭了uboot里面有关的MMC选项,结果一编译就报错了。。。

很疑惑,为什么会这样呢? 求教各位大神啦!


FluxBB bbcode 测试
FluxBB bbcode 测试

离线

#2 2019-11-04 18:28:39

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 8,219

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

可能你的 TF 卡和这个板子或者f1c100s 有点不兼容.

编译是没有问题的.

离线

#3 2019-11-04 18:33:41

EddyZhan
会员
注册时间: 2018-05-11
累计积分: 35

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

晕哥 说:

可能你的 TF 卡和这个板子或者f1c100s 有点不兼容.

编译是没有问题的.

我明天再试试吧 ,这个卡用别人的uboot没问题的。

离线

#4 2019-11-04 18:41:59

ippen
会员
注册时间: 2018-07-22
累计积分: 250

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

我记得u-boot里面有启动顺序,mmc是第一顺序,spi是第二,改一下顺序就可以了

离线

#5 2019-11-04 18:50:32

ippen
会员
注册时间: 2018-07-22
累计积分: 250

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

在 arch/arm/mach-sunxi/board.c

void board_boot_order(u32 *spl_boot_list)
{
        /*
         * See the comments above in sunxi_get_boot_device() for infomation
         * about FEL boot.
         */
        if (!is_boot0_magic(SPL_ADDR + 4)) {
                spl_boot_list[0] = BOOT_DEVICE_BOARD;
                return;
        }

        spl_boot_list[0] = BOOT_DEVICE_MMC1;
        spl_boot_list[1] = BOOT_DEVICE_SPI;
}

离线

#6 2019-11-05 14:26:52

EddyZhan
会员
注册时间: 2018-05-11
累计积分: 35

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

修改完毕SPL的启动顺序以后这个问题基本解决了。

离线

#7 2019-11-05 14:27:27

我思故我在
会员
注册时间: 2019-09-03
累计积分: 138

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

EddyZhan 说:

修改完毕SPL的启动顺序以后这个问题基本解决了。

按5楼的方法修改吗?

离线

#8 2019-11-05 15:47:48

shaoxi2010
会员
注册时间: 2019-06-13
累计积分: 43

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

对的,F1c的Brom代码并未填装当前启动类型,按5楼的改就好了

离线

#9 2019-11-05 16:11:48

Jmhh247
会员
注册时间: 2018-12-21
累计积分: 158

Re: licheepi nano f1c100s uboot 从spiflash启动困惑

学习到了

ippen 说:

在 arch/arm/mach-sunxi/board.c

void board_boot_order(u32 *spl_boot_list)
{
        /*
         * See the comments above in sunxi_get_boot_device() for infomation
         * about FEL boot.
         */
        if (!is_boot0_magic(SPL_ADDR + 4)) {
                spl_boot_list[0] = BOOT_DEVICE_BOARD;
                return;
        }

        spl_boot_list[0] = BOOT_DEVICE_MMC1;
        spl_boot_list[1] = BOOT_DEVICE_SPI;
}

离线

页脚