一、硬件平台

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/HOWOOYA7688.dts”文件。
在文件中,增加如下代码:

step1:修改菜单配置
sudo make menuconfig
支持sd卡
Kernel modules  ---> Other modules  ---><*> kmod-button-hotplug<*> kmod-sdhci-mt7620
支持语言
Kernel modules  ---> Native Language Support  ---><*> kmod-nls-cp437<*> kmod-nls-iso8859-1<*> kmod-nls-utf8
支持文件系统
Kernel modules  ---> Filesystems  ---><*> kmod-fs-vfatstep2:修改内核配置
sudo make kernel_menuconfig
支持热拔插
Device Drivers  ---> <*> MMC/SD/SDIO card support  ---><*>   MTK SD/MMCCard Detect with Pollingstep3:修改设备树HIWOOYA7688.dtssdhci@10130000 {status = "okay";
//                mediatek,cd-high;mediatek,cd-low;};step4:修改设备树mt7628an.dtsi如下sdhci@10130000 {compatible = "ralink,mt7620-sdhci";reg = <0x10130000 4000>;interrupt-parent = <&intc>;interrupts = <14>;pinctrl-names = "default";pinctrl-0 = <&sdxc_pins>;status = "disabled";};sdxc_pins: sdxc {sdxc {ralink,group = "sdmode";ralink,function = "sdxc";};};

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-2 增加语言支持

4.4 增加 vfat文件系统的支持

对于增加vfat文件系统的支持,有两个方法,选择其中一种即可。

4.4.1、menuconfig 增加支持

执行 make menuconfig
Filesystems —>
配置如图4-3所示。


图4-3 增加vfat文件系统的支持

4.4.2 kernel_menuconfig增加支持

执行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卡内容

Openwrt如何添加SD_Card?看这里相关推荐

  1. openwrt之添加OpenWrt软件包概述

    第一章 添加OpenWrt软件包概述 添加软件包 ​ 在源码 package 目录下创建一个目录,以包含该软件包的各种信息和与 OpenWrt 建立联系的文件.然后创建一个 Makefile 与 Op ...

  2. 同华_美hame mpr-a2硬件刷openwrt固件添加usb-serial功能编译

    前言 背景是我从网上淘到hame mpr-A2一样的设备,发现其中使用了breed web控制台,可以刷机,该设备拥有一个rj45网口,一个usb接口以及有wifi功能,而且该设备有openwrt现成 ...

  3. OpenWrt/Lede 添加USB支持

    USB功能定制 1. 添加USB相关支持 Kernel modules -> USB Support -> <*> kmod-usb-core. Kernel modules ...

  4. html给img添加阴影,WPS表格中如何给插入的图片添加阴影效果 看完你就知道了

    在制作WPS工作表中,我们经常会插入图片进入工作表,为了使插入的图片更加美观,我们可以给插入的图片添加阴影效果.其具体操作步骤如下: 工具/材料 WPS办公软件 操作方法 01 在桌面上双击WPS表格 ...

  5. 如何在OpenWrt中添加新的profile【以百度音乐盒为例】

    一个profile包含了一个或者多个路由器型号,一般来说,同一个厂家的路由器定义,会放在同一个profile中. 下面就以添加百度音乐盒为例: 添加一个baidu.mk文件,路径如下图: 里面的内容如 ...

  6. 给你的博客添加个看电影的频道

    PPTV新推出一个Silverlight版PPTV在线剧场,里面电影电视剧和PPTV 软件端同步,只需安装Silverlight软件,即可在线观看.PPTV剧场版网址 为COOL.PPTV.COM , ...

  7. UltraEdit的上百种语法高亮文件下载,具体添加请看其中说明!(推荐)

    本文转载自: http://www.cnblogs.com/emb.bob/archive/2004/09/11/42188.html 作者:Emb.BOB 转载请注明该声明. Text Editor ...

  8. OpenWRT 学习笔记 -- 用户自定义添加app的开机自启动

    参考自:OpenWRT编译 – 用户自定义添加app的开机自启动 OpenWRT 学习笔记-19 OpenWRT开机自启动服务 文章目录 一.概述 二.自启动实现方式一 三.自启动实现方式二 四.自启 ...

  9. 虚拟机给openwrt添加硬盘并且配置smb

    虚拟机给openwrt添加硬盘并且配置smb openwrt配置 添加硬盘 挂载硬盘1 挂载硬盘二 配置smb共享 参考文章 openwrt配置 https://blog.csdn.net/qq_43 ...

最新文章

  1. 在Notes客户端如何打开隐藏视图
  2. CCNet 的 Build 流程
  3. springmvc学习资料整理
  4. android 最新消息滚动,Android 滚动操作Scroller类详解
  5. 1058. 选择题(20)
  6. python 网页编程_通过Python编程检索网页
  7. FMStocks7 , 不错的一个.NET 示例程序
  8. JavaScript Try Catch:异常处理说明
  9. svn: Commit failed (details follow): svn: Authorization failed
  10. FFmpeg之yuv裁剪(二十一)
  11. 从ext2文件系统上读出超级块
  12. 使用vue开发的网易云音乐播放器
  13. echarts横向柱形图显示不同类别所占整体百分比
  14. 酷狗音乐榜单歌曲获取解析教程
  15. 《类》《this指针》《构造函数》《析构函数》《拷贝构造函数》《赋值运算符重载》
  16. 蓝桥杯-标题:史丰收速算
  17. word没保存?如何找回未保存的word文档
  18. 利用kettle获取企业微信打卡数据
  19. html5指定透明色,HTML5怎么设置透明色
  20. LearnOpenGL学习笔记—PBR:IBL

热门文章

  1. 计算机信息管理参考文献,计算机信息管理本科论文参考文献大全 计算机信息管理本科论文参考文献哪里找...
  2. 苦难是人生最大的财富
  3. linux mysql 僵尸进程_Linux 系统中僵尸进程
  4. win10忘记密码初始化电脑
  5. Mac软件卸载:安全彻底地卸载Microsoft Outlook
  6. Docker系列文-----Docker的网络类型(4)
  7. c语言编写生日祝福语大全,C++求高手帮忙写个程序...输出“生日快乐”四个字..用符号拼出来..谢谢啦...
  8. 阿里邮箱(@aliyun.com):启用IMAP功能+邮箱密码登录
  9. 微信公众号模板消息推送问题汇总
  10. android实现蓝牙耳机的连接及列表的管理