81 | | root@jammy-venice:~# mmc extcsd read /dev/mmcblk2 | grep PARTITION_CONFIG |
82 | | Boot configuration bytes [PARTITION_CONFIG: 0x08] |
83 | | root@jammy-venice:~# echo $(($((0x08 >> 3)) & 0x7)) # show bits[5:3] |
84 | | 1 |
85 | | root@jammy-venice:~# echo $(($(( $(mmc extcsd read /dev/mmcblk2 | sed -n 's/.*PARTITION_CONFIG: \(.*\)]/\1/p') >> 3)) & 0x7)) # 1-line version |
86 | | 1 |
87 | | }}} |
88 | | - BOOT_PARTITION_ENABLE is represented by {{{bits[5:3]}}} of PARTITION_CONFIG which can be read from the EXT CSD register 179 named 'PARTITION_CONFIG' (1=boot0, 2=boot1, 7=user) |
| 81 | PARTITION_CONFIG=$(mmc extcsd read /dev/mmcblk2 | grep PARTITION_CONFIG | grep -o "0x[0-9a-fA-F]\+") |
| 82 | BOOT_PARTITION_ENABLE=$(( $(( $((PARTITION_CONFIG)) & 0x38 )) >> 3)) # convert hex to dec and mask off bits[5:3] and shift |
| 83 | case $BOOT_PARTITION_ENABLE in |
| 84 | 1) echo boot0;; # Boot partition 1 |
| 85 | 2) echo boot1;; # Boot partition 2 |
| 86 | 7) echo user;; # User area |
| 87 | esac |
| 88 | }}} |