[Linux bottom layer] u-boot EMMC driver

Publisher:leader5Latest update time:2022-07-14 Source: csdnKeywords:linux Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

In the era of copycat phones, many young people may not be familiar with the fact that a SD card is installed on the phone for storage expansion. The current smartphones will have an EMMC chip soldered on the PCB board for large-capacity data storage, which is much more secure. If the phone is lost, there is no need to worry about the leakage of photos or data.


1. EMMC Features


- Compliant with JEDEC/MMC Standard Version 5.0


- Advanced 12-signal interface


- x1, x4 and x8 I/O, selectable by host


-SDR/DDR mode, up to 52MHz clock speed


-HS200/HS400 mode


-Command class: class 0 (basic); class 2 (blockread); class 4 (block write); class 5 (erase); class 6 (write protection); class 7 (lock card)


Follow the WeChat public account and reply “EMMC information” to download the chip manual package for free.


2. Block diagram, MMC controller and NAND storage;

insert image description here

3. MMC model parameters, corresponding selection table

insert image description here

4. Pin Description

insert image description here

insert image description here

Some pins marked with shading are valid pins, and other pins are left floating;


After reading the above, does the pin introduction feel very similar to that of an SD card? Yes, including the control commands, it is the same as an SD card, just treat it as an SD card and it will be OK;


5. Functional block diagram

insert image description here

Just deal with the above registers.


6. Hardware wiring diagram reference: 8-wire data transmission, fast speed;

insert image description here

7. Device Tree


mmc0: mmc@f0000000 {

u-boot,dm-pre-reloc;

pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3

&pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>; //IO pin definition, please refer to the hardware schematic diagram for details

vmmc-supply = <&vcc_mmc0_reg>; //Controller used

vqmmc-supply = <&vcc_3v3_reg>;

status = "okay";

slot@0 {

reg = <0>;

bus-width = <8>; //The number of data lines must be correct

cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>; //

};

};


8. Usage Summary


EMMC chips, I have used Samsung chips, as well as some domestic EMMCs, all have a common feature, that is, the models are updated very quickly. After a few months, it is found that the chips from the previous batch are no longer available and are no longer in production. Here I would like to remind you that if you use EMMC to make products, it is best to stock more, or compare the parameters in the selection to find manufacturers and models with better replacement.

Keywords:linux Reference address:[Linux bottom layer] u-boot EMMC driver

Previous article:[linux kernel] Kernel transplant process record
Next article:[Linux bottom layer] U-boot ksz8081 network driver debugging

Latest Microcontroller Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号