Jump to content

Kernel 6.1 for Orange Pi 5+


Joel
Go to solution Solved by royk,

Recommended Posts

I haven't tried this with any other Debian version, I have built a server image of Armbian based on Debian 12 Bookworm through the build tool and transcoding works fine for me now. I have also only tried Nyanmisakas Docker image of Jellyfin through the Docker Compose feature in Open Media Vault.

 

I just followed the instructions here:

 

https://github.com/jellyfin/jellyfin/pull/10748

 

When you download the Libmali Valhall drivers, make sure you get version v1.9-1-2d267b0 from November 14 since the later versions don't work with kernel 6.1. Install it with Apt so you get all dependencies. And after everything is installed you need to open the Jellyfin dashboard, under Playback you will see Hardware Acceleration. Pick "Rockchip MPP (RKMPP) and check all the codecs (I have only tried HEVC and H264 so far so I don't know if all of them works).

Link to comment
Share on other sites

I tried running Kodi in gbm standalone, using Armbian_24.2.3_Orangepi5-plus_jammy_vendor_6.1.43_minimal image, kernel with VOP2 patch, panfork-mesa repo from @amazingfate , rockchip-multimedia repo from @Spooky

Usual settings in Kodi: DRM PRIME decoder and Direct to plane. When playing a video there is a black screen, judging by the overlay the Rockchip decoder is used. There is an error in the Kodi logs:

error <general>: CVideoLayerBridgeDRMPRIME::Map - failed to add fb 0, ret = -22
debug <general>: ffmpeg[0xaaaadf8b7bb0]: [h264_rkmpp] Decoder could not get packet, retrying
debug <general>: ffmpeg[0xaaaadf8b7bb0]: [h264_rkmpp] Wrote 107 bytes to decoder
debug <general>: ffmpeg[0xaaaadf8b7bb0]: [h264_rkmpp] Received a frame

 

Edited by Андрей Степанов
Link to comment
Share on other sites

Hello,

 

Please forgive me if this is not the correct place to ask this, but it seems to be apropos to where I'd ultimately like to get, I believe. I am, however, a relative n00b, so please bear with me if this is a pedestrian question.

I've got an Orange Pi 5 Plus currently running Debian Bookworm using kernel version 5.10.160-legacy-rk35xx. I recently heard that there have been some major security holes found recently in the linux kernel and I was hoping to do an in-place upgrade of ONLY the kernel to whatever may be the latest kernel version that supports this architecture.

First off, am I correct in thinking that this is something that needs to be done? The system is otherwise running fine as-is. But I'd also like to make sure it is secure.

 

And secondly, what would be the process for determining the latest kernel version that will support my architecture and manually installing. Are there .deb package files that can be downloaded from where? That seems like the most straightforward installation process.

 

Thank you, in advance, for your time and attention.

 

Kind Regards,

 

AB

Link to comment
Share on other sites

@SteeManThank you, and again my apologies, I left out a crucial detail. I'm not actually running straight armbian. I'm running dietpi, technically. But, when I first installed, I wanted to be able to put / on the internal flash (I believe it's referred to as eMMC), and the only I was able to get it to work was to initially use the straight armbian image to boot.

 

Then had to go in and make whatever changes to the boot order of things I had to make, which I take it were then written to I think SPI storage, so it sticks and the boot order is maintained regardless of what OS image I then use on top of it.

I believe the newest actual dietpi images are using kern version 6.10 or so. Whatever the version, I believe it's not susceptible to those latest security flaws so I'd like to end up there.

 

End goal:

* Install newest kernel version that supports my hardware

* Do so without having to do a full reinstall of the entire OS

* Maintain the current boot order and ability to boot from eMMC drive

 

Apologies for that pretty important omission there.

 

Thank you

 

- AB

Link to comment
Share on other sites

On 3/7/2024 at 5:47 AM, nyanmisaka said:

Hi!

 

i've tried to apply the patch but i still have a black screen, maybe i did something wrong

 

build: Armbian_24.2.4_Orangepi5_jammy_vendor_6.1.43_kde-neon-amazingfated_desktop

 

After armbian wizard i did:

apt update & upgrade

reboot

apt install kodi kodi-repository-kodi

reboot

start Kodi in GBM

i've tested a video file, and black screen

so i've quit from Kodi and i did the procedure below to apply the patches 0001-rga3_uncompact_fix.patch / 0002-vop2_rbga2101010_capability_fix.patch:

 


% git clone -b rk-6.1-rkr1 https://github.com/amazingfate/linux-rockchip.git

% cd linux-rockchip

% wget https://github.com/hbiyik/ffmpeg-rockchip/wiki/patches/rockchip-kernel/0001-rga3_uncompact_fix.patch

% wget https://github.com/hbiyik/ffmpeg-rockchip/wiki/patches/rockchip-kernel/0002-vop2_rgba2101010_capability_fix.patch

% patch -p1 < 0001-rga3_uncompact_fix.patch
patching file drivers/video/rockchip/rga3/rga3_reg_info.c
Reversed (or previously applied) patch detected!  Assume -R? [n] y

% patch -p1 <  0002-vop2_rgba2101010_capability_fix.patch                                                                    
patching file drivers/gpu/drm/rockchip/rockchip_vop2_reg.c


% make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 rockchip_linux_defconfig

% make KBUILD_IMAGE="arch/arm64/boot/Image" CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 -j "$(nproc)" bindeb-pkg

 

Results: 

dpkg-deb: building package 'linux-libc-dev' in '../linux-libc-dev_6.1.43-1_arm64.deb'.
dpkg-deb: building package 'linux-image-6.1.43' in '../linux-image-6.1.43_6.1.43-1_arm64.deb'.
dpkg-deb: building package 'linux-image-6.1.43-dbg' in '../linux-image-6.1.43-dbg_6.1.43-1_arm64.deb'.
 dpkg-genbuildinfo --build=binary -O../linux-upstream_6.1.43-1_arm64.buildinfo
 dpkg-genchanges --build=binary -O../linux-upstream_6.1.43-1_arm64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)

 

Then I did

% cd ..

% sudo dpkg -i *.deb

 

Results:

Selecting previously unselected package linux-headers-6.1.43.
(Reading database ... 183026 files and directories currently installed.)
Preparing to unpack linux-headers-6.1.43_6.1.43-1_arm64.deb ...
Unpacking linux-headers-6.1.43 (6.1.43-1) ...
Selecting previously unselected package linux-image-6.1.43.
Preparing to unpack linux-image-6.1.43_6.1.43-1_arm64.deb ...
Unpacking linux-image-6.1.43 (6.1.43-1) ...
Selecting previously unselected package linux-image-6.1.43-dbg.
Preparing to unpack linux-image-6.1.43-dbg_6.1.43-1_arm64.deb ...
Unpacking linux-image-6.1.43-dbg (6.1.43-1) ...
Preparing to unpack linux-libc-dev_6.1.43-1_arm64.deb ...
Unpacking linux-libc-dev:arm64 (6.1.43-1) over (5.15.0-102.112) ...
Setting up linux-headers-6.1.43 (6.1.43-1) ...
Setting up linux-image-6.1.43 (6.1.43-1) ...
 * dkms: running auto installation service for kernel 6.1.43                                                                                                           
Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
make -j8 KERNELRELEASE=6.1.43 KERNEL_DIR=/lib/modules/6.1.43/build all...
cleaning build area...

v4l2loopback.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.1.43/updates/dkms/

depmod...
                                                                                                                                                                [ OK ]
update-initramfs: Generating /boot/initrd.img-6.1.43
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156b-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156a-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153c-1.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-4.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/keyspan/usa49wlc.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa49w.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa19w.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa18x.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa19qw.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/mpr.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa19qi.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa19.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa28xb.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa28xa.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa28x.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/keyspan/usa28.fw for built-in driver keyspan
W: Possible missing firmware /lib/firmware/bfubase.frm for built-in driver bfusb
W: Possible missing firmware /lib/firmware/intel/ibt-12-16.ddc for built-in driver btintel
W: Possible missing firmware /lib/firmware/intel/ibt-12-16.sfi for built-in driver btintel
W: Possible missing firmware /lib/firmware/intel/ibt-11-5.ddc for built-in driver btintel
W: Possible missing firmware /lib/firmware/intel/ibt-11-5.sfi for built-in driver btintel
W: Possible missing firmware /lib/firmware/mrvl/sdsd8997_combo_v4.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sd8987_uapsta.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sdsd8977_combo_v2.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sd8897_uapsta.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sd8887_uapsta.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sd8797_uapsta.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sd8787_uapsta.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sd8688.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/mrvl/sd8688_helper.bin for built-in driver btmrvl_sdio
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8851bu_config.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8851bu_fw.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8852cu_config.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8852cu_fw.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8852bu_config.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8852bu_fw.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8852au_config.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8852au_fw.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8821a_config.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8821a_fw.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8761a_config.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8761a_fw.bin for built-in driver btrtl
W: Possible missing firmware /lib/firmware/rtl_bt/rtl8723a_fw.bin for built-in driver btrtl
update-initramfs: Armbian: Converting to u-boot format: /boot/uInitrd-6.1.43
Image Name:   uInitrd
Created:      Tue Apr 16 13:06:04 2024
Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
Data Size:    15405164 Bytes = 15044.11 KiB = 14.69 MiB
Load Address: 00000000
Entry Point:  00000000
update-initramfs: Armbian: Symlinking /boot/uInitrd-6.1.43 to /boot/uInitrd
ln: failed to create symbolic link '/boot/uInitrd': Operation not permitted
update-initramfs: Symlink failed, moving /boot/uInitrd-6.1.43 to /boot/uInitrd
renamed '/boot/uInitrd-6.1.43' -> '/boot/uInitrd'
update-initramfs: Armbian: done.
Free space after deleting the package linux-image-6.1.43 in /boot: 67.7M
Setting up linux-image-6.1.43-dbg (6.1.43-1) ...
Setting up linux-libc-dev:arm64 (6.1.43-1) ...

 

% reboot

 

Tested Kodi again, and black screen

Any suggestion?

 

Thanks!!

 

 

 

Link to comment
Share on other sites

4 minutes ago, royk said:

The same here until I compiled Kodi with the patch myself and everything works

that's great Royk! so i can build Kodi following the official github guide, with GBM and GLES + patches 0001-windowing-gbm-Dynamic-plane-selection.patch / 0002-VideoLayerBridgeDRMPRIME-Use-crop-fields-to-render-t.patch ?

 

or should i use a different configuration?

 

thanks!

Link to comment
Share on other sites

@royk  after applying the patches i've tried to build Kodi with severals of the configurations available and always with GLES, but there are some issues:

 

cmake ../kodi -DCMAKE_INSTALL_PREFIX=/usr/local -DCORE_PLATFORM_NAME="x11 wayland gbm" -DAPP_RENDER_SYSTEM=gles

 

it start Kodi but with X11

 

cmake ../kodi -DCMAKE_INSTALL_PREFIX=/usr/local -DCORE_PLATFORM_NAME=gbm -DAPP_RENDER_SYSTEM=gles

 

and

 

cmake ../kodi -DCMAKE_INSTALL_PREFIX=/usr/local -DCORE_PLATFORM_NAME=wayland -DAPP_RENDER_SYSTEM=gles

 

Kodi doesn't starts, it just return to the login page

 

 

for all the cases the session name is "Kodi" and not "Kodi-Wayland" as was before with GDM3 and previous kernel. 

 

ls /usr/share/xsessions

plasmax11.desktop

 

ls /usr/share/wayland-sessions

plasma.desktop

 

any idea?

 

thanks!

 

 

Link to comment
Share on other sites

@Dbosco Build and install with at least GBM

Paste the following in /usr/share/wayland-sessions/kodi-wayland.desktop

 

[Desktop Entry]
Name=Kodi Wayland
Comment=This session will start Kodi media center
Exec=env FFMPEG_RKMPP_DEC_OPT="afbc=on" kodi --windowing=gbm --audio-backend=alsa
TryExec=kodi-standalone
Type=Application
Keywords=audio;video;media;center;tv;movies;series;songs;remote;
Icon=kodi

 

 

Otherwise try to stop the window manager and start it manually to see if it gives an error, from login window press: ctrl+alt+F2 -> sudo systemctl stop gdm3 -> env FFMPEG_RKMPP_DEC_OPT="afbc=on" kodi --windowing=gbm --audio-backend=alsa

Edited by royk
Link to comment
Share on other sites

thanks @royk now Kodi starts

 

unfortunately when i'm playing a file the video is not showing, and I can listen the audio in the background. 

 

same with 

sudo systemctl stop gdm3 -> env FFMPEG_RKMPP_DEC_OPT="afbc=on" kodi --windowing=gbm --audio-backend=alsa

 

to recap:

 

build: Armbian_24.2.4_Orangepi5_jammy_vendor_6.1.43_kde-neon-amazingfated_desktop patched with 0001-rga3_uncompact_fix.patch and 0002-vop2_rbga2101010_capability_fix.patch 

 

Kodi Nexus GBM+GLES, with patches 0001-windowing-gbm-Dynamic-plane-selection.patch and 0002-VideoLayerBridgeDRMPRIME-Use-crop-fields-to-render-t.patch

 

tested with GDM3 and SDDM

 

dunno what i'm doing wrong 

 

Link to comment
Share on other sites

@Dbosco (Assuming you set the settings in Kodi correct: settings->player->videos->render method Allow using DRM PRIME Decoder=enable Allow Hardware Acceleation with DRM PRIME=enable Prime Render Method=Direct to Plane)

Perhaps something is wrong with your ffmpeg, mpp or rga. Try to follow the steps on: https://github.com/nyanmisaka/ffmpeg-rockchip/wiki/Compilation

After that run the cmake command for kodi again before make and install.

Link to comment
Share on other sites

@royk thanks again for your help

 

I've followed the step to build ffmpeg, mpp and rga, but after that i cannot build kodi anymore, and I'm unable to understand where the error is, i suppose that can be related with the configure option of ffmpeg. 

 

i've added these ones:

 

./configure --prefix=/usr --enable-gpl --enable-gnutls --enable-libass --enable-libfdk-aac --enable-libfreetype  --enable-libmp3lame --enable-libopus --enable-libdav1d --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree --enable-gpl --enable-libopus --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga

 

and this are the results when i grep from ffmpeg

 

V..... av1_rkmpp            Rockchip MPP (Media Process Platform) AV1 decoder (codec av1)

V..... h263_rkmpp           Rockchip MPP (Media Process Platform) H263 decoder (codec h263)

V..... h264_rkmpp           Rockchip MPP (Media Process Platform) H264 decoder (codec h264)

V..... hevc_rkmpp           Rockchip MPP (Media Process Platform) HEVC decoder (codec hevc)

V..... mpeg1_rkmpp          Rockchip MPP (Media Process Platform) MPEG1VIDEO decoder (codec mpeg1video)

V..... mpeg2_rkmpp          Rockchip MPP (Media Process Platform) MPEG2VIDEO decoder (codec mpeg2video)

V..... mpeg4_rkmpp          Rockchip MPP (Media Process Platform) MPEG4 decoder (codec mpeg4)

V..... vp8_rkmpp            Rockchip MPP (Media Process Platform) VP8 decoder (codec vp8)

V..... vp9_rkmpp            Rockchip MPP (Media Process Platform) VP9 decoder (codec vp9)

 

V..... h264_rkmpp           Rockchip MPP (Media Process Platform) H264 encoder (codec h264)

V..... hevc_rkmpp           Rockchip MPP (Media Process Platform) HEVC encoder (codec hevc)

V..... mjpeg_rkmpp          Rockchip MPP (Media Process Platform) MJPEG encoder (codec mjpeg)

 

... overlay_rkrga     VV->V      Rockchip RGA (2D Raster Graphic Acceleration) video compositor

... scale_rkrga       V->V       Rockchip RGA (2D Raster Graphic Acceleration) video resizer and format converter

... vpp_rkrga         V->V       Rockchip RGA (2D Raster Graphic Acceleration) video post-process (scale/crop/transpose)

 

 

and i've also started from scratch with a different build "Armbian_24.5.0-trunk.434_Orangepi5_noble_vendor_6.1.43_xfce_desktop"

installed panfork, ubuntu, updated the kernel with patches, compiled ffmpeg, mpp and rga, and as last kodi

 

could be related with a ffmpeg bad configuration?

 

thanks

 

 

 

 

 

Link to comment
Share on other sites

@royk thanks for the build, still i didn't test it but i performed some new tests, using the dist from Joshua Riek as Ubuntu is ready, with GPU, and the Kernel is already patched

 

And same problem with Nexus, but i was able to build Omega and is working fine if in System -> Video i select my TV on not the default option (dunno why), after that i can change the resolution to 1080p and everything is working fine, HDR10, x265, x264, 4k.. all good

although when i start a video the change of resolution is a bit slow and in the Kodi logs i can see an issue with the EDID:

 

2024-04-22 10:53:53.119 T:2038    error <general>: [display-info] Error parsing EDID:
2024-04-22 10:53:53.119 T:2038    error <general>: [display-info] ----------------------------------------------
2024-04-22 10:53:53.119 T:2038    error <general>: [display-info] Block 1, CTA-861 Extension Block:
2024-04-22 10:53:53.119 T:2038    error <general>: [display-info]   Colorimetry Data Block: Reserved bits MD0-MD3 must be 0.
2024-04-22 10:53:53.119 T:2038    error <general>: [display-info] 
2024-04-22 10:53:53.119 T:2038    error <general>: [display-info] ----------------------------------------------

 

after these messages in can see in the Kodi log that is able to load all the resolutions profiles

 

Don't know if there is a fix for the EDID

 

After installing Omega it create automatically the GBM profile, using that Kodi works, meanwhile if I'm using yours with  the FFMPEG_RKMPP_DEC_OPT="afbc=on" option the video is not showing and Kodi crash

 

cat /usr/local/share/wayland-sessions/kodi-gbm.desktop

[Desktop Entry]

Name=Kodi on GBM

Comment=This session will start Kodi media center

Exec=kodi-standalone --windowing=gbm

TryExec=kodi-standalone

Type=Application

Keywords=audio;video;media;center;tv;movies;series;songs;remote;

Icon=kodi

 

Also, there was an issue with the python IMP module not found that caused some crashes, and addon probs. finally resolved installing python3-zombie-imp

 

 

 

 

 

 

screenshot00003.png

screenshot00001.png

Edited by Dbosco
Link to comment
Share on other sites

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