Comment 0 for bug 1333140

Revision history for this message
seshagiri (seshagiri-holi) wrote : change udev rules for rpmb partitions

As per JESD 4.5 spec for eMMC devices,
There is a new partitions as part of eMMC storage devices it self. (Further details please refer eMMC spec)

*In Linux Kernel@ 3.10.33, mmc driver has created a new partitions with "mmcblkXrpmb" if device expresses it support of RPMB.

Issues observed:

issue 1:
RPMB (Replay Protected Memory Block), A signed access to a Replay Protected Memory Block is provided. This function provides means for the system to store data to the specific memory area in an authenticated and replay protected manner.
In that case, any read/write access to this partition device will report errors.

issue 2:
The by-path, line is wrongly mapping to platform-sdhci-tegra.1 -> mmcblk2rpmb were as
it should be platform-sdhci-tegra.1 -> mmcblk2

ls -l /dev/disk/by-path/
total 0
lrwxrwxrwx 1 root root 17 Jan 3 2000 platform-sdhci-tegra.1 -> ../../mmcblk2rpmb
lrwxrwxrwx 1 root root 15 Jan 3 2000 platform-sdhci-tegra.1-part1 -> ../../mmcblk2p1
lrwxrwxrwx 1 root root 13 Jan 3 2000 platform-sdhci-tegra.2 -> ../../mmcblk1
lrwxrwxrwx 1 root root 15 Jan 3 2000 platform-sdhci-tegra.2-part1 -> ../../mmcblk1p1
lrwxrwxrwx 1 root root 17 Jan 3 2000 platform-sdhci-tegra.3 -> ../../mmcblk0rpmb
lrwxrwxrwx 1 root root 15 Jan 3 2000 platform-sdhci-tegra.3-part1 -> ../../mmcblk0p1
lrwxrwxrwx 1 root root 15 Jan 3 2000 platform-sdhci-tegra.3-part2 -> ../../mmcblk0p2

We have locally resolved in our platform in this file 60-persistent-storage.rules

For issue 1: (with this rule)
# skip block read for partitions of type rpmb
KERNEL=="mmcblk[0-9]rpmb", SUBSYSTEM=="block", GOTO="persistent_storage_end"

For issue 2:
ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", KERNEL=="mmcblk[0-9]rpmb", SYMLINK+="disk/by-path/$env{ID_PATH}-rpmb"
ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", KERNEL!="mmcblk[0-9]rpmb", SYMLINK+="disk/by-path/$env{ID_PATH}"

Please consider this issues fix in next udev release .