]>
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 | |
dfe86cba AH |
31 | |
32 | Note on Erase Size and Preferred Erase Size: | |
33 | ||
34 | "erase_size" is the minimum size, in bytes, of an erase | |
35 | operation. For MMC, "erase_size" is the erase group size | |
36 | reported by the card. Note that "erase_size" does not apply | |
37 | to trim or secure trim operations where the minimum size is | |
38 | always one 512 byte sector. For SD, "erase_size" is 512 | |
39 | if the card is block-addressed, 0 otherwise. | |
40 | ||
41 | SD/MMC cards can erase an arbitrarily large area up to and | |
42 | including the whole card. When erasing a large area it may | |
43 | be desirable to do it in smaller chunks for three reasons: | |
44 | 1. A single erase command will make all other I/O on | |
45 | the card wait. This is not a problem if the whole card | |
46 | is being erased, but erasing one partition will make | |
47 | I/O for another partition on the same card wait for the | |
48 | duration of the erase - which could be a several | |
49 | minutes. | |
50 | 2. To be able to inform the user of erase progress. | |
51 | 3. The erase timeout becomes too large to be very | |
52 | useful. Because the erase timeout contains a margin | |
53 | which is multiplied by the size of the erase area, | |
54 | the value can end up being several minutes for large | |
55 | areas. | |
56 | ||
57 | "erase_size" is not the most efficient unit to erase | |
58 | (especially for SD where it is just one sector), | |
59 | hence "preferred_erase_size" provides a good chunk | |
60 | size for erasing large areas. | |
61 | ||
62 | For MMC, "preferred_erase_size" is the high-capacity | |
63 | erase size if a card specifies one, otherwise it is | |
64 | based on the capacity of the card. | |
65 | ||
66 | For SD, "preferred_erase_size" is the allocation unit | |
67 | size specified by the card. | |
68 | ||
69 | "preferred_erase_size" is in bytes. | |
597dd9d7 | 70 | |
188cc042 LP |
71 | Note on raw_rpmb_size_mult: |
72 | "raw_rpmb_size_mult" is a mutliple of 128kB block. | |
73 | RPMB size in byte is calculated by using the following equation: | |
74 | RPMB partition size = 128kB x raw_rpmb_size_mult |