Jump to content

Recommended Posts

Posted

Hi everyone!

I recently bought an Orange Pi 5 Pro and decided to install kernel 6.10 on it, as I wanted to take advantage of the new drivers available in this kernel. I found that the [Orange Pi 5 Pro page on the Armbian website](https://www.armbian.com/orange-pi-5-pro/) offers distributions with kernel 6.1, but not 6.10.

After trying to install kernel 6.10 via `armbian-config` on an already installed system, I encountered an issue: the system stopped booting.

### Questions and Requests for Help

1. **Support for Kernel 6.10 on Orange Pi 5 Pro**:
   - Am I correct in understanding that kernel 6.10 is currently not supported for my board?
   - Does anyone have information on whether support for kernel 6.10 for Orange Pi 5 Pro is planned in the future?

2. **Possibility of Installing Kernel 6.10**:
   - Is there any way to install kernel 6.10 on the Orange Pi 5 Pro? Has anyone already faced this challenge and can share their experience?

3. **Building Armbian Distribution with Kernel 6.10**:
   - I want to try building the Armbian distribution with kernel 6.10 from source. Can anyone share the configuration and instructions for compiling kernel 6.10 suitable for the Orange Pi 5 Pro?
   - What steps need to be taken to successfully build and install the kernel on this board?

If anyone has successfully built kernel 6.10 for the Orange Pi 5 Pro or has additional tips, please share! Any help would be greatly appreciated.

Thanks in advance for any assistance and advice! I hope my experience will be useful to other Orange Pi 5 Pro owners.

### Additional Information

Just in case, here is the link to the [Armbian page for Orange Pi 5 Pro](https://www.armbian.com/orange-pi-5-pro/).

Thank you!

Posted

OPi 5 Pro is not yet supported for 6.10 kernel and if you want it supported someone has the board needs to add its DT tohttps://github.com/armbian/build/blob/main/patch/kernel/archive/rockchip-rk3588-6.10/dt. If you're interested in making the board work in mainline you can take https://github.com/armbian/build/blob/main/patch/kernel/archive/rockchip-rk3588-6.10/dt/rk3588s-orangepi-5.dts devicetree as reference. You need to adjust regulators, some devicetree nodes, properties etc.

Posted

Moved post to Community Maintained/Staging as this board is a Work In Process and not yet supported.

 

Note:  The typical way a new board gets introduced to Armbian, is the first step is to bring it in with the 'vendor' kernel.  Which is getting what the board manufacturer released building under Armbian.  Normally the board manufacturers don't support the OS for their boards so whatever gets released is likely never to be updated to anything newer.  And often the linux kernels they use are heavily patched and not close to mainline linux.  Then once that step is completed, the community (both Armbian and many others) work to incorporate all the custom code into mainline linux where hopefully it will be maintained going forward.  That can sometime take years and sometimes it never really happens as the board manufacturers rarely contribute to this (they move on to the next board and don't want to incur any costs to maintain older boards).  It also is rare that everything that worked under the vendor kernel will work under mainline (at least not for a long time).  And for all of this to occur there needs to be people willing to give of their time to volunteer to do all this as no one financially supports the ongoing maintenance of most SBC boards.

Posted
Quote

You need to adjust regulators, some devicetree nodes, properties etc.



Is there any info what exactly is needed for armbian? When I take a look at decompiled dtb it had about 2500 lines of code, in metioned dts are only about 700 lines. Thank you

Posted

@Efe ÇetinWhy DTB compiled for kernel 6.1 wont work in 6.10 kernel ? Should't that info about regulators, dt nodes , properties be the same?

Second question: If I take DTS source for 6.1 and compile using dt compiler of 6.10, should it work ?

Posted
3 hours ago, salas said:

@Efe ÇetinWhy DTB compiled for kernel 6.1 wont work in 6.10 kernel ? Should't that info about regulators, dt nodes , properties be the same?

Second question: If I take DTS source for 6.1 and compile using dt compiler of 6.10, should it work ?

Technically a DTS is specific to a kernel version.  As changes happen to the kernel apis, those need to be reflected in the DTS's.  So they DTB and kernel image are always built and shipped together.

 

Now in practice changes that impact the DTS aren't common, so you can usually use DTS's accross kernel versions.

 

However in this case, I'm assuming that when you refer to 6.1 that is a vendor kernel, and 6.10 or greater would be mainline kernel.  Now these are two very different code bases.  A vendor kernel is whatever the board/cpu vendor hacked together to get a kernel running on their hardware.  Often these are more android kernel based.  When features finally get rolled into mainline, their implementation is often completely different.  Thus one can't share a DTS between a vendor kernel and a mainline kernel.  But often you can use the vendor DTS to gather information about what needs to be implemented in the mainline DTS.

Posted

Hello Armbian community,
 

I'm new to the forums and I'm currently working on adding support for the Orange Pi 5 Pro. I have developed a DTS file that enables support for this board on the EDGE kernel (currently v6.16).

Here is the current status of device support with my changes:
 

Working Features:

  • Wireless & Bluetooth
  • USB 2.0 (x3 ports)
  • HDMI 2.1
  • Gigabit Ethernet (via PCIe to RJ45 adapter - requires manual driver installation as it's not in the kernel)
  • NVMe x2 (One slot tested with an NVMe drive, works perfectly. The other is used by the Ethernet adapter)
  • GPIO PWM LEDs
  • Audio CODEC (ES8388)
  • GPU (with the latest Mesa drivers)
     

Not Yet Working (Work in Progress):

  • USB 3.1
  • HDMI output via USB-C DisplayPort Alt Mode
  • NPU
     

Untested (Hardware unavailable to me):
These are expected to work but remain unconfirmed.

  • Cameras
  • Regulated FAN
  • TouchScreen
  • eMMC Flash
     

Not Sure:

  • VPU (Unable to test due to lack of VAAPI support)

Additional Information:
I have successfully booted the board using u-boot version 2024.04, and it will likely work with newer versions as well.
 

Questions and Call for Collaboration:

I've based my work on the Armbian build system, patching the kernel, u-boot, and modifying the board configuration file. Now that the initial work is done, I have a few questions:

1.  Contribution Process: When my DTS and related changes are more mature, what is the proper procedure to submit them as a contribution to the official Armbian project?
2.  Testing: My build is based on the nightly branch. I am looking for volunteers to help test the image. Is there a specific forum section or process for sharing test images and gathering community feedback?
3.  Collaboration: I would greatly appreciate any help or collaboration, especially with getting USB 3.0 and DisplayPort (via USB-C) connectivity fully functional. If you're interested in helping, please let me know.

Thank you for your time and any guidance you can provide.

Repository:

U-boot Patch: https://github.com/c127dev/u-boot/tree/orangepi5pro-dev-2404
Kernel Patch: https://github.com/c127dev/linux/tree/orange-pi-5-pro-dev
Armbian build: https://github.com/c127dev/build/tree/orange-pi-5-pro-dev

Posted

Hi @C127 Thanks for working on this board!

I have a few questions though.

Quote

Gigabit Ethernet (via PCIe to RJ45 adapter - requires manual driver installation as it's not in the kernel)

Where can I get that driver from ?

 

Quote

NVMe x2 (One slot tested with an NVMe drive, works perfectly. The other is used by the Ethernet adapter)

I did not really get this. My board has one single NVME slot for M.2 M cards.

 

Quote

HDMI output via USB-C DisplayPort Alt Mode

Isn't USB-C in this board only for power supply ?

 

 

Quote

eMMC Flash

I use eMMC cards. I am gonna check if I can boot using your kernel and uboot.

 

 

I just want to confirm you really mean orangepi 5 PRO variant.

 

I wonder If i could use your kernel patch directly against the mainline 6.15 or 6.16  kernel. When your job gets more mature it would be nice to try to port upstream.

 

 

Posted

Hello @salas!

Thanks for the questions and your interest in testing! Let me clarify those points for you, as my initial explanation could have been clearer.
 

Quote

Where can I get that driver from?


The driver for the Ethernet adapter needs to be compiled from source. You can find the repository here:
https://github.com/dante1613/Motorcomm-YT6801/
 

Quote

NVMe x2 ... I did not really get this. My board has one single NVME slot for M.2 M cards.


You're right, my board also has only one user-accessible M.2 NVMe slot. My "NVMe x2" note was a bit confusing. According to the board schematics, the RK3588S SoC provides two NVMe interfaces. On this board, one is routed to the M.2 slot, and the other is internally wired to the chip that drives the RJ45 Ethernet port. So, only one is available for storage.
 

Quote

Isn't USB-C in this board only for power supply?


You are correct that the USB-C port is used for power delivery. However, based on the schematics, the USB-C controller's pins are also multiplexed. Some are routed for DisplayPort Alt Mode (which then goes to the HDMI port), while the remaining data lines are intended for USB 3.0. I am still investigating this part, so I'm not 100% certain yet, but that's what the hardware layout suggests.
 

Quote

I use eMMC cards. I am gonna check if I can boot using your kernel and uboot.

 

Thank you so much for offering to test with an eMMC card! That would be extremely helpful to confirm that it's working correctly.
To make it easier for you, I've just uploaded a pre-compiled image to the "Releases" section of my Armbian build repository. You can also build it yourself from the source, of course.
 

Quote

I just want to confirm you really mean orangepi 5 PRO variant.

 

And yes, to confirm, all my work is for the Orange Pi 5 Pro variant.
 

Quote

I wonder If i could use your kernel patch directly against the mainline 6.15 or 6.16 kernel.

 

Regarding your question about the kernel patch: it's currently based on the Armbian edge kernel tree (v6.16), which includes its own set of patches. It might not apply cleanly to a vanilla mainline kernel (like one from kernel.org) without some adjustments. However, the core DTS changes should be a great starting point for upstreaming the work once it's more mature. That's definitely the end goal!
 

Thanks again for your feedback!

Posted
9 hours ago, C127 said:

1.  Contribution Process: When my DTS and related changes are more mature, what is the proper procedure to submit them as a contribution to the official Armbian project?

There are unfortunately no detailed instructions how to add new boards or board families to the build framework yet. This is a very extensive topic. However there are a few existing pull requests that should give clues like https://github.com/armbian/build/pull/7902/files

 

9 hours ago, C127 said:

2.  Testing: My build is based on the nightly branch. I am looking for volunteers to help test the image. Is there a specific forum section or process for sharing test images and gathering community feedback?

No, since it is community supported use Stating section for Rockchip devices in forums.

 

 

I did a quick check on your work.

- dts files which aren't upstreamed (yet) shall be added in full into the dt folder of the equivalent kernel patch directory (patch/kernel/archive/rockchip64-6.16/dt to say). You can use kernel-dtb build command to extract such a full tree.

- this also avoids my 2nd concern which is modifying the existing orangepi-5.dtsi and disabling nodes which where later re-added with another patch.

- if possible try to bump to latest mainline u-boot, so either v2025.04 or wait a bit longer for v2025.07 which is currently RC.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines