Skip to content

u-boot: S922X: mainline u-boot v2026.07 - #3441

Closed
porschemad911 wants to merge 5 commits into
ROCKNIX:nextfrom
porschemad911:s922x-u-boot-v2026.07
Closed

porschemad911 wants to merge 5 commits into
ROCKNIX:nextfrom
porschemad911:s922x-u-boot-v2026.07

Conversation

@porschemad911

@porschemad911 porschemad911 commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Summary

u-boot: S922X: mainline u-boot v2026.07

Testing

Tested ok on my OGU, tested ok on @ddrsoul's OGU: https://discord.com/channels/948029830325235753/1035228339952160878/1557020565393510411

Additional Context

Migrate from BSP u-boot to mainline


AI Usage

Did you use AI tools to help write this code? NO

@porschemad911
porschemad911 force-pushed the s922x-u-boot-v2026.07 branch 3 times, most recently from 1b1bb7a to ad3d7bf Compare October 8, 2026 03:53
@ShigeakiAsai

Copy link
Copy Markdown
Contributor

SD card reads fail after a reboot from Linux (OGU, U-Boot 2026.07)

I'm moving Lakka's ODROID-GO Ultra build to mainline U-Boot 2026.07 as well, and hit this on the OGU.

Symptom

After a reboot from Linux, U-Boot reads extlinux.conf, then fails on the kernel with Error reading cluster. Every read after that fails (No partition table - mmc 0), and it drops to the U-Boot prompt. A cold boot is fine.

Cause

Linux sets vddio_c (RK818 LDO9, the vqmmc supply of the SD card) to 3.0V:

vddio_c                   3000mV   (1800-3300mV)
   ffe05000.mmc-vqmmc     3000mV  3300mV

It is still at 3.0V when U-Boot starts after a reboot. At the U-Boot prompt:

=> pmic dev pmic@1c
=> pmic read 0x54
0x54: 0x6c                 <- LDO9 = 3.0V
=> mmc read 0x1000000 0 1
MMC read: dev # 0, block # 0, count 1 ... 0 blocks read: ERROR
=> pmic write 0x54 0x6f    <- 3.3V
=> mmc rescan
=> mmc read 0x1000000 0 1
MMC read: dev # 0, block # 0, count 1 ... 1 blocks read: OK

Whether reads fail at 3.0V probably depends on the card; mine is a SanDisk 64GB. I haven't seen this with the vendor U-Boot or with 2025.07.

Also, U-Boot's rk8xx regulator driver only describes RK818 LDO1-8, so the regulator command can't read or set vddio_c (it shows 0 uV / disabled).

Fix

Two small patches on top of 2026.07:

  1. power: regulator: rk8xx: add RK818 LDO9 support
    LDO9's enable bit is bit 5 of DCDC_EN (sleep: SLEEP_SET_OFF1), and its voltage is in BOOST_LDO9_ON/SLP_VSEL (1.8-3.4V, 100mV steps).
  2. arm: dts: meson-g12b-odroid-go-ultra-u-boot: set vddio_c to 3.3V
    regulator-init-microvolt = <3300000>, like the existing vcc_2v3 and vdd_ee entries.

With both, 9 reboots in a row (from RetroArch and reboot) all booted.

Lakka commits:

Feel free to use them. I worked through this with Claude's help.

Thanks,
Asai, Shigeaki

…ot-628b59812c867fd27912fddde24b83fda566d825"

This reverts commit 9ba898b, reversing
changes made to acfe650.
…ot-cleanup"

This reverts commit 379856b, reversing
changes made to e181700.
@porschemad911
porschemad911 force-pushed the s922x-u-boot-v2026.07 branch from ad3d7bf to 910c1c9 Compare October 9, 2026 04:01
@porschemad911

porschemad911 commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor Author

Replaced by #3474

@porschemad911
porschemad911 deleted the s922x-u-boot-v2026.07 branch October 9, 2026 05:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants