arjun.a
rename files
6c7b14a
Ticket Name: Linux/TDA2: question about vmem-exp
Query Text:
Part Number: TDA2 Tool/software: Linux hi , TI experts, I am using Linux usecase (OV490 3D srv ) in vision SDK 3.04.00. Now my problem is that the display output only tex[0], tex[3], tex[1] and tex[2] are same with tex[1], tex[3]. I find out in vmem-exp.c ( kernel driver ), vmem_export_single function export the 2 video virtual addr (such as 0xa7a2b000, 0xa7a2b500) to a same dmafd. It seems like the PAGE_MASK (4K Align) mask the offset(0x500). If this, how GPU map the correct physical address ? I mean, the same dmafd get 2 different address (such as YUV 0xa7a2b000, 0xa7a2b500) ? regards, John
Responses:
Hello, This is a standard Linux limitation in Linux. DMABUF can be used only to export certain pages from the kernel For GPU, most likely, one of the following should work - just pass one dmabuf, GPU finds out the UV offset based on the size of Y - pass the same dmabuf for both Y and UV and provide offset values Regards, Nikhil D
Hi ,Nikhil thanks for reply. "- pass the same dmabuf for both Y and UV and provide offset values" In Vision SDK SGX drivers, I cannot find the provided offset values in System_eglWindowGetTexYuv(). For frameBuffer as below: Y1 Y2 UV1 UV2 It can only checkout the Y1 and UV1, Y2 and UV2 are missed. Can u give me more tips to find offset manipulation? regards, John
John, are you still facing this issue? I am closing this thread.