Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VPU : Find a way to generate automatic patches, for importing the V4L2 and VPU patches, form the rockchip 5.x tree, to the Linus mainline tree. #13

Closed
2 of 6 tasks
Miouyouyou opened this issue Mar 10, 2019 · 6 comments

Comments

@Miouyouyou
Copy link
Owner

Miouyouyou commented Mar 10, 2019

Currently, the VPU patches posted on the Rockchip Mailing List are based on the Rockchip 5.x tree from Heiko Stübner (I guess ? It's not really obvious).

So, almost everytime I try a patch series implementing some VPU stuff, into the mainline kernel, it fails to compile due to some dependencies on some obscure V4L2 request functions, that are not available on the Linus tree since the V4L2 Request API is a Work In Progress thing.

In order to be apply thoses patches, I'll need to :

  • Determine clearly which kernel tree is used as a basis
  • Determine the files that clearly necessary. Currently that involves : The clocks, V4L2, Videobuf2, DMA, IOMMU, VPU, DTS and UAPI headers.
  • Create a dumb script that : Clones the Linus tree, clones the Rockchip tree, copy the useful files and generates a patch from it.
  • Use this as a basis to test the various VPU patches provided
  • Find a way to test these patches (Softwares required, ...)
  • Automate those tests (LAVA maybe ?)
@Miouyouyou Miouyouyou self-assigned this Mar 10, 2019
@Miouyouyou Miouyouyou added this to the Video Processing Mess milestone Mar 10, 2019
@Miouyouyou Miouyouyou pinned this issue Mar 10, 2019
@Miouyouyou Miouyouyou changed the title Find a way to generate automatic patches, for importing the V4L2 and VPU patches, form the rockchip 5.x tree, to the Linus mainline tree. VPU : Find a way to generate automatic patches, for importing the V4L2 and VPU patches, form the rockchip 5.x tree, to the Linus mainline tree. Mar 10, 2019
@Miouyouyou Miouyouyou added the VPU label Mar 10, 2019
@Miouyouyou
Copy link
Owner Author

Okay, so the kernel used is certainly not mmind's one... And Rockchip doesn't seem to provide 5.x kernels... So people are using magic kernels from wonderlands.

Meanwhile, I found a few V4L2 patches that provide the symbols and definitions for H264 and HEVC handling within V4L2. Since they essentially target Allwinner SoC VPU, maybe they're using some kernels that include the VPU changes for the Allwinner SoC...

https://lkml.org/lkml/2019/2/20/502
https://lkml.org/lkml/2019/2/14/234

@Miouyouyou
Copy link
Owner Author

Also, the latest MPP patches from Randy Li are not useable as-is, since they don't include the VPU Decoder v1 (RK3288) code... So I guess that I'll use Ezequiel patches then.

@Miouyouyou
Copy link
Owner Author

Ok, I guess that they're using this branch : bootlin/linux-cedrus@6e3a9b0

I'll start using this branch as reference, and see how it goes.

@Miouyouyou
Copy link
Owner Author

Alright, a few automated scripts have been pushed here : https://github.com/Miouyouyou/RockMyy/tree/VPU-V4L2-5.x

@Miouyouyou
Copy link
Owner Author

Kwiboo's MPEG-2 decoding driver for the VPU has been added on the mainline tree.

@Miouyouyou
Copy link
Owner Author

The whole Hantro VPU driver is now 'staged' into the kernel

Some correct support from the FFMPEG side is still required, but that's another story.
Closing this one for now.

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

No branches or pull requests

1 participant