发新帖我要提问
123
返回列表
打印
[i.MX]

IMX6 Yocto启动(已解决)

[复制链接]
楼主: zengquanyun
手机看帖
扫描二维码
随时随地手机跟帖
41
zengquanyun|  楼主 | 2014-11-5 16:55 | 只看该作者 回帖奖励 |倒序浏览
是自己根据SABRE Platform for Smart Devices设计的板子。之前使用L3.0.35_4.1.0_130816_images_MX6.tar.gz里面的u-boot-mx6q-sabresd.bin时能够从SD卡启动kernel,但是现在使用fsl-L3.10.17_1.0.0_iMX6qdls_Bundle.tar.gz的这个u-boot-imx6qsabresd_sd.imx却连u-boot参数都改不了,总显示“no card present”。

使用特权

评论回复
42
FSL_TICS_Rita| | 2014-11-5 17:28 | 只看该作者
zengquanyun 发表于 2014-11-5 16:55
是自己根据SABRE Platform for Smart Devices设计的板子。之前使用L3.0.35_4.1.0_130816_images_MX6.tar.gz ...

楼主你好 ,请问你板子改动了哪些内容呢?相对开发板?

使用特权

评论回复
43
zengquanyun|  楼主 | 2014-11-7 09:25 | 只看该作者
我不清楚具体改了哪些。但是以前使用L3.0.35_4.1.0_130816_images_MX6.tar.gz,能够从SD卡启动。为何现在使用fsl-L3.10.17_1.0.0_iMX6qdls_Bundle.tar.gz,就无法使用SD启动?

使用特权

评论回复
44
FSL_TICS_Rita| | 2014-11-13 16:23 | 只看该作者
zengquanyun 发表于 2014-11-7 09:25
我不清楚具体改了哪些。但是以前使用L3.0.35_4.1.0_130816_images_MX6.tar.gz,能够从SD卡启动。为何现在使 ...

楼主你好,我这边跟同事讨论了一下,有可能是这样,你的板子设计的sd的设备名称和开发板的不对应。这样,在u-boot起来以后你使用命令:
mmc dev 1
指定你要使用的设备,然后再设置u-boot里kernel启动的相关参数,再启动,看是否OK。如果还是不可以再联系我哈。

使用特权

评论回复
45
zengquanyun|  楼主 | 2014-11-14 16:06 | 只看该作者
还是不可以保存u-boot参数。具体的情形在附件的图中。

SD_boot.png (4.53 KB )

SD_boot.png

使用特权

评论回复
46
FSL_TICS_Rita| | 2014-11-27 15:02 | 只看该作者
楼主你好,请问你本贴中的问题是否已经解决了?如果没有欢迎继续在这里讨论哈,如果已解决麻烦帮忙结帖哈,非常感谢~~

使用特权

评论回复
47
zengquanyun|  楼主 | 2014-12-1 16:42 | 只看该作者
还是没有解决。最重要的问题是用SD卡启动的时候仍然无法在U-BOOT保存任何参数,更不用说是进入Kernel了。

使用特权

评论回复
48
FSL_TICS_Rita| | 2014-12-1 16:59 | 只看该作者
zengquanyun 发表于 2014-12-1 16:42
还是没有解决。最重要的问题是用SD卡启动的时候仍然无法在U-BOOT保存任何参数,更不用说是进入Kernel了。 ...

楼主你好,我再帮你想想办法,这里你能说一下你板子的设计和开发板有什么区别吗?

使用特权

评论回复
49
zengquanyun|  楼主 | 2014-12-2 15:22 | 只看该作者
IMX6Q的开发板有两种,SDB和SDP。你说的是哪个开发板?我从官网下载了一个原理图,名字为《SPF-27392》。附件有它的截图。你看一下这个是不是成功使用了Yocto的开发板。

demo_board.png (23.33 KB )

demo_board.png

使用特权

评论回复
50
zengquanyun|  楼主 | 2015-1-27 17:16 | 只看该作者
这个问题终于解决了。是因为在Yocto uboot中会检测MMC的card detect引脚。把以下函数改为直接返回1就可以在uboot设置参数了。
int board_mmc_getcd(struct mmc *mmc)

{
                struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
                int ret = 0;
                switch (cfg->esdhc_base) {
                case USDHC2_BASE_ADDR:
                                ret = !gpio_get_value(USDHC2_CD_GPIO);
                                break;
                case USDHC3_BASE_ADDR:
                                ret = !gpio_get_value(USDHC3_CD_GPIO);
                                break;
                case USDHC4_BASE_ADDR:
                                ret = 1; /* eMMC/uSDHC4 is always present */
                                break;
                }
                return ret;
}

使用特权

评论回复
51
mini1986| | 2015-4-17 17:12 | 只看该作者
使用ltib的飘过......

使用特权

评论回复
52
nihaojhjhh| | 2015-8-14 08:57 | 只看该作者
FSL_TICS_Rita 发表于 2014-10-27 17:05
楼主你好,在的吗?你这里启动有问题应该是你u-boot中的参数没有设置正确,建议你print一下看看哪里没有 ...

请问 您在吗? 我能加你qq吗?我有问题问你

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则