
FLASH
那颗流星
提炼升华
展开
-
SDIO驱动学习
在分析了sdio,emmc驱动,把剩余的sdio部分也学习下。代码很多不仔细看了,看关键的int mmc_attach_sdio(struct mmc_host *host){ err = mmc_send_io_op_cond(host, 0, &ocr); mmc_attach_bus(host, &mmc_sdio_ops); rocr = mmc_select_voltage(host, ocr); err = mmc_sdio_init_card(ho原创 2020-11-22 16:08:50 · 1687 阅读 · 0 评论 -
linux下的sdcard驱动学习
调一款加密ic ET300时,发现通信不上,报错-110,就是超时出错,检查了gpio和sdcard配置,也检查了sd供电,发现sdio的供电域是1.8v,而根据协议默认是3.3v,然后切换到1.8v,通过飞线,使用一个ldo来供电。修改后,还是通信异常。加打印调试,在mmc_send_cid函数报错了,就是读不到卡的cid信息。默认读不到cid,代码就退出了。检查了再检查,实在找不出问题,于是修改代码,强制往下跑,看log,居然读到了卡的信息。也就是只有CMD2命令跑不过,其他命令都跑过了。.原创 2020-11-21 23:29:11 · 1171 阅读 · 1 评论 -
Linux下的eMMC
常见存储介质NANDFlashNOR FlashHDD 机械硬盘SSD 固态硬盘(包含NANDFlash)UFS(包含NANDFlash)eMMC(Embedded Multi Media Card) eMMC接口+NANDFlasheMCP eMMC和DDR进行了封装先看下硬件连接(除电源)Linux下的eMMC架构eMMC的注册过程,先注册...原创 2019-12-19 14:08:49 · 2936 阅读 · 1 评论 -
记一次emmc走线干扰导致的启动异常
产线生产手机,出现部分手机开机定屏。刷以前的软件能正常启动到Android界面,初步怀疑是软件问题。拿到机器后,接usb,发现有usb端口,但由于是user版本,无法连接adb进行调试。直接刷成userdebug版本,机器正常启动。怀疑是客户的软件问题,让客户提供debug版本的软件,发现内核有报错信息,也就是emmc读写异常。mmcblk0: error -84 transferring ...原创 2019-08-18 21:29:27 · 2714 阅读 · 1 评论 -
记一次emmc物料导致系统无法正常运行
新回来了一批主板,开机后却无法正常进入主界面(有开机 画面)。试了好几块都是一样的情况。由于之前该 主板已调试ok,试了同一版软件,旧的主板能正常启动,跟硬件同事沟通后,新旧主板的不同是emmc物料不同。由于出问题的物料都是芯片厂商验证过的物料,且几块物料都是同样的情况,只能接串口看log分析了。看了几遍log,好像没什么问题,最终发现system分区挂载失败,导致Android...原创 2019-04-14 00:12:14 · 2427 阅读 · 4 评论