1.1 控制器:MT7688
二、软件平台2.1、开发环境:Ubuntu12.04 2.2、软件版本:openwrt-hiwooya-stable
三、功能说明本文章所选择的目标芯片为MT7688,profile 选择的为“LINKIT7688.dts”。 对于openwrt增加对于sd card的支持,需要配置四个方面: 1、dts文件增加对sdhci的支持,开启硬件对sd card接口驱动支持,硬件初始化。 2、增加对sd card的驱动程序支持,用于检测sd card插拔和驱动。 3、增加对语言格式的支持,如utf8、cp437、iso8859-1,用于识别sd card里面的内容,避免乱码。 4、增加对vfat文件系统的支持,否则无法挂载sd card。
四、操作步骤 4.1 修改dts文件对于默认的小米开发板的dts文件,没有对sd接口的硬件初始化,故需要修改“openwrt/target/linux/ramips/dts/LINKIT7688.dts”文件。
在文件中,增加如下代码:sdhci@10130000 { compatible = "ralink,mt7620-sdhci"; reg = ; interrupt-parent = ; interrupts = ; status = "okay"; };
4.2 增加sd card 驱动支持在openwrt sdk包中,执行命令 make menuconfig命令
Kernel modules —>
Other modules —>
<> kmod-button-hotplug
<> kmod-sdhci-mt7620
配置如图4-1所示。
图4-1 增加sd card 接口驱动注意事项:在make menuconfig中配置了sd card 驱动,请勿再 make kernel_menuconfig中配置sd card驱动,否则在开机的时候,出现提示信息:
mmc_core: exports duplicate symbol __mmc_claim_host (owned by kernel) sdhci-pltfm: SDHCI platform and OF driver helper mmc_core: exports duplicate symbol __mmc_claim_host (owned by kernel) mmc_core: exports duplicate symbol __mmc_claim_host (owned by kernel) mmc_core: exports duplicate symbol __mmc_claim_host (owned by kernel) mmc_core: exports duplicate symbol __mmc_claim_host (owned by kernel) mmc_core: exports duplicate symbol __mmc_claim_host (owned by kernel)
如提示信息所示,sd 卡mmc_core重复导出,所以最终导致无法sd 卡驱动成功!!!!
4.3 增加语言模块支持对于openwrt系统,仅仅开启sd card接口驱动是不够的,还需要增加语言的支持,否则sd card无法识别里面的文件内容,或者出现乱码显现。
在openwrt sdk包中,执行命令 make menuconfig命令。
Kernel modules —> Native Language Support —>,
kmod-nls-cp437
kmod-nls-iso8859-1
kmod-nls-utf8
设置如图4-2所示。4.4 增加 vfat文件系统的支持
图4-2 增加语言支持对于增加vfat文件系统的支持,有两个方法,选择其中一种即可。
4.4.1、menuconfig 增加支持执行 make menuconfig
Filesystems —>
配置如图4-3所示。4.4.2 kernel_menuconfig增加支持
图4-3 增加vfat文件系统的支持执行make kernel_menuconfig
File systems —> DOS/FAT/NT Filesystems —>
图4-4 增加vfat文件系统的支持如此,openwrt配置完成。
五、测试烧录程序之后,关于SD卡的开机信息如下:
[ 9.050000] MTK MSDC device init. [ 9.090000] mtk-sd: MediaTek MT6575 MSDC Driver [ 9.090000] sdhci: Secure Digital Host Controller Interface driver [ 9.100000] sdhci: Copyright(c) Pierre Ossman [ 9.110000] sdhci-pltfm: SDHCI platform and OF driver helper [ 9.140000] mmc0: new high speed SD card at address b368 [ 9.150000] mmcblk0: mmc0:b368 00000 1.86 GiB (ro) [ 9.160000] mmcblk0:
将sd卡进行挂载
root@OpenWrt:/# mount -t vfat /dev/mmcblk0 /mnt/
查看sd卡的内容,如图5-1所示。
图5-1 sd卡内容
作者:Justice_Gao