Zynq7020 EMMC与SD卡之间的问题

本文介绍了如何解决Zynq7020开发板上的EMMC与SD卡启动问题。在默认情况下,uboot从SD0(EMMC)启动,但目标是在SD1上启动。通过修改设备树和uboot配置,成功添加SD1并调整启动顺序,使系统能从SD卡启动。在过程中,还遇到了SD卡在文件系统中设备名随机变化的问题,经过排查发现是rcS文件导致,修复后问题解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们的开发板是有一个EMMC和一个SD卡的,自带的uboot默认是从SD0启动,然而刚好我的EMMC就是在SD0上,但为了调试方便我希望在SD卡上启动,也就是在SD1上启动,这就存在了问题,我该如何修改才能实现此功能呢?

从官网下载下来的源码都是从SD0启动的,那么我们首先要修改设备树,以我的为例子,我的设备树文件在u-boot-xlnx-master/arch/arm/dts/zynq-zc702.dts。默认的uboot只有一个SD0,需要我们自己手动添加,如下:

	aliases {
                ............. ; 
		mmc0 = &sdhci0;
		mmc1 = &sdhci1;
	};
	pinctrl_sdhci1_default: sdhci1-default {
		mux {
			groups = "sdio1_0_grp";
			function = "sdio1";
		};

		conf {
			groups = "sdio1_0_grp";
			slew-rate = <0>;
			io-standard = <1>;
			bias-disable;
		};
/*
		mux-cd {
			groups = "gpio0_9_grp";
			function = "sdio1_cd";
		};

		conf-cd {
			groups = "gpio0_9_grp";
			bias-high-impedance;
			bias-pull-up;
			slew-rate = <0>
### Zynq-7020 平台上 eMMC 存储设备 VxWorks 操作系统的配置和驱动支持 #### 配置环境准备 为了使Zynq-7020平台上的eMMC能够被VxWorks操作系统识别并正常工作,需要先准备好相应的开发工具链以及硬件资源。这通常涉及到使用特定版本的Vivado设计套件来创建项目,并通过ALINX zynq7020开发板完成必要的设置[^2]。 #### 创建工程 当构建基于VxWorks的应用程序时,可以通过Workbench IDE中的菜单选项`File > New > Project > VxWorks Downloadable Kernel Module Project`启动新项目的建立过程[^3]。此操作会引导开发者逐步定义目标架构和其他编译参数,从而确保最终生成的目标文件适用于所选平台。 #### 设备树节点解析 对于eMMC的支持,在设备初始化阶段非常重要的一环就是正确配置其对应的设备树节点。根据已有的记录显示,在命令行界面下执行`ll "/sd1"`可以查看到类似如下输出: ```plaintext /devs drv refs name 1 [ 3] / mmc0 6 [ 3] / sd1 ... ``` 这里表明系统已经成功挂载了一个名为`/sd1`的SD或者eMMC设备[^4]。需要注意的是,实际路径可能会有所不同,具体取决于当前运行环境中预设的名字空间映射关系。 #### 加入eMMC驱动模块 为了让VxWorks能访问eMMC,还需要引入专门针对该类闪存介质优化过的驱动组件。这部分内容往往由供应商提供现成实现方案或是官方文档指导如何自行编写适配代码。例如,在某些情况下可能涉及修改或扩展现有的文件系统层以适应不同厂商生产的eMMC芯片特性。 #### 测试验证 最后一步则是进行全面的功能测试,确认整个流程无误之后再考虑部署至生产环境当中去。此时应当利用之前提到的各种调试手段反复检验直至达到预期效果为止。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smile_5me

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值