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

Bug Report: RGA 4G limit memory #1133

Open
MattiaGrigoli opened this issue Nov 28, 2024 · 3 comments
Open

Bug Report: RGA 4G limit memory #1133

MattiaGrigoli opened this issue Nov 28, 2024 · 3 comments
Labels
bug Something isn't working

Comments

@MattiaGrigoli
Copy link

What happened?

on higher memory board (+4g of RAM) the RGA stops working becuase of the limit of RGA2 of 4G caused by its 32 bits addresses.
is there a fix for this issue? i need to use the RGA for professional reasons and i can't find a solution anywhere

Kernel version

5.10/6.10

SBC model

orange pi 5 plus

What operating system are you seeing this problem on?

Ubuntu 22.04 LTS (Jammy Jellyfish)

Relevant logs

No response

@MattiaGrigoli MattiaGrigoli added the bug Something isn't working label Nov 28, 2024
@Joshua-Riek Joshua-Riek removed their assignment Nov 29, 2024
@nyanmisaka
Copy link

Check #1030 (comment).
The RGA2 hardware is designed in such a way that you must use the DMA32 flag when allocating memory.

So this is not an issue and @Joshua-Riek should feel free to close these two.

@unitedtimur
Copy link

Check #1030 (comment). The RGA2 hardware is designed in such a way that you must use the DMA32 flag when allocating memory.

So this is not an issue and @Joshua-Riek should feel free to close these two.

After using "/dev/dma_heap/system-uncached-dma32", when the call becomes very frequent, for example about 60 allocations per second, and about the same for deallocation, then at some point I get the error RK_DMA_HEAP_ALLOC_BUFFER failed in dma_buf_alloc

And I do not know how to fix it. Can you help with this?

@nyanmisaka
Copy link

Check #1030 (comment). The RGA2 hardware is designed in such a way that you must use the DMA32 flag when allocating memory.
So this is not an issue and @Joshua-Riek should feel free to close these two.

After using "/dev/dma_heap/system-uncached-dma32", when the call becomes very frequent, for example about 60 allocations per second, and about the same for deallocation, then at some point I get the error RK_DMA_HEAP_ALLOC_BUFFER failed in dma_buf_alloc

And I do not know how to fix it. Can you help with this?

This is a rare use case and I haven't had a chance to encounter it. Clients should reuse allocated DMA buffers as much as possible, instead of always freeing + reallocing them.

Also, rockchip has retired their custom dma-heap allocator in 6.1 LTS kernel.

If you insist that this is an issue, please write to rockchip for more info.
https://opensource.rock-chips.com/wiki_Main_Page

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants