On 4/26/24 7:36 PM, Tim Harvey wrote:
On Fri, Apr 26, 2024 at 10:25 AM Marek Vasut <ma...@denx.de> wrote:

On 4/26/24 7:12 PM, Tim Harvey wrote:
eMMC devices have hardware partitions such as user, boot0, and boot1.
Allow these names to be displayed when reading the mmc PARTITION_CONFIG
field via 'mmc partconf'. Additionally allow a name to be specified when
setting the PARTITION_CONFIG.

Before:
u-boot=> mmc partconf 2 1 1 0 && mmc partconf 2
EXT_CSD[179], PARTITION_CONFIG:
BOOT_ACK: 0x1
BOOT_PARTITION_ENABLE: 0x2
PARTITION_ACCESS: 0x0

After:
u-boot=> mmc partconf 2 1 1 0 && mmc partconf 2
EXT_CSD[179], PARTITION_CONFIG:
BOOT_ACK: 0x1
BOOT_PARTITION_ENABLE: 0x1 (boot0)
PARTITION_ACCESS: 0x0
u-boot=> mmc partconf 2 1 boot1 0 && mmc partconf 2
EXT_CSD[179], PARTITION_CONFIG:
BOOT_ACK: 0x1
BOOT_PARTITION_ENABLE: 0x2 (boot1)
PARTITION_ACCESS: 0x0

Signed-off-by: Tim Harvey <thar...@gateworks.com>
---
v2:
   - fix typo in subject
   - add names for gp1..gp4
---
   cmd/mmc.c | 25 ++++++++++++++++++++++---
   1 file changed, 22 insertions(+), 3 deletions(-)

diff --git a/cmd/mmc.c b/cmd/mmc.c
index 2d5430a53079..af9a66cc6df4 100644
--- a/cmd/mmc.c
+++ b/cmd/mmc.c
@@ -14,6 +14,18 @@
   #include <part.h>
   #include <sparse_format.h>
   #include <image-sparse.h>
+#include <linux/ctype.h>
+
+static const char *mmc_partnames[] = {
+     "user",
+     "boot0",
+     "boot1",
+     "gp1",
+     "gp2",
+     "gp3",
+     "gp4",

Uh, maybe gp%d are indexed from zero too ?

(sorry for the confusion)

but 'mmc hwpartition' does not list them 0 based:
u-boot=> mmc hwpartition
switch to partitions #0, OK
mmc2(part 0) is current device
Partition configuration:
         No enhanced user data area
         No GP1 partition
         No GP2 partition
         No GP3 partition
         No GP4 partition

I'm ok with either, I'm just not sure what is more understandable and standard.

Then 1-based counting is OK, thanks for checking !

Reply via email to