xref: /linux/Documentation/driver-api/mmc/mmc-dev-parts.rst (revision da1d9caf95def6f0320819cf941c9fd1069ba9e1)
1============================
2SD and MMC Device Partitions
3============================
4
5Device partitions are additional logical block devices present on the
6SD/MMC device.
7
8As of this writing, MMC boot partitions as supported and exposed as
9/dev/mmcblkXboot0 and /dev/mmcblkXboot1, where X is the index of the
10parent /dev/mmcblkX.
11
12MMC Boot Partitions
13===================
14
15Read and write access is provided to the two MMC boot partitions. Due to
16the sensitive nature of the boot partition contents, which often store
17a bootloader or bootloader configuration tables crucial to booting the
18platform, write access is disabled by default to reduce the chance of
19accidental bricking.
20
21To enable write access to /dev/mmcblkXbootY, disable the forced read-only
22access with::
23
24	echo 0 > /sys/block/mmcblkXbootY/force_ro
25
26To re-enable read-only access::
27
28	echo 1 > /sys/block/mmcblkXbootY/force_ro
29
30The boot partitions can also be locked read only until the next power on,
31with::
32
33	echo 1 > /sys/block/mmcblkXbootY/ro_lock_until_next_power_on
34
35This is a feature of the card and not of the kernel. If the card does
36not support boot partition locking, the file will not exist. If the
37feature has been disabled on the card, the file will be read-only.
38
39The boot partitions can also be locked permanently, but this feature is
40not accessible through sysfs in order to avoid accidental or malicious
41bricking.
42