youyeetoo-yy3568: bump to mainline U-Boot v2026.07 - #10365
Conversation
📝 WalkthroughWalkthroughThe YY3568 board switches from legacy U-Boot to mainline U-Boot v2026.07. The change adds board hardware definitions, configures Armbian image integration, removes legacy board files, updates PCIe lane settings across kernel versions, and sets Rockchip boot-target priority. ChangesYY3568 mainline U-Boot support
Estimated code review effort: 4 (Complex) | ~60 minutes Sequence Diagram(s)sequenceDiagram
participant BoardConfig
participant UBootBuild
participant ImageWriter
participant RockchipBootTargets
BoardConfig->>UBootBuild: select v2026.07 and YY3568 defconfig
UBootBuild->>ImageWriter: produce u-boot-rockchip.bin
ImageWriter->>ImageWriter: write binary at target image offset
BoardConfig->>RockchipBootTargets: set mmc1, nvme, mmc0, scsi, usb, pxe, dhcp
Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 8
🧹 Nitpick comments (3)
patch/u-boot/v2026.07/board_yy3568/0001-board-rockchip-add-Youyeetoo-YY3568-support.patch (1)
427-433: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueRemove the duplicated
&hdmi_soundblock.The same override appears twice.
♻️ Proposed cleanup
+&hdmi_sound { + status = "okay"; +}; -+ -+&hdmi_sound { -+ status = "okay"; -+};🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@patch/u-boot/v2026.07/board_yy3568/0001-board-rockchip-add-Youyeetoo-YY3568-support.patch` around lines 427 - 433, Remove the duplicated &hdmi_sound override so only one block setting status to "okay" remains in the board device-tree changes.config/boards/yy3568.csc (2)
7-8: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value
BOOTCONFIGis assigned twice with the same value.Line 20 sets the same
BOOTCONFIGinsidepost_family_config__yy3568_use_mainline_uboot. Keep one assignment. If you keep only the hook assignment, the top-level line is dead configuration.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@config/boards/yy3568.csc` around lines 7 - 8, Remove the duplicate BOOTCONFIG assignment by keeping only the assignment inside post_family_config__yy3568_use_mainline_uboot; delete the top-level BOOTCONFIG line so there is a single authoritative configuration.
37-42: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick winFail the build if the
BOOT_TARGETSdefine is absent.
sed -ireports success when the pattern does not match. Ifinclude/configs/rockchip-common.hchanges shape in a future U-Boot tag, the boot order silently reverts to the U-Boot default and the diff at Line 41 prints nothing. Add a guard so the mismatch is visible.🔧 Proposed guard
function pre_config_uboot_target__yy3568_patch_rockchip_common_boot_order() { declare -a rockchip_uboot_targets=("mmc1" "nvme" "mmc0" "scsi" "usb" "pxe" "dhcp") # mmc1=SD, mmc0=eMMC display_alert "u-boot for ${BOARD}/${BRANCH}" "u-boot: adjust boot order to '${rockchip_uboot_targets[*]}'" "info" + grep -q '^`#define` BOOT_TARGETS' include/configs/rockchip-common.h || + exit_with_error "BOOT_TARGETS define not found in include/configs/rockchip-common.h for ${BOARD}" sed -i -e "s/#define BOOT_TARGETS.*/#define BOOT_TARGETS \"${rockchip_uboot_targets[*]}\"/" include/configs/rockchip-common.h regular_git diff -u include/configs/rockchip-common.h || true }🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@config/boards/yy3568.csc` around lines 37 - 42, Update pre_config_uboot_target__yy3568_patch_rockchip_common_boot_order to verify that include/configs/rockchip-common.h contains the BOOT_TARGETS define before or while applying the sed replacement. Fail the build with a clear error when the pattern is absent, rather than allowing sed to succeed silently; preserve the existing replacement and diff behavior on a successful match.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@patch/u-boot/v2026.07/board_yy3568/0001-board-rockchip-add-Youyeetoo-YY3568-support.patch`:
- Around line 294-303: Update the pcie_oe_regulator fixed-regulator definition
to resolve the commented-out enable-active-high property: either remove the
stale commented line or enable it, while preserving the intended active-high
polarity consistent with GPIO_ACTIVE_HIGH and the combphy1 clock-buffer
output-enable signal.
- Around line 229-239: The vcc5v0_otg regulator definition uses a different pin
than the vcc5v0_otg_en pinctrl entry and is not consumed. Align its GPIO with
the pin configured by vcc5v0_otg_en, then update usb2phy1_otg to reference
vcc5v0_otg as its OTG supply; otherwise remove the unused regulator and
associated pinctrl configuration.
- Around line 31-33: Update the &pcie3x2 pinctrl-0 assignment to retain the
existing pcie30x2m1_pins phandle and add pcie30x2_reset_h alongside it, ensuring
both the PCIe x2 mux and reset pin are applied.
- Around line 689-691: Correct the bank reference in the led_user_en pinctrl
definition to match the GPIO bank used by led_user, ensuring it muxes GPIO3 pin
RK_PA4 rather than bank 0’s SD card-detect pin. Keep the existing GPIO function
and pin configuration unchanged.
- Around line 80-81: Remove CONFIG_SPL_FIT_SIGNATURE from the YY3568 board
configuration while retaining CONFIG_SPL_LOAD_FIT, since the current patch does
not configure verified FIT boot. Only keep the signature option if the board’s
FIT signing, SPL public-key configuration, and boot pipeline are also added.
- Around line 152-157: Add rk3568-youyeetoo-yy3568.dtb to the upstream Rockchip
device-tree targets in the arm64/rockchip Makefile so
CONFIG_DEFAULT_DEVICE_TREE="rockchip/rk3568-youyeetoo-yy3568" can build it
through OF_UPSTREAM.
- Around line 835-865: Update the gmac0 and gmac1 nodes to configure the
required RGMII timing: add the board-specific tx_delay and rx_delay properties,
or change phy-mode to rgmii-id only if rgmii_phy0 and rgmii_phy1 provide both
delays. Keep the selected configuration consistent for both MACs and preserve
their existing clock, PHY, and pinctrl settings.
- Around line 435-445: Align the PCIe configuration in the device-tree fragment:
update the &pcie2x1 pinctrl setup by adding the matching pinctrl-0 group or
removing pinctrl-names, and configure the enabled &pcie3x2 controller and
&pcie30phy for both routed lanes with num-lanes = <2> and data-lanes = <2 2>.
Remove the unused vcc3v3_pcie30x1 regulator or connect it to the appropriate
PCIe supply.
---
Nitpick comments:
In `@config/boards/yy3568.csc`:
- Around line 7-8: Remove the duplicate BOOTCONFIG assignment by keeping only
the assignment inside post_family_config__yy3568_use_mainline_uboot; delete the
top-level BOOTCONFIG line so there is a single authoritative configuration.
- Around line 37-42: Update
pre_config_uboot_target__yy3568_patch_rockchip_common_boot_order to verify that
include/configs/rockchip-common.h contains the BOOT_TARGETS define before or
while applying the sed replacement. Fail the build with a clear error when the
pattern is absent, rather than allowing sed to succeed silently; preserve the
existing replacement and diff behavior on a successful match.
In
`@patch/u-boot/v2026.07/board_yy3568/0001-board-rockchip-add-Youyeetoo-YY3568-support.patch`:
- Around line 427-433: Remove the duplicated &hdmi_sound override so only one
block setting status to "okay" remains in the board device-tree changes.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 1c4f2a1a-8cab-4718-838a-f0523d887547
📒 Files selected for processing (4)
config/boards/yy3568.cscpatch/u-boot/legacy/u-boot-radxa-rk35xx/defconfig/yy3568-rk3568_defconfigpatch/u-boot/legacy/u-boot-radxa-rk35xx/dt/rk3568-yy3568.dtspatch/u-boot/v2026.07/board_yy3568/0001-board-rockchip-add-Youyeetoo-YY3568-support.patch
💤 Files with no reviewable changes (2)
- patch/u-boot/legacy/u-boot-radxa-rk35xx/defconfig/yy3568-rk3568_defconfig
- patch/u-boot/legacy/u-boot-radxa-rk35xx/dt/rk3568-yy3568.dts
|
✅ This PR has been reviewed and approved — all set for merge! |
Switch the YouYeeToo YY3568 from the Radxa U-Boot fork to upstream U-Boot v2026.07.
This change:
How Has This Been Tested?
https://paste.armbian.com/tobarugowa
https://paste.armbian.com/afolilalol
Checklist
Summary by CodeRabbit
New Features
Bug Fixes
Refactor