Provided by: mmc-utils_0+git20220624.d7b343fd-1ubuntu1_amd64 bug

NAME

       mmc-utils - Configure MMC storage devices from userspace.

SYNOPSIS

       mmc [<command> [<args>]] [--help]

       mmc [<command>] --help

DESCRIPTION

       mmc-utils is a tool for configuring MMC storage devices from userspace.

COMMANDS AND OPTIONS

       help | --help | -h | (no arguments)
              Shows the abbreviated help menu in the terminal.

       extcsd read <device>
              Print extcsd data from <device>.

       writeprotect get <device>
              Determine the eMMC writeprotect status of <device>.

       writeprotect set <device>
              Set  the  eMMC  writeprotect  status  of <device>.  This sets the eMMC to be write-
              protected until next boot.

       disable 512B emulation <device>
              Set the eMMC data sector size to 4KB by disabling emulation on <device>.

       gp create <-y|-n|-c> <length KiB> <partition> <enh_attr> <ext_attr> <device>
              create general purpose partition for the <device>.  Dry-run only unless -y or -c is
              passed.   Use  -c if more partitioning settings are still to come.  To set enhanced
              attribute to general partition being created set <enh_attr> to 1 else set it to  0.
              To set extended attribute to general partition set <ext_attr> to 1,2 else set it to
              0.  NOTE!  This is a one-time programmable (unreversible) change.

       enh_area set <-y|-n|-c> <start KiB> <length KiB> <device>
              Enable the enhanced user area for the <device>.  Dry-run only unless -y  or  -c  is
              passed.   Use -c if more partitioning settings are still to come.  NOTE!  This is a
              one-time programmable (unreversible) change.

       write_reliability set <-y|-n|-c> <partition> <device>
              Enable write reliability per partition for the <device>.  Dry-run only unless -y or
              -c is passed.  Use -c if more partitioning settings are still to come.  NOTE!  This
              is a one-time programmable (unreversible) change.

       status get <device>
              Print the response to STATUS_SEND (CMD13).

       bootpart enable <boot_partition> <send_ack> <device>
              Enable the boot partition for the <device>.  Disable the  boot  partition  for  the
              <device>  with  <boot_partition>  set to 0.  To receive acknowledgment of boot from
              the card set <send_ack> to 1, else set it to 0.

       bootbus set <boot_mode> <reset_boot_bus_conditions> <boot_bus_width> <device>
              Set Boot Bus  Conditions.   <boot_mode>  must  be  "single_backward|single_hs|dual"
              <reset_boot_bus_conditions> must be "x1|retain" <boot_bus_width> must be "x1|x4|x8"

       bkops enable <device>
              Enable  the eMMC BKOPS feature on <device>.  NOTE!  This is a one-time programmable
              (unreversible) change.

       hwreset enable <device>
              Permanently enable the eMMC H/W Reset feature on <device>.  NOTE!  This is  a  one-
              time programmable (unreversible) change.

       hwreset disable <device>
              Permanently  disable the eMMC H/W Reset feature on <device>.  NOTE!  This is a one-
              time programmable (unreversible) change.

       sanitize <device>
              Send Sanitize command to the <device>.  This will delete the unmapped memory region
              of the device.

       rpmb write-key <rpmb device> <key file>
              Program  authentication  key  which  is 32 bytes length and stored in the specified
              file. Also you can specify '-' instead of key file path to read the key from stdin.
              NOTE!  This is a one-time programmable (unreversible) change.

       rpmb read-counter <rpmb device>
              Counter value for the <rpmb device> will be read to stdout.

       rpmb read-block <rpmb device> <address> <blocks count> <output file> [key file]
              Blocks of 256 bytes will be read from <rpmb device> to output file or stdout if '-'
              is specified. If key is specified - read data will be verified. Instead of  regular
              path you can specify
               '-' to read key from stdin.

       rpmb write-block <rpmb device> <address> <256 byte data file> <key file>
              Block  of  256  bytes will be written from data file to <rpmb device>. Also you can
              specify '-' instead of key file path or data file to read the data from stdin.

       cache enable <device>
              Enable the eMMC cache feature on <device>.  NOTE! The cache is an optional  feature
              on devices >= eMMC4.5.

       cache disable <device>
              Disable the eMMC cache feature on <device>.  NOTE! The cache is an optional feature
              on devices >= eMMC4.5.

       <cmd> --help
              Show detailed help for a command or subset of commands.

EXAMPLES

       Program authentication key from stdin:
              echo -n AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHH | mmc rpmb write-key /dev/mmcblk0rpmb -

       Write a block of 256 bytes of data to an rpmb device:
              $    (awk    'BEGIN    {while    (c++<256)    printf    "a"}'     |     echo     -n
              AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHH) | mmc rpmb write-block /dev/mmcblk0rpmb 0x02 - -

       Read a block of 256 bytes of data from an rpmb device to stdout:
                $ echo -n AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHH | mmc rpmb read-block /dev/mmcblk0rpmb
              0x02 2 /tmp/block -

       Read 2 blocks of 256 bytes from rpmb device to /tmp/block without verification:
              $ mmc rpmb read-block /dev/mmcblk0rpmb 0x02 2 /tmp/block