历史上的今天
今天是:2024年12月29日(星期日)
2020年12月29日 | I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之eMMC移植
2020-12-29 来源:eefocus
前一篇文章已经移植好CAN,本文来移植eMMC。eMMC的移植一般来讲比较简单,因为MMC驱动是由官方维护的,一般来讲,不会有什么问题,对我们来说,只需要正确的配置各个pin脚的复用关系,这种情况也是DTS最擅长的。下面我们开始eMMC移植。
DTS编写
参考sabresd的DTS,我们可以如下编写DTS:
&usdhc4 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usdhc4_1>;
bus-width = <8>;
non-removable;
no-1-8-v;
keep-power-in-suspend;
status = "okay";
};
由于tqimx6q的eMMC管脚复用关系与imx6qdl.dtsi中的pinctrl_usdhc4_1是完全一致的,因此,可以直接使用该组配置。修改好以上内容后重新编译并烧写DTB。
测试方法
测试eMMC是否好用的方法有很多,本文的测试手段是将MMC的整体划分为一个分区并格式化为FAT32文件系统,如果以上操作能够成功完成,则表示eMMC已经正常工作。
Step1. 创建分区。使用fdisk创建分区:
@tqimx6q #fdisk /dev/mmcblk1
The number of cylinders for this disk is set to 238592.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): d
Selected partition 1
Command (m for help): d
No partition is defined yet!
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-238592, default 1): Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-238592, default 238592): Using default value 238592
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table
mmcblk1: p1
Step2. 将分区p1格式化FAT32文件系统,执行指令:
mkfs.vfat /dev/mmcblk1p1
Step3. 将格式化好的分区p1挂载到/mnt目录,执行指令:
mount /dev/mmcblk1p1 /mnt
Step4. 在p1中创建文件,重启检测文件是否仍然存在,执行指令:
echo "test" > /mnt/test.txt
sync
执行以上命令之后重启开发板,重新挂载该分区后会发现test.txt文件依然存在,证明eMMC驱动已经可以正常工作了。
史海拾趣
|
驱动使用DDK写的,不是DS+DDK,以前用DS+DDK的时候是应用把一个Event的HANDLE传进去,然后驱动里面用传进来的HANDLE生成一个KEVENT,应用那里启动一个线程,线程里面等待那个Event就行了,这样当发生中断时驱动的DPC就把KEVENT设置,应用的那个线程就 ...… 查看全部问答> |
|
初学DSP,用了一片TMS320VC5409和10M无源晶振,板子做起来以后不能用,测量时钟信号发现X1管脚的信号是一个比较畸形的正弦波,X2管脚的波形是一个规则的正弦波;但是时钟输出CLKOUT的波形则是在高低电平两个位置剧烈震荡。由于对晶振和时钟信号不熟 ...… 查看全部问答> |
|
在做430向SD卡写数据时候,SD卡可以,但是用SDHC卡初始化过程中CMD0的响应正确,ACMD41响应总是0x01,是不是argument有问题呢?… 查看全部问答> |
|
2012TI杯山东省大学生电子设计竞赛 基本仪器和主要元器件清单 1、基本仪器清单 数字电桥 直流稳压电源 量角器 米尺 四位半数字万用表 0~200℃温度 ...… 查看全部问答> |




