Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

VPU driver for RK3328?

Featured Replies

Hello Everyone!

What is the kernel config option that I need to set to enable the VPU driver?

Background:
I'm using the most current RK3328 RENEGADE armbian image (debian non-desktop) on my ROC-RK3328-CC (Libre Renegade).
I've compiled a brand new kernel with the armbian build tool.

first, I cloned and compiled gstreamer and it's plugins from Github.
Everything works fine but no video acceleration...

So then I clone, compile, and install libmali, mpp, gstreamer-rockchip and gstreamer-rockchip-extra, and although the new pluggins are now available to gstreamer (specifically mppvideodec), whenever I try to use mppvideodec, I recieve the following error:

mpi: mpp version: 14cae9c4 author: Johnson Ding [mpp_platform]: fix wrong device getting problem
mpp_rt: NOT found ion allocator
mpp_rt: found drm allocator
hal_h264d_api: Assertion vcodec_type & ((1 << VPU_CLIENT_RKVDEC) | (1 << VPU_CLIENT_VDPU1) | (1 << VPU_CLIENT_VDPU2)) failed at hal_h264d_init:104
hal_h264d_api: hal_h264d_init hard mode error, value=0
hal_h264d_api: Assertion 0 failed at hal_h264d_init:154
mpp_device: mpp_device_init failed to find device for coding 7 type 0
Caught SIGSEGV

After searching for a while, I came across this bug report in Chinese which suggests that I don't have the RK3328 VPU driver installed:
https://translate.googleusercontent.com/translate_c?depth=1&hl=en&pto=nl&rurl=translate.google.com&sl=zh-CN&sp=nmt4&tl=en&u=https://github.com/rockchip-linux/mpp/issues/52&usg=ALkJrhiZFAGMkTKx7lz28OCXBQAmjeA8mw

I checked the kernel config (I'm using the armbian build tool to compile the newest kernel), and I do see "V4L platform devices" however this doesn't seem to be anything rockchip specific.

Since the default Armbian desktop versions seem to have video accel already enabled, I am hoping someone might be able to give me a hint as to what process I should follow in order to properly build the correct vpu-codec kernel driver for the RK3328

I see that in the RK3328 Media Script (Rock64, Renegade) post by JMMC, he has a precompiled DEB package for librockchip-vpu0...  Is this what I'm missing here?  If so, can anyone point me to the source so I could build my own?

So 2 questions:  
1.  Is there a kenrel option I should be setting in order to compile the VPU driver?  
1.  if not, which VPU driver code should I be compiling for mpp to work?

Thanks so much for your time in reading this.

  • Author

So after looking through the device tree, I see that it's called 'video-codec'

however modprobe cant find the module...

I only see it in these locations:

 

/sys/devices/platform/ff350000.video-codec

/sys/bus/platform/devices/ff350000.video-codec
/sys/firmware/devicetree/base/video-codec@ff350000

 

it doesn't appear that I have the kernel module.

Any ideas where I can find the source code for the 'video-codec' kernel module?

 

 

 

  • Author

It turns out that it's been renamed to 'hantro-vpu' starting with 5.3. 

I got the kernel module compiled but now I realize there's a bunch of patches that update everything for this name changed that were not applied while using the armbian build tool.  I'll open up a new thread regarding that since it's a different issue.

 

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.