]>
Commit | Line | Data |
---|---|---|
371a689f AW |
1 | SD and MMC Block Device Attributes |
2 | ================================== | |
3 | ||
4 | These attributes are defined for the block devices associated with the | |
5 | SD or MMC device. | |
6 | ||
7 | The following attributes are read/write. | |
8 | ||
9 | force_ro Enforce read-only access even if write protect switch is off. | |
10 | ||
dfe86cba AH |
11 | SD and MMC Device Attributes |
12 | ============================ | |
13 | ||
14 | All attributes are read-only. | |
15 | ||
16 | cid Card Identifaction Register | |
17 | csd Card Specific Data Register | |
18 | scr SD Card Configuration Register (SD only) | |
19 | date Manufacturing Date (from CID Register) | |
20 | fwrev Firmware/Product Revision (from CID Register) (SD and MMCv1 only) | |
21 | hwrev Hardware/Product Revision (from CID Register) (SD and MMCv1 only) | |
22 | manfid Manufacturer ID (from CID Register) | |
23 | name Product Name (from CID Register) | |
24 | oemid OEM/Application ID (from CID Register) | |
51e7e8b6 | 25 | prv Product Revision (from CID Register) (SD and MMCv4 only) |
dfe86cba AH |
26 | serial Product Serial Number (from CID Register) |
27 | erase_size Erase group size | |
28 | preferred_erase_size Preferred erase size | |
188cc042 LP |
29 | raw_rpmb_size_mult RPMB partition size |
30 | rel_sectors Reliable write sector count | |
5fb06af7 | 31 | ocr Operation Conditions Register |
6825a606 | 32 | dsr Driver Stage Register |
dfe86cba AH |
33 | |
34 | Note on Erase Size and Preferred Erase Size: | |
35 | ||
36 | "erase_size" is the minimum size, in bytes, of an erase | |
37 | operation. For MMC, "erase_size" is the erase group size | |
38 | reported by the card. Note that "erase_size" does not apply | |
39 | to trim or secure trim operations where the minimum size is | |
40 | always one 512 byte sector. For SD, "erase_size" is 512 | |
41 | if the card is block-addressed, 0 otherwise. | |
42 | ||
43 | SD/MMC cards can erase an arbitrarily large area up to and | |
44 | including the whole card. When erasing a large area it may | |
45 | be desirable to do it in smaller chunks for three reasons: | |
46 | 1. A single erase command will make all other I/O on | |
47 | the card wait. This is not a problem if the whole card | |
48 | is being erased, but erasing one partition will make | |
49 | I/O for another partition on the same card wait for the | |
50 | duration of the erase - which could be a several | |
51 | minutes. | |
52 | 2. To be able to inform the user of erase progress. | |
53 | 3. The erase timeout becomes too large to be very | |
54 | useful. Because the erase timeout contains a margin | |
55 | which is multiplied by the size of the erase area, | |
56 | the value can end up being several minutes for large | |
57 | areas. | |
58 | ||
59 | "erase_size" is not the most efficient unit to erase | |
60 | (especially for SD where it is just one sector), | |
61 | hence "preferred_erase_size" provides a good chunk | |
62 | size for erasing large areas. | |
63 | ||
64 | For MMC, "preferred_erase_size" is the high-capacity | |
65 | erase size if a card specifies one, otherwise it is | |
66 | based on the capacity of the card. | |
67 | ||
68 | For SD, "preferred_erase_size" is the allocation unit | |
69 | size specified by the card. | |
70 | ||
71 | "preferred_erase_size" is in bytes. | |
597dd9d7 | 72 | |
188cc042 LP |
73 | Note on raw_rpmb_size_mult: |
74 | "raw_rpmb_size_mult" is a mutliple of 128kB block. | |
75 | RPMB size in byte is calculated by using the following equation: | |
76 | RPMB partition size = 128kB x raw_rpmb_size_mult |