OdroidC2 v9.6 Upgrade Fail | unable to read partition table

Creating a bug report/issue

I have searched the existing open and closed issues

Required Information

  • DietPi version | v9.6
  • Distro version | echo $G_DISTRO_NAME $G_RASPBIAN
  • Kernel version | uname --all
  • Architecture | dpkg --print-architecture
  • SBC model | Odroid C2
  • Power supply used | 5V 2A or microUSB
  • SD card used | Gigastone 32GB

Additional Information (if applicable)

  • Software title | N/A
  • Was the software title installed freshly or updated/migrated? | N/A
  • Can this issue be replicated on a fresh installation of DietPi? | Yes

← If you sent a “dietpi-bugreport”, please paste the ID here →

  • Bug report ID | N/A

Steps to reproduce

  1. Upgrade OdroidC2 from v9.5 to v9.6
  2. Reboot

Expected behaviour

  • Boots

Actual behaviour

  • Fails to boot
  • Error received = mmcblk0: unable to read partition table

Extra details

  • Existing device at 9.5
  • See there is new release of 9.6
  • Run dietpi-upgrade
  • Upgrade finished, requests a reboot
  • Reboot
  • Device goes dark, can’t ping
  • Remove power, Connect to UART
  • Cycle power, see repeating error during boot → mmcblk0: unable to read partition table
  • Removed SDcard, set aside
  • Get new SDCard, flash with latest OdroidC2 image (DietPi_OdroidC2-ARMv8-Bookworm.img.xz)
  • Insert in device and Boot
  • Device auto-runs dietpi-update and reboots
  • Remove power
  • Connect UART, cycle power
  • See repeating error again during boot → mmcblk0: unable to read partition table

Boot log fresh SDcard with fresh install: OdroidC2-Boot_Error - Pastebin.com
Boot log of original SDcard with upgrade: OdroidC2-Upgrade_Error - Pastebin.com

Other info:
Flashed SDCard with fresh install, forced failure of dietpi-update by removing ethernet. Tried to restore original image with dietpi-backup. Restored but has new kernel and request for reboot. :frowning:
Bad on me for not realizing the dietpi-update makes a backup. I am stuck without a clean backup.

Any tips?

@MichaIng can you have a look please

:sparkler: I found my own solution. :sparkler:

The fix: Revert meson-gxbb-odroidc2.dtb back to ‘dtb-6.6.32-current-meson64’ version.

The explanation:
The DTB in v9.6 appears to included the following fix to a reboot issue. See link below

The link describes and the DTB in the v9.6 includes the following GPIO device tree gpios input updated

gpio-regulator-tf_io {
                compatible = "regulator-gpio";
                regulator-name = "TF_IO";
                regulator-min-microvolt = <0x1b7740>;
                regulator-max-microvolt = <0x325aa0>;
                gpios = <0x39 0x03 0x00>;
                gpios-states = <0x00>;
                states = <0x325aa0 0x00 0x1b7740 0x01>;
                vin-supply = <0x3a>;
                phandle = <0x28>;

gpios = <0x39 0x03 0x00>; becomes gpios = <0x39 0x03 0x06>;
0x00 → 0x06

On my device, this was preventing the device to from boot from the SD. I don’t know why. Reverting the line back to 0x00 fixes the problem.

In my case I took the original SDCard and manually copied the meson-gxbb-odroidc2.dtb file from the DietPi_OdroidC2-ARMv8-Bookworm.img.xz image onto the SDCard

Since no one else reported any issue with this reboot fix: Could you try to revert only his one change in the device tree, otherwise use the very same kernel? Probably it is another change, not that one.

I initially verified by taking the v9.5 image DietPi_OdroidC2-ARMv8-Bookworm.img.xz and not making any updates. That image I am unable to reboot with the roboot command, but with a power cycle the unit will boot just fine.

I took that image and made only the DTB reboot fix update (changing 0x00 to 0x06). With only that change, I was unable to boot after a power cycle. mmcblk0: unable to read partition table error

I went back to a fresh v9.5 image but this time I did a apt update && apt upgrade; the new DTB is loaded. Before rebooting or power cycling, I reverting the DTB reboot fix (reverting 0x06 to 0x00). Power cycled and the unit boots.

I took the upgraded image and update the DTB (0x00 to 0x06) and power cycled; unable to boot.

The original SDCard that had been upgraded from v9.5 to v9.6 would not boot until I reverted the DTB. Once reverted, I can boot from the SDCard without issue and running v9.6. reboot command still doesn’t work, but I can live with that.

HI folks,
i run a C2 too, the update was working great, since 9.5 my Odroid reboots without issues
( as described, i had to pull the powercord before ), i did not get any issues with 9.6…
As far a as i remember i had to reboot after the update to 9.6, but no issues.
I disabled UART right from the start, maybe that’s a point?

Greets, Tom

Well, but darn. Perhaps this is unique to my device or SDCard.

If I discover anything of merit, I’ll post back. Else consider this bunked.

I forgot to say that i don’t use a SD-Card, i run an EMMC-Modul.
That could be another thing to try if you have one…

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.