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

add v4l2 patches to rockchip64 for chromium #5883

Merged
merged 1 commit into from Nov 5, 2023

Conversation

amazingfate
Copy link
Contributor

Description

Add patches as Justin Green mentioned to enable DMA buffer caching on hantro and rkvdec driver. Hantro and rkvdec driver have set dst_vq->dma_attrs to DMA_ATTR_ALLOC_SINGLE_PAGES | DMA_ATTR_NO_KERNEL_MAPPING and it will not pass check in dma_alloc_noncontiguous, so I add a patch to deal with it.

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Please also note any relevant details for your test configuration.

  • rockchip64-edge build success
  • chromium v4l2 decoder works on orangepi3b.

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • Any dependent changes have been merged and published in downstream modules

@viraniac
Copy link
Collaborator

viraniac commented Nov 4, 2023

Going to build chromium 119 with your chromium patches and will apply kernel patches to Allwinner Kernel to see how it works on Orange Pi 3 LTS (Allwinner H6) as it also has a Hantro decoder builtin. Will also check if similar changes can be done for Cedrus to make hardware acceleration work on other Allwinner SoCs as well.

@igorpecovnik igorpecovnik merged commit f55a87d into armbian:main Nov 5, 2023
4 checks passed
@amazingfate
Copy link
Contributor Author

Going to build chromium 119 with your chromium patches and will apply kernel patches to Allwinner Kernel to see how it works on Orange Pi 3 LTS (Allwinner H6) as it also has a Hantro decoder builtin. Will also check if similar changes can be done for Cedrus to make hardware acceleration work on other Allwinner SoCs as well.

Here is the udev rules I use for rk3566 to create v4l2 devices for chromium:

SUBSYSTEM=="video4linux", ATTR{name}=="rockchip,rk3568-vpu-dec", SYMLINK+="video-dec%n"
SUBSYSTEM=="media", ATTR{model}=="hantro-vpu", SYMLINK+="media-dec%n"

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

Successfully merging this pull request may close these issues.

None yet

3 participants