匿名
未登录
登录
百问网嵌入式Linux wiki
搜索
查看“MMC overview”的源代码
来自百问网嵌入式Linux wiki
名字空间
页面
讨论
更多
更多
页面选项
Read
查看源代码
历史
←
MMC overview
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
'''SUMMARY '''<br> The MMC (MultiMediaCard) / SD (secure digital) / SDIO (secure digital input/output) subsystem implements a standard Linux<sup>®</sup> host driver to interface with MMC / SD memory cards or SDIO cards. == Framework purpose == The purpose of this article is to introduce the MMC Linux<sup>®</sup> subsystem (MMC / SD) by: * providing general information * describing the main components/stakeholders The SDIO is addressed in the [[WLAN_overview|WLAN overview]]. ==System overview== [[File:MMC_overview.png|center|link=]] ===Component description=== * User space applications handle '''file I/O''' management to view the card memory as a disk, whereas programs that perform '''raw I/O''' accesses see the memory as a block device<ref>https://en.wikipedia.org/wiki/Device_file#Block_devices</ref>. * '''VFS''' (Kernel space) Virtual File System. Please refer to the VFS documentation <ref>{{CodeSource | Linux kernel | Documentation/filesystems/vfs.txt | VFS}} </ref>. * '''MMC core/SD/MMC/SDIO''' (Kernel space) The '''MMC core''' ensures compliance with MultiMediaCard ('''MMC''')<ref>[https://www.jedec.org/standards-documents/technology-focus-areas/flash-memory-ssds-ufs-emmc/e-mmc MultiMediaCard], embedded MultiMediaCard specification</ref> / secure digital ('''SD''')<ref>[https://www.sdcard.org/ Secure Digital], secure digital specification</ref> / secure digital input/output ('''SDIO''')<ref>[https://www.sdcard.org/ Secure Digital Input Output], Secure Digital Input Output specification</ref>. * '''SDMMC driver''' (Kernel space) / '''SDMMC''' (hardware) The '''SDMMC driver''' handles: * the registers, the clock, the interrupt and the IDMA control. * the communications over the bus based on command/response and data transfers. Please refer to the [[SDMMC internal peripheral]]. ===API description=== The MMC core handles the file system read/write calls. ==Configuration == ===Kernel configuration=== The MMC framework is activated by default in ST deliveries. If a specific configuration is needed, this section indicates how the MMC framework can be activated/inactivated in the kernel. The MMC framework can be activated in the kernel configuration via Linux<sup>®</sup> Menuconfig tool: [[Menuconfig or how to configure kernel]] <pre> [*] Device Drivers [*] MMC/SD/SDIO card support <*> HW reset support for eMMC <*> Simple HW reset support for MMC <*> MMC block device driver (16) Number of minors per block device ... <*> ARM AMBA Multimedia Card Interface support [*] STMicroelectronics STM32 SDMMC Controller </pre> ===Device tree configuration=== DT configuration can be done thanks to [[STM32CubeMX]]. Please refer to the [[SDMMC_device_tree_configuration| SDMMC device tree configuration]]. ==How to use the framework== A file system, which handles read/write/erase operations, can be used with the MMC framework. Please refer to the [[How to support EXT4 through MMC|EXT4 support through MMC]]. ==How to trace and debug the framework== ===How to monitor=== The sysfs interface provides detailed information on each mmc device: <pre> root:~# cat /sys/kernel/debug/mmc0/ios clock: 50000000 Hz vdd: 21 (3.3 ~ 3.4 V) bus mode: 2 (push-pull) chip select: 0 (don't care) power mode: 2 (on) bus width: 2 (4 bits) timing spec: 2 (sd high-speed) signal voltage: 0 (3.30 V) driver type: 0 (driver type B) </pre> ===How to trace=== For details on dynamic trace usage, refer to [[How to use the kernel dynamic debug]]. root:~# echo "file drivers/mmc/* +p" > /sys/kernel/debug/dynamic_debug/control ==Source code location== The MMC framework is available {{CodeSource | Linux kernel | drivers/mmc | here}}. ==References== Please refer to the following links for a full description of the MMC framework: <references /> <noinclude> {{ArticleBasedOnModel | Framework overview article model}} [[Category:Mass storage]] </noinclude>
该页面使用的模板:
模板:CodeSource
(
查看源代码
)
返回至
MMC overview
。
导航
导航
WIKI首页
官方店铺
资料下载
交流社区
所有页面
所有产品
MPU-Linux开发板
MCU-单片机开发板
Linux开发系列视频
单片机开发系列视频
所有模块配件
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志