你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

让linux2.6.18支持4G的SD卡

[复制链接]
anger0925 发布时间:2015-9-16 08:30
linux-2.6.20.x 以上版本对SD卡有较好支持,可以支持1.0及2.0 SD卡的协议,所以linux2.6.2x 以上的版本都支持大容量(>=4G)的SD卡,而linux-2.6.1x 对SD卡的支持只能到 2G,大于2G的SD就无法识别.
- r5 z# d0 Y5 h6 I1 w$ A4 ^% t发送CMD8,检查卡是否SD2.0。SD1.1是不支持CMD8的,因此在SD2.0 Spec中提出了先发送CMD8,如响应为无效命令,则卡为SD1.1,否则就是SD2.0(请参考SD2.0 Spec)。CMD8在SD1.1上是没有的., ^9 F7 ~6 G$ y) v* _  m" M
在 mmc.c 文件中主要加入了这两个函数:
/ `, f2 \+ c" r" W2 n: ]& L# {! M3 f  mmc_read_switch_caps(host);
& e: N3 G+ C% G" V, G: c  mmc_process_ext_csds(host);
! g) r( F+ M0 ]. ]
在读大容量的SD卡时用到/ s& C% e7 S9 `1 `, C
将linux-2.6.2x 以上版本SD卡的驱动植入 linux-2.6.18中,插入SD卡,检测容量及一些相关信息没有问题,但mount SD卡时有错误,提示 kernel debug error driver/mmc/mmc.c 111!
( Q$ \/ X2 e/ L) t7 I) {# O7 q. K/ X  BUG_ON(mrq->data->blksz > host->max_blk_size);
1 K6 m! Q, n  C6 N7 D$ T) y  BUG_ON(mrq->data->blocks > host->max_blk_count);  I% p: W( y7 C5 H
  BUG_ON(mrq->data->blocks * mrq->data->blksz > host->max_req_size);
1 _: [- E2 \: g
屏蔽掉上面3行语句.问题解决!" h* }% ~4 T# @4 l& }& P0 H
但第二次插入SD卡时就没有任何反应!肯定是 remove 的时候出了问题,将 mmc_block.c文件中mmc_blk_remove 函数中的; {6 C% W/ {6 `0 O; A0 m' O
  mmc_cleanup_queue(&md->queue);( ]  W* J" F/ z3 P1 X
去掉,加入以下一行:" D, S0 x$ |: t' M3 p
  md->disk->queue = NULL;
* [5 v" O! w  }# ?1 E% c( _
SD卡的问题解决
& d* @+ Y( E5 `6 x. ?: d, C7 L8 R
赞 收藏 评论10 发布时间:2015-9-16 08:30

举报

10个回答
风子 回答时间:2015-9-16 09:02:19
这是采场?
anny 回答时间:2015-9-16 09:04:22
想让STM32的哪个芯片跑linux?
anger0925 回答时间:2015-9-16 10:14:28
风子 发表于 2015-9-16 09:02' Y) q; ~9 r* h+ u
这是采场?

: L4 U" v9 Q) b这是分享            
anger0925 回答时间:2015-9-16 10:14:44
anny 发表于 2015-9-16 09:04
* e3 D* E  X2 A7 V6 p* u% Q& o想让STM32的哪个芯片跑linux?

$ \3 u( g+ y# c( k( R0 jF7是可以跑的
JackieLaura 回答时间:2015-9-16 10:31:30
st和freescale两边都发。。。
stmcu.org.png
anny 回答时间:2015-9-16 11:39:00
anger0925 发表于 2015-9-16 10:14( m  `& p* f6 M% x
F7是可以跑的

# W6 e" Q4 [( w  R- l% J你共享例程,我买块F7的板子来,看看效果
anger0925 回答时间:2015-9-16 16:58:03
JackieLaura 发表于 2015-9-16 10:31; e) {+ F) h; N
st和freescale两边都发。。。

, e' S' e4 w" Z; m  ?这叫分享   
anger0925 回答时间:2015-9-16 16:59:25
anny 发表于 2015-9-16 11:39
! R) N1 A! j1 @; L0 Q- _你共享例程,我买块F7的板子来,看看效果
, |) O' k# R. s( h
我是其他芯片上做的
yanhaijian 回答时间:2015-9-17 08:40:01
这里搞Linux的应该不多。
JackieLaura 回答时间:2015-9-17 09:30:19
anger0925 发表于 2015-9-16 16:58$ r& N- b! Q" E9 C) Q8 m0 U9 k
这叫分享

! S& R0 q: Y. F# {& U2 J那谢谢楼主分享
! q  M" g! L! q) a) F+ `% f
stmcu.org.png
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版