-
Notifications
You must be signed in to change notification settings - Fork 177
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
Setting sync-offset and sync-size has no effect. #129
Comments
Thanks for the issue. Please provide more detailed information. What is the CPU architecture? |
Hi ikwzm Thank you for your reply. |
The situation could not be confirmed here. |
Ok, thank you. |
Any updates @Jeason-Hu ? Did you find a fix? We have a similar situation and we also have a cache synchrony issue... |
Not yet. I have to handle some urgent tasks. |
Maybe a tip. We realized that if the size of the packet sent by the axi datamover was smaller than 0x1000, then when had cache issues, independently of the type of cache flush/invalidation we were doing. |
Yes, I also observed this phenomenon. Sometimes the amount of data output by the FPGA algorithm is quite small, and adjustments to the output are necessary to address the issue. Furthermore, if the data sent exceeds 0x1000 in size after adjustment, then the udmabuf driver is no longer needed. |
I confirm that when packet are sent by the axi datamover (so from PL) to the PS SDRAM DDR4 and are not of size 0x1000, we can have issues. Issue is visible when trying to read-back data from Linux. |
@Jeason-Hu @pierredaye @guerricmeurice, thank you all for your valuable opinions and discussions. If possible, we would appreciate it if you could provide more details about the environment where the issue occurs. |
Hi ikwzm,
I encountered a problem where I cannot set the sync-offset and sync-size. The PL writes data cyclically to the physical address range from 0x87B000000 to 0x87F000000, and the address space is split into 16 parts. The device tree is defined as follows:
When I directly use
system("echo 1 > /sys/class/u-dma-buf/runlength/sync_for_cpu");
to synchronize the entire block of memory, there is no cache consistency problem, but the synchronization time is relatively long.When I change to calling the previously set sync-offset and sync-size, I encounter cache consistency problems.
The same problem occurs when I switch to other interfaces:
The text was updated successfully, but these errors were encountered: