Kernel 4.4.154-81 won't reboot

I made a custom build with the latest kernel, it won’t reboot, seems hanging somewhere. Rebuilt kernel, rebuilt rootfs, rebuilt u-boot, multiple times, the same problem.

Use my old build with 4.4.154-78, was able to reboot in seconds. Upgraded to 4.4.154-81, hanged when rebooting.

Tried reboot, shutdown -r now, init 6, all the same, screen went dark but never came back, had to recycle the power.

Something changed in between -78 and -81 cause the issue. I’d wait for your answer before finishing my custom build.

The suspicious checkins:

  1. adjust sdio clock frequency to avoid sdio write error for rockpi4
  2. arm64: rockchip_linux_defconfig: add can drivers module
  3. arm64: rockchip_linux_defconfig: enable nfsd module

I bet it’s the first one.

2 Likes

@Stephen I proved it, the first checkin caused the problem.

I swapped out the device tree in extlinux.conf, using kernel 81 with device tree 78, the system rebooted.

Without the change, kernel takes longer time to go down (I guess it’s busy to logging the writing errors), but it DOES come back.

I don’t know the capability of the chip, but SDIO runs at 200MHz with 4 bits width sounds a little too much (Raspberry Pi SDIO runs at 25MHz with 1 bit width)

EDIT:
I see, the settings are compliant to SDR104 (208MHz/4 bit bus), but even my SanDisk Extreme Pro (170MB/s read, 90MB/s write A2) has issue, I don’t think it would work with other cards in the market.

The 4 cards I’ve tested (PNY is a slow card I purchased for testing):

3 Likes

@O635789,

You are right. I think the reason is the attribute sd-uhs-sdr104 for node sdmmc.

I have tested the system image with the newest version of kernel on uSD instead of eMMC module.
It shows that system can reboot on uSD card.

By the way, the kernel package is updated too. Maybe you can test it also.

3 Likes

Tested and works on the fastest and slowest cards! Good job, fast and clean!

Actually here is a post about the same issue:

Now I’m curious how could get sdr104 working in Debian, since Armbian has enabled it, I’ll give the solution a shot anyway, as long as it reboots, even if it downgrads unless a cold restart, it’s still better.

OK, adjust sdhci or not, once enabled sd-uhs-sdr104, rebooting stuck. So for now I’ll stick to the slow card :frowning: