[Solved] ODROID C1+ not booting after kernel upgrade

Creating a bug report/issue

Required Information

  • DietPi version | 8.21.1
  • Kernel version | 6.1.50
  • SBC model | Odroid c1+
  • Power supply used | 5V 1A USB-OTG
  • SD card used | SanDisk max endurance 64GB

Hi together, since last weekend my old odroid c1+ was working very well with old armbian edge as well as armbian current kernel. After kernel upgrade via apt to the new current kernel (6.1.50 ??? ) this weekend the device is not booting anymore. Since a fresh Diet-PI installation does kernel upgrade from armbian at the beginning as well via dist-upgrade I´am somehow stuck. Would a change of apt sources to a former armbian build help ? How can I prevent the kernel upgrade at the beginning until we have a new booting kernel for odroid c1+ Thank you and best regards Oskar…

As a quick workaround I removed link in apt sources to https://apt.armbian.com/ in dietpi-armbian.list after stopping the script running after the first logon. Now I can boot again to kernel 5.15.93. Which is not optimal but ok for me until it can be figured out why the new compiled armbian kernels are not working anymore. Best regards…Oskar

Many thanks for reporting. Huh, the Armbian APT repo is finally shipping updates again? I was already worried and we started to ship own 64-bit Rockchip kernel builds as the repo did not ship any updates since February.

Indeed Linux 6.1.50 for a bunch of SoCs: armbian storage

That this breaks the C1+ is of course a problem. Do you have a serial console to check for bootloader and early kernel logs? Is there any output on HDMI or nothing?

Sadly I only have 64-bit Amlogic SBCs here.

Since there is a known issues with some Odroids with warn reboots. Power cycling does not help in your case?

While there is no official maintainer for C1/C1+, a community member fixed HDMI output and did some commits some months ago, so I had hope that will gets again better supported and maintained, but that seems to have been a onetime contribution only. At least what I can see is that the kernel still has a device tree for the Odroid C1.

Hi Micha, yep armbian is definitely shipping kernel updates. Unfortunately I have no serial console → I´ll try to get one. HDMI at least seems to send a signal but my 4k monitor can not sync. Power cycling does not help when trying to boot. The blue led stays on. I downloaded and installed kernel 6.1.11 edge from Index of /apt/pool/main/l/linux-6.1.11-meson/ which is working perfectly (besides the known reboot problem). This seems to be the last know booting kernel…For the odroid dietpi Image removing armbian from apt sources for me is a workaround I can live with…Thank you and best regards from Dresden/Germany Oskar

1 Like

At least a 6.1 version. I’m still trying to figure out how to explicitly build an older Linux version with Armbian build system, if possible, to find out what it is caused by an upstream change or one of the build system itself.

I have run into a problem this weekend upgraded my 4 Odroid C1 units, only one of the four reboots and runs 8.21.1 with apparently no issue. of the other three I used a backup image and downgraded them then re-ran the upgrades and it still happens. goes through the install, does a reboot. (which i have to power cycle) and when it powers back up there is no heartbeat (blue LED).
I have been working all night and am now to the point I imaged the working unit and am going to flash that image to one of the others and see if it works.
one of the units is a dedicated speed tester with grafana on it and i’d like to not have to rebuild that from scratch if I can somehow get the update to work instead.
will report back after i reimage one with the image from the one that works.

ok. progress.
I imaged unit #3 which was the working unit with 8.21.1 running.
i flashed that image on to unit #2, and after a couple reboots was able to find it in my router’s DHCP list and I was able to putty into it to change it’s name. i then did a poweroff from putty, then physically powered it off and back on and it worked again and I was able to putty in without issue on the first try.

then i flashed unit #1 with the #3 image and it booted fine on first try. i was able to find the IP and putty into it to change the name without issue. i did a poweroff from putty, then a physical power off and on and reconnected via putty. So now 3 of the 4 are working apparently so far.

the thing i noticed early on was that #3 had meson files in the boot partition that were at 5.15.93 while the ones that did not boot #1 #2 & #4 all had meson files of 6.10.something.

one of the first things I tried doing was copying the boot directory from #3 to #4 and it does boot but it says on every boot that a reboot is needed due to a kernal update. if I keep rebooting I keep getting the same reboot is needed message. but at this point #4 is no longer booting and grabbing an IP.

i grabbed a C1+ that was still running 8.20.0 and did the update to 8.21.1 and afterwards it failed to boot.
so i reflashed it with the image from C1 #3 and it took that and booted and logged in and changed the name ok. so it’s running 8.21.1 from the C1 #3 image.

i grabbed a C2 that was still running 8.20.0 and did the update to 8.21.1 and it rebooted just fine into 8.21.1.
so it seems like the issue is only with the C1 and C1+ model odroids so far. i still have an XU4 and C4 that i have not upgraded to latest yet. gonna hold off on them for now.

Could someone please test the latest “edge” kernel, with Linux 6.4.13?

apt install linux-{image,dtb}-edge-meson

With next DietPi update (released tomorrow), we do:

  • Ping “current” and “edge” kernel packages to Armbian v23.02.2, being the latest version known to be functional on the C1. Hence the apt upgrade implied with the dietpi-upgrade will upgrade the kernel, dtb and in case headers to this version.
  • In case enforce an automated downgrade. This is to cover cases where someone ran an apt upgrade and afterwards a dietpi-update without rebooting first.
  • Afterwards those packages are set on hold. This is to assure that, when v23.02.2 packages are removed from the repo, which makes the pin ineffective, the packages are not upgraded.

However, I hope we find a newer kernel version which does work. I currently do not have much time for this, but might try an unmodified mainline kernel build next development cycle, in case the problem is caused by one of Armbian’s patches instead of upstream changes.

i was just hoping the information i could gather would be of some help to you geniuses, i’m barely hanging on making the SBCs do useful things. that being said, do you want me to run that apt command line on one of my working C1/C1+ and report the results? what should I expect to happen?
I’m still trying to figure a way to salvage the Speed Test unit that won’t boot without having to rebuild it from scratch, but I’m thinking I’m gonna have to .

Hi, unfortunatly install kernel 6.4.13 via apt install linux-{image,dtb}-edge-meson is not booting. I will try the other new kernels from the beta mirror Index of /beta/pool/main/l/ now…I´ll post results here…Best regards Oskar

Results:
The kernels from the beta mirror are not booting either. So till now for me the last booting kernel for odroid c1 is 6.1.11…
I tried to update from dietpi 8.21 to dietpi 8.22.2 beta in order to test the new patch v8.22 · MichaIng/DietPi@6ccef11 · GitHub . But since dietpi-update does an update of the kernel in the beginning which requires an immediate reboot during apt-upgrade we still can not boot if upgraded from 8.21. The only current solution at the moment seems to remove https://apt.armbian.com/ from apt sources to prevent the kernel upgrade…

Good news: with the “released” dietpi-version 8.22.3 and update from 8.21.1 everything is working fine now. I had to uncomment the apt link to https://apt.armbian.com/ in dietpi-armbian.list before the update. Otherwise dietpi-update gives an error. Thanks a lot and best regards…Oskar