Skip to content

Odroid HC1 does not boot on 6.1.y and 6.6.y kernels #437

Open

Activity

  1. mdrjr commented on Jul 11, 2024

    @mdrjr
    Collaborator

    What defconfig you used? what gcc you used? what u-boot...
    Please don't truncate the boot log

  2. polyzen commented on Jul 12, 2024

    @polyzen
    Author
  3. polyzen commented on Jul 12, 2024

    @polyzen
    Author

    Unrelated, but could you confirm the kernel built from the odroid-6.6.y branch should be used for N2 devices as well? That would mean https://github.com/archlinuxarm/PKGBUILDs/tree/master/core/linux-odroid-n2 could be removed.

    Edit: Unless perhaps they should use the generic https://github.com/archlinuxarm/PKGBUILDs/tree/master/core/linux-armv7

  4. mdrjr commented on Jul 17, 2024

    @mdrjr
    Collaborator

    Yes, we are using odroid-6.6.y for C4 Series, N2 Series and XU4.
    I can't reproduce your issue with HC1 using odroid-6.6.y branch.

  5. wickner-consid commented on Jul 17, 2024

    @wickner-consid

    @bwcknr and/or @kyak, could you provide the logs requested?

    Sure, here you go!

    @mdrjr thanks for still supporting the eol'ed platform

    *edit: attached the log, sorry had a long day
    hc1_dump.txt

  6. kyak commented on Jul 27, 2024

    @kyak

    @bwcknr and/or @kyak, could you provide the logs requested?

    Sure, here you go!

    @mdrjr thanks for still supporting the eol'ed platform

    *edit: attached the log, sorry had a long day hc1_dump.txt

    My HC1 refuses to boot with exact same error (won't duplicate logs).

  7. polyzen commented on Aug 8, 2024

    @polyzen
    Author

    I learned how to properly use defconfig's now 😅. Please try linux-odroid-xu3 6.6.44-1 @wickner-consid @kyak

    What defconfig you used?

    odroidxu4_defconfig. Previously I had copied the defconfig rather than using make ARCH=arm odroidxu4_defconfig, and during the build I had to provide some decisions when prompted for some configurations options. I had used the other kernel configs in https://github.com/archlinuxarm/PKGBUILDs/tree/master/core to fill in those answers. With a fresh .config created with make ARCH=arm odroidxu4_defconfig, now I only had to adjust CONFIG_LOCALVERSION.

  8. polyzen commented on Aug 8, 2024

    @polyzen
    Author

    The package config had also been missing these changes:
    5776281
    b9e3e21

  9. graysky2 commented on Sep 2, 2024

    @graysky2

    @mdrjr -

    Yes, we are using odroid-6.6.y for C4 Series, N2 Series and XU4.
    I can't reproduce your issue with HC1 using odroid-6.6.y branch.

    Do you know if this branch will work with the C1 or C2?

  10. Basanites commented on Oct 2, 2024

    @Basanites

    @bwcknr and/or @kyak, could you provide the logs requested?

    Sure, here you go!

    @mdrjr thanks for still supporting the eol'ed platform

    *edit: attached the log, sorry had a long day hc1_dump.txt

    Sadly I have to report the issue on the current kernel too.
    This is my HC1 crash log on 6.6.50-3: kernel_panic.log
    The issue seems to lie in the same function as before, at least the virtual address, *pgd and *pmd are all the same.
    I would be happy to try and debug if you can give me any pointers.

    In the meantime, could somebody point me in the right direction on how to compile a working kernel from an x86 system 😅 ?

  11. kyak commented on Oct 2, 2024

    @kyak

    In the meantime, could somebody point me in the right direction on how to compile a working kernel from an x86 system 😅 ?

    If you need any kernel, then regular linux-armv7 on Arch Linux ARM works fine for me.

    This vendor kernel still doesn't work for me (same crash as your's).

  12. Basanites commented on Oct 2, 2024

    @Basanites

    Ah nice, thanks for the super quick reply and info! (and sorry for the ping, forgot you would be notified from the quote)

    If you need any kernel, then regular linux-armv7 on Arch Linux ARM works fine for me.

    Follow up to that:
    Is there any way you can recommend to me, to get that installed on my board? I full on can't boot right now and don't have a backup which includes the kernel.

    Do you know of any way or just suck it up and reinstall from scratch with the linux-armv7 package?

  13. mdrjr commented on Oct 2, 2024

    @mdrjr
    Collaborator

    One question, are you guys using xu4 dtb or hc1 dtb?

  14. Basanites commented on Oct 2, 2024

    @Basanites

    One question, are you guys using xu4 dtb or hc1 dtb?

    How can I check?
    I am running this package https://archlinuxarm.org/packages/armv7h/linux-odroid-xu3 on arch linux arm if that helps already.

  15. kyak commented on Oct 2, 2024

    @kyak

    Do you know of any way or just suck it up and reinstall from scratch with the ´linux-armv7´ package?

    Well, I just plugged the SD card to laptop and overwrote broken zImage with the one from linux-armv7 package. As soon as it booted, I installed linux-armv7 package properly.

  16. Basanites commented on Oct 2, 2024

    @Basanites

    Thanks a ton! The kernel now loads but systemd refuses to run because I have systemd.unified_cgroup_hierarchy=0 because docker was not running under the old kernel otherwise.

    To not go any further offtopic, thank you so much @kyak and if I can be of any further help just give me a ping @mdrjr

    Edit: if anybody stumbles onto this from Google. Here is how I got back to a running system afterwards. Fixing the systemd issue requires unplugging your sd card, plugging it into your (linux) PC, navigating to boot, removing the offending parameters and running sudo mkscr. Iirc this was a fix for docker when the odroid kernel was stuck on 4.7 or something alike and the linux-armv7 package did not work. With the current kernel docker works fine.
    With that out of the way I was able to boot, but ethernet did not work. For that I copied all files from the linux-armv7 package to my SD card, removed the old mkinitcpio preset, booted the device, ran sudo mkinitcpio -P and rebooted (not sure if these two steps are actually necessary). To fix the missing kernel modules I ran sudo modprobe -c and another sudo mkinitcpio -P. After one last reboot everything was up and running smoothly again, allowing me to truly install the linux-armv7 package and update the remaining system.

  17. kyak commented on Mar 2, 2025

    @kyak

    I just gave it a try with 6.6.68-1-odroid-xu3-ARCH (linux-odroid-xu3 of archlinuxarm), and it still doesn't boot on HC1.

    Here is the complete log: screen.log

    Can we resurrect this issue? I'll be happy to provide any other information.

  18. kyak commented on Mar 2, 2025

    @kyak

    As a matter of fact, i just tried booting armbian's kernel build for odroid xu4 from here: https://stpete-mirror.armbian.com/apt/pool/main/l/linux-6.6.75/

    It's kernel 6.6.75 and it boots fine (not only boots, but I'm actually running it right now with Arch userland).

    I'm now quite sure this is a packaging issue in Arch Linux ARM. I will create issue there.

    Edit: It's not clear at all where to report issues for Arch Linux ARM packaging. @polyzen can you please help?

    Attached is armbian's kernel config: config-6.6.75-current-odroidxu4.txt

  19. polyzen commented on Mar 2, 2025

    @polyzen
    Author

    @kyak https://github.com/archlinuxarm/PKGBUILDs

    That might be the equivalent of the linux-armv7 package. The branch the linux-odroid-xu3 package uses is currently still at 6.6.68:
    https://github.com/hardkernel/linux/commits/odroid-6.6.y/

  20. kyak commented on Mar 3, 2025

    @kyak

    @kyak https://github.com/archlinuxarm/PKGBUILDs

    That might be the equivalent of the linux-armv7 package. The branch the linux-odroid-xu3 package uses is currently still at 6.6.68: https://github.com/hardkernel/linux/commits/odroid-6.6.y/

    @polyzen

    Armbian builds various kernels. The one I've tried is built from hardkernel's tree specifically for odroid xu4: https://github.com/armbian/build/blob/main/config/sources/families/odroidxu4.conf

    Please also have a look at https://www.armbian.com/odroid-xu4/

    So it is not an equivalent of linux-armv7 from Arch.

  21. polyzen commented on Jul 24, 2025

    @polyzen
    Author

    Armbian builds various kernels. The one I've tried is built from hardkernel's tree specifically for odroid xu4: https://github.com/armbian/build/blob/main/config/sources/families/odroidxu4.conf

    Seems they apply more patches as well.

    Haven't wrapped my head around how https://github.com/armbian/build works yet. Seems they don't have kernel sources sitting around I could use, unless maybe there are in some artifacts from their build pipeline.

  22. polyzen commented on Jul 25, 2025

    @polyzen
    Author

    @kyak here's a build of 6.6.93 until archlinuxarm/PKGBUILDs#2134 is merged:
    https://pkgbuild.com/~polyzen/packages/linux-odroid-xu3-6.6.93-1-armv7h.pkg.tar.zst
    Edit: Also uploaded https://pkgbuild.com/~polyzen/packages/linux-odroid-xu3-headers-6.6.93-1-armv7h.pkg.tar.zst if anyone needs that.

    Doubt it fixes the issue for you. Seems either it's a kernel config issue or something about dtb as @mdrjr said.

  23. added a commit that references this issue on Sep 9, 2025
  24. kyak commented on Feb 9, 2026

    @kyak

    I'll share some updates here.

    1. As mentioned, I've switched to Armbian's kernel and been using version 6.6.75 for the time being. Unfortunately, I can't keep using it, because it doesn't support LandLock mechanism required by pacman. As a workaround, I could've run pacman with --disable-sandbox, but I didn't.
    2. I've upgraded to Armbian's kernel version 6.6.113. It doesn't boot, failing to find my root device (it is SATA, specified by uuid). Not sure what is wrong with this kernel. Version 6.6.75 had no problem finding my root.
    3. I've tried again odroid-xu3 kernel as packaged by Arch, this time version 6.6.119. It doesn't boot and crashes in a similar manner as described previously. Nothing has changed.
    4. The only working kernel for HC1 is now Arch's linux-armv7: it doesn't crash, it find my root partition and supports LandLock. It comes with downsides, though: it doesn't support reboot (will hang in there forever, needs a power cycle) and it doesn't seem to properly handle power saving. The temperatures of disk and CPU are measurably higher than in vendor's kernel.

    Anyway, I've abandoned the hope here and just documenting for people who might still be using HC1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions