Skip to content

Conversation

@rbqvq
Copy link

@rbqvq rbqvq commented Oct 26, 2025

Description

Add support for the ninetripod x3568 v4 support

How Has This Been Tested?

I have built current and edge image based on trixie for the board locally, it boots and worked fine.

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • Any dependent changes have been merged and published in downstream modules

Notes:

Linux mainline upstreaming...
U-Boot upstreaming pending

@github-actions github-actions bot added the size/large PR with 250 lines or more label Oct 26, 2025
@github-actions
Copy link
Contributor

Hey @rbqvq! 👋

Thanks for submitting your first pull request to the Armbian project — we're excited to have you contributing! 🧡
Your effort doesn’t just improve Armbian — it benefits the entire community of users and developers.

If you'd like to stay informed about project updates or collaborate more closely with the team,
you can optionally share some personal contact preferences at armbian.com/update-data.
This helps us keep in touch without relying solely on GitHub notifications.

Also, don’t forget to ⭐ star the repo if you haven’t already — and welcome aboard! 🚀

@github-actions github-actions bot added 11 Milestone: Fourth quarter release Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... Patches Patches related to kernel, U-Boot, ... labels Oct 26, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 26, 2025

Walkthrough

A new board configuration file for NineTripod X3568 v4 (Rockchip RK3568) is introduced, establishing mainline U-Boot integration with specific boot parameters, DDR and BL31 blob definitions, and U-Boot target mapping. The configuration includes post-family functions that enable mainline U-Boot setup and configure persistent network interface naming via udev rules for the board's NICs. Runtime alerts are included for status messaging during these operations.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Board-specific U-Boot configuration (BOOTCONFIG, BOOTSOURCE, BOOTBRANCH, BOOTPATCHDIR, UBOOT_TARGET_MAP) requires verification against NineTripod X3568 v4 specifications and mainline U-Boot v2025.10 compatibility
  • write_uboot_platform() helper function implementation and seek offset parameters need validation
  • Udev rules in post_family_tweaks__x3568_v4_udev_network_interfaces() should be verified for proper network interface naming
  • Cross-reference with similar Rockchip board configurations to ensure consistency with established patterns

Possibly related PRs

Suggested labels

Work in progress

Suggested reviewers

  • rpardini
  • paolosabatino
  • krachlatte
  • prahal
  • clee
  • pyavitz
  • igorpecovnik

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The pull request title "rockchip: add ninetripod x3568 v4 support" is directly related to the main change in the changeset, which introduces a new board configuration file for the NineTripod X3568 v4 (Rockchip RK3568) device. The title is concise, clear, and specific, accurately summarizing the primary change without vague language, noise, or file listings. It follows standard naming conventions and clearly indicates the action (adding support) and the target (ninetripod x3568 v4).
Description Check ✅ Passed The pull request description is clearly related to the changeset, stating the objective of adding support for the ninetripod x3568 v4 board, which aligns with the new board configuration file introduced in this PR. The description includes testing information indicating the board was validated to boot and work with current and edge images, as well as notes on the upstreaming status of Linux and U-Boot components. While concise, the description provides sufficient context and is not vague or off-topic.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Jira integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 6cb8cb3 and 38c85a6.

⛔ Files ignored due to path filters (9)
  • patch/kernel/archive/rockchip64-6.12/dt/rk3568-ninetripod-x3568-v4.dts is excluded by !patch/**
  • patch/kernel/archive/rockchip64-6.12/overlay/Makefile is excluded by !patch/**
  • patch/kernel/archive/rockchip64-6.12/overlay/rk3568-ninetripod-x3568-v4-camera-demo.dtso is excluded by !patch/**
  • patch/kernel/archive/rockchip64-6.12/overlay/rk3568-ninetripod-x3568-v4-video-demo.dtso is excluded by !patch/**
  • patch/kernel/archive/rockchip64-6.18/dt/rk3568-ninetripod-x3568-v4.dts is excluded by !patch/**
  • patch/kernel/archive/rockchip64-6.18/overlay/Makefile is excluded by !patch/**
  • patch/kernel/archive/rockchip64-6.18/overlay/rk3568-ninetripod-x3568-v4-camera-demo.dtso is excluded by !patch/**
  • patch/kernel/archive/rockchip64-6.18/overlay/rk3568-ninetripod-x3568-v4-video-demo.dtso is excluded by !patch/**
  • patch/u-boot/v2025.10/board_ninetripod-x3568-v4/0001-arm-rockchip-Add-support-for-the-NineTripod-X3568-v4.patch is excluded by !patch/**
📒 Files selected for processing (1)
  • config/boards/ninetripod-x3568-v4.csc (1 hunks)
🧰 Additional context used
🧠 Learnings (3)
📓 Common learnings
Learnt from: HackingGate
PR: armbian/build#8665
File: config/boards/photonicat2.csc:4-4
Timestamp: 2025-10-26T10:41:35.107Z
Learning: In the Armbian build system, rk3576 boards consistently use BOARDFAMILY="rk35xx" for both vendor and edge kernel targets. The rk35xx family configuration sources rockchip64_common.inc, which provides edge and current kernel branch definitions, making these branches available even though they're not defined directly in rk35xx.conf.
Learnt from: amazingfate
PR: armbian/build#8619
File: config/sources/families/rockchip.conf:222-230
Timestamp: 2025-09-14T06:32:29.806Z
Learning: In the Armbian build system, the write_uboot_platform() function implementations follow different patterns across Rockchip family files. The newer standard (used in rockchip64_common.inc and rk3506) includes 'status=none' parameter in dd commands, while older implementations (rk3288, rk322x) use an older pattern without this parameter. The rk3506 implementation correctly follows the current Rockchip family standard.
📚 Learning: 2025-10-26T10:41:35.107Z
Learnt from: HackingGate
PR: armbian/build#8665
File: config/boards/photonicat2.csc:4-4
Timestamp: 2025-10-26T10:41:35.107Z
Learning: In the Armbian build system, rk3576 boards consistently use BOARDFAMILY="rk35xx" for both vendor and edge kernel targets. The rk35xx family configuration sources rockchip64_common.inc, which provides edge and current kernel branch definitions, making these branches available even though they're not defined directly in rk35xx.conf.

Applied to files:

  • config/boards/ninetripod-x3568-v4.csc
📚 Learning: 2025-09-14T06:32:29.806Z
Learnt from: amazingfate
PR: armbian/build#8619
File: config/sources/families/rockchip.conf:222-230
Timestamp: 2025-09-14T06:32:29.806Z
Learning: In the Armbian build system, the write_uboot_platform() function implementations follow different patterns across Rockchip family files. The newer standard (used in rockchip64_common.inc and rk3506) includes 'status=none' parameter in dd commands, while older implementations (rk3288, rk322x) use an older pattern without this parameter. The rk3506 implementation correctly follows the current Rockchip family standard.

Applied to files:

  • config/boards/ninetripod-x3568-v4.csc
🔇 Additional comments (5)
config/boards/ninetripod-x3568-v4.csc (5)

13-13: Address or remove the TODO comment.

The TODO comment indicates that the ASOUND_STATE setting needs verification. Since the PR description mentions the board "boots and worked fine," please verify whether this asound state file is appropriate for the X3568 v4 hardware, or update it to the correct configuration.


27-27: Verify patch directory exists with necessary board support patches.

Since U-Boot upstreaming is pending, the BOOTPATCHDIR should contain patches that add board support to mainline U-Boot. Ensure this directory exists and contains all necessary patches for the board.


33-35: LGTM: write_uboot_platform follows current standard.

The implementation correctly uses status=none in the dd command, which aligns with the newer Rockchip family standard.

Based on learnings.


38-46: LGTM: Network interface configuration looks appropriate.

The udev rules correctly use hardware kernel paths to establish persistent network interface naming. The ethernet controller addresses appear appropriate for the RK3568 SoC.


24-24: The review comment is incorrect—the patch infrastructure is complete and properly configured.

The patch directory patch/u-boot/v2025.10/board_ninetripod-x3568-v4/ exists and contains a comprehensive patch that adds full board support to U-Boot v2025.10, including the ninetripod-x3568-v4-rk3568_defconfig file (80 lines), device tree support (884 lines), and all required board-specific files.

The "U-Boot upstreaming pending" statement refers to the ongoing process of merging this patch into mainline U-Boot, not that support is missing from the build system. The build configuration is correct and will not encounter failures due to missing defconfig or device tree support.

Likely an incorrect or invalid review comment.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@EvilOlaf
Copy link
Member

@coderabbitai review

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 26, 2025

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

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

Labels

11 Milestone: Fourth quarter release Hardware Hardware related like kernel, U-Boot, ... Needs review Seeking for review Patches Patches related to kernel, U-Boot, ... size/large PR with 250 lines or more

Development

Successfully merging this pull request may close these issues.

2 participants