为什么我的emmc卡被识别为/ dev / sdd而不是/ dev / mmcblk0?

时间:2015-11-05 03:58:14

标签: linux linux-device-driver embedded-linux sd-card

我的桌面有一个内置的SD / mini / MMC / RS卡插槽,我可以毫无问题地使用我的eMMC卡作为存储设备。但是在/dev目录下,它被识别为/dev/sdd,我认为应该是/dev/mmcblk0或其他内容。这是关于dmesg -T部分的sd的输出:

[Thu Nov  5 10:57:14 2015] sd 5:0:0:2: [sdd] 15269888 512-byte logical blocks: (7.81 GB/7.28 GiB)
[Thu Nov  5 10:57:14 2015] sd 5:0:0:2: [sdd] Write Protect is off
[Thu Nov  5 10:57:14 2015] sd 5:0:0:2: [sdd] Mode Sense: 03 00 00 00
[Thu Nov  5 10:57:14 2015] sd 5:0:0:2: [sdd] No Caching mode page found
[Thu Nov  5 10:57:14 2015] sd 5:0:0:2: [sdd] Assuming drive cache: write through
[Thu Nov  5 10:57:14 2015] sd 5:0:0:0: [sdb] Attached SCSI removable disk
[Thu Nov  5 10:57:14 2015] sd 5:0:0:1: [sdc] Attached SCSI removable disk
[Thu Nov  5 10:57:14 2015]  sdd: sdd1
[Thu Nov  5 10:57:14 2015] sd 5:0:0:3: [sde] Attached SCSI removable disk
[Thu Nov  5 10:57:14 2015] sd 5:0:0:2: [sdd] Attached SCSI removable disk

问题在于我想使用ioctlMMC_IOC_CMD请求来测试其功能,因此我可以将结果/响应与另一个FPGA模拟的eMMC控制器进行比较。在安装了Linux(3.0.1)的嵌入式扶手板上,这个相同的eMMC卡被正确识别为/dev/mmcblk0,我可以成功地向它发送一些命令。但在桌面open("/dev/sdd", O_RDWR)上,ioctl(fd, IOC_MMC_CMD, args)会返回EINVAL

也许问题是该卡未被正确识别为sd / mmc卡?如何让它实现为mmcblkX,以便我可以在我的PC(Arch Linux)上与它进行交互?

0 个答案:

没有答案