WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Conversation

@z1rachl
Copy link

@z1rachl z1rachl commented Dec 1, 2025

In the current version station-m2 armbian build with vendor kernel is broken. Image is assembled, but does not boot on the board. I have added rk3566-roc-pc.dtb to Makefile and ported fixes from 6.12 linux kernel to fix critical issues with broken lan and cursor.

Summary by CodeRabbit

  • New Features

    • Added support for Firefly Station M2 hardware platform.
  • Bug Fixes

    • Improved network connectivity with optimized clock and signal configuration.
    • Enhanced display output stability through improved driver settings.

✏️ Tip: You can customize this high-level summary in your review settings.

…ethernet connection missing and mouse flickering
@github-actions github-actions bot added size/medium PR with more then 50 and less then 250 lines 02 Milestone: First quarter release labels Dec 1, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Dec 1, 2025

Hey @z1rachl! 👋

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 Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... Patches Patches related to kernel, U-Boot, ... labels Dec 1, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 1, 2025

Walkthrough

This pull request adds device tree support for the rk3566-roc-pc (Firefly Station M2) board by registering its device tree binary in the kernel build configuration and updating its device tree source with networking clock fixes, PHY power supply configuration, and display output cursor settings.

Changes

Cohort / File(s) Summary
Device Tree Build Configuration
patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch
Adds rk3566-roc-pc.dtb to the ARM64 device-tree Makefile; updates GMAC1 clock assignments and parents; adds phy-supply for GMAC1; adjusts TX/RX delay hex values; sets cursor-win-id for VOP2 display output

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

  • Device tree changes are generally straightforward, involving hardware configuration rather than complex logic
  • Changes are localized to a single board configuration file
  • Should verify correctness of clock parent assignments, TX/RX delay values, and display cursor property compatibility with the rk3566-roc-pc hardware specifications

Suggested reviewers

  • igorpecovnik
  • chainsx
  • SuperKali
  • Tonymac32
  • krachlatte
  • prahal
  • rpardini

Poem

🐰 A hop and a bound through the device tree we bound,
Clock signals dancing where GMAC1 is found!
Display cursors fixed with a whisker-tick tweak,
The Station M2 now runs smooth throughout the week!

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and specifically summarizes the main change: fixing the station-m2 vendor branch compilation issue by addressing missing DTB and kernel issues.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

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 ede82db and 85fdacd.

📒 Files selected for processing (1)
  • patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch (1 hunks)
🧰 Additional context used
🧠 Learnings (6)
📓 Common learnings
Learnt from: amazingfate
Repo: armbian/build PR: 8619
File: config/sources/families/rockchip.conf:64-70
Timestamp: 2025-09-14T06:29:18.958Z
Learning: In the Armbian build system, vendor branch configurations in family files are designed to be shared across multiple SoCs within the same family that use the same vendor kernel tree. For example, rk35xx and rockchip-rk3588 families both use identical vendor branch settings (same KERNELSOURCE, KERNELBRANCH, and KERNELPATCHDIR), demonstrating that vendor branches are intentionally generic rather than SoC-specific.
Learnt from: EvilOlaf
Repo: armbian/build PR: 8619
File: config/sources/families/rockchip.conf:64-70
Timestamp: 2025-09-14T06:10:25.610Z
Learning: In the Armbian build system, rk32xx and rk33xx Rockchip SoCs no longer have BSP-based (vendor) kernel branches. The rk3506 is the first 32-bit Rockchip SoC to use the vendor branch in the current codebase.
Learnt from: amazingfate
Repo: armbian/build PR: 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.
Learnt from: HackingGate
Repo: armbian/build PR: 8665
File: config/boards/photonicat2.csc:4-4
Timestamp: 2025-10-26T10:41:35.118Z
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.
📚 Learning: 2025-09-14T06:32:29.806Z
Learnt from: amazingfate
Repo: armbian/build PR: 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:

  • patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch
📚 Learning: 2025-10-26T10:41:35.118Z
Learnt from: HackingGate
Repo: armbian/build PR: 8665
File: config/boards/photonicat2.csc:4-4
Timestamp: 2025-10-26T10:41:35.118Z
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:

  • patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch
📚 Learning: 2025-11-08T06:39:24.527Z
Learnt from: EvilOlaf
Repo: armbian/build PR: 8886
File: patch/kernel/rk35xx-vendor-6.1/dt/rk3528-nanopi-rev01.dts:9-9
Timestamp: 2025-11-08T06:39:24.527Z
Learning: In Armbian's Rockchip vendor kernel branches (rk35xx-vendor), device tree files may not require the same headers as mainline Linux. For example, input key definitions like KEY_BACK and KEY_VOLUMEUP may be handled differently in BSP kernels and don't necessarily need explicit includes like <dt-bindings/input/input.h> that would be required in mainline kernel device trees.

Applied to files:

  • patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch
📚 Learning: 2025-09-14T06:29:18.958Z
Learnt from: amazingfate
Repo: armbian/build PR: 8619
File: config/sources/families/rockchip.conf:64-70
Timestamp: 2025-09-14T06:29:18.958Z
Learning: In the Armbian build system, vendor branch configurations in family files are designed to be shared across multiple SoCs within the same family that use the same vendor kernel tree. For example, rk35xx and rockchip-rk3588 families both use identical vendor branch settings (same KERNELSOURCE, KERNELBRANCH, and KERNELPATCHDIR), demonstrating that vendor branches are intentionally generic rather than SoC-specific.

Applied to files:

  • patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch
📚 Learning: 2025-09-14T06:10:25.610Z
Learnt from: EvilOlaf
Repo: armbian/build PR: 8619
File: config/sources/families/rockchip.conf:64-70
Timestamp: 2025-09-14T06:10:25.610Z
Learning: In the Armbian build system, rk32xx and rk33xx Rockchip SoCs no longer have BSP-based (vendor) kernel branches. The rk3506 is the first 32-bit Rockchip SoC to use the vendor branch in the current codebase.

Applied to files:

  • patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch
🔇 Additional comments (5)
patch/kernel/rk35xx-vendor-6.1/board-station-m2.patch (5)

1-16: LGTM!

The patch header and commit message are well-structured and clearly document the changes being made.


48-51: Verify board type and RGMII delay values.

The patch filename references "board-station-m2" but the original review comment mentions "rk3566-roc-pc" — confirm which board this patch applies to. RGMII delay values are board-specific and should be validated against the correct upstream or vendor documentation for the target board.


26-26: Verify Makefile entry placement.

The dtb entry for rk3566-roc-pc.dtb is inserted after rk3588s entries but before another rk3566 entry. Typically, device tree entries are grouped by SoC model and sorted alphabetically within each group. Confirm whether this placement aligns with the existing organization pattern in the Makefile.


37-41: Verify clock configuration and regulator reference are correct for board-station-m2.

The clock configuration has been expanded from 2 to 3 clock assignments, and a phy-supply has been added. Please verify:

  1. The clock assignments match the Linux 6.12 upstream implementation for this board
  2. The &vcc_3v3 regulator reference exists in the target device tree
  3. The number of entries in assigned-clocks and assigned-clock-parents arrays are correctly paired (both should have 3 entries)

61-63: The macro ROCKCHIP_VOP2_ESMART0 is a documented and valid Rockchip VOP2 window ID definition. The cursor-win-id = <ROCKCHIP_VOP2_ESMART0>; configuration is the correct and standard way to assign a hardware window for cursor planes in Rockchip VOP2 device trees. No additional verification or macro definition check is needed—this follows established Rockchip VOP2 device tree conventions.

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.

@chainsx
Copy link
Member

chainsx commented Dec 1, 2025

Please submit a PR to this repository:

https://github.com/armbian/linux-rockchip/tree/rk-6.1-rkr5.1

@HeyMeco
Copy link
Collaborator

HeyMeco commented Dec 1, 2025

Closing this because comment above

@HeyMeco HeyMeco closed this Dec 1, 2025
@z1rachl
Copy link
Author

z1rachl commented Dec 1, 2025

Moved PR to linux-rockchip repo
armbian/linux-rockchip#434

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

Labels

02 Milestone: First quarter release Hardware Hardware related like kernel, U-Boot, ... Needs review Seeking for review Patches Patches related to kernel, U-Boot, ... size/medium PR with more then 50 and less then 250 lines

Development

Successfully merging this pull request may close these issues.

3 participants