Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41885
  • 博文数量: 42
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 32
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-30 10:34
文章分类
文章存档

2014年(42)

我的朋友

分类: LINUX

2014-11-19 19:06:08

内核源码自带SD/mmc控制器驱动,在drivers/mmc/目录下,s3c2440的SD控制器驱动文件为:drivers/mmc/host/s3cmci.c

修改mach-xc2440.c 文件,支持SD Host控制器驱动:

加入必要的头文件:
#include
#include

xc2440_devices[ ]结构体中加入sdi的platform_device:
&s3c_device_sdi,

创建s3c2440的SD控制器的平台数据:
  1. /* SD Card */
  2. static struct s3c24xx_mci_pdata xc2440_mmc_cfg __initdata = {
  3.    .gpio_detect     = S3C2410_GPG(8),
  4.    .no_wprotect     = 1,
  5.    .set_power         = NULL,
  6.    .ocr_avail     = MMC_VDD_32_33|MMC_VDD_33_34,
  7. };
gpio_detect指定SD_CD所接的中断管脚,XC2440开发板上接的是GPG8
no_wprotect指定是否使用写保护管脚,XC2440开发板的SD卡电路没有接写保护,所以赋值为1

在xc2440_machine_init函数中加入设置platdata函数:
s3c24xx_mci_set_platdata(&xc2440_mmc_cfg);

配置内核,支持SD:
  1. Device Drivers --->
  2. <*> MMC/SD/SDIO card support --->
  3. <*> MMC block device driver
  4. <*> Use bounce buffer for simple hosts
  5. <*> Sumsung S3C SD/MMC Card Interface support

内核启动时打印的调试信息:
s3c-sdi s3c2440-sdi: powered down.
s3c-sdi s3c2440-sdi: mmc0 - using pio, sw SDIO IRQ
阅读(160) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~