Re: [PATCH 3/3] drm: omapdrm: Do no allocate non-scanout GEMs through DMM/TILER

From: Ivaylo Dimitrov
Date: Mon Oct 31 2022 - 07:14:47 EST




On 31.10.22 г. 12:13 ч., Tony Lindgren wrote:
* Ivaylo Dimitrov <ivo.g.dimitrov.75@xxxxxxxxx> [221031 06:55]:
On 31.10.22 г. 0:08 ч., H. Nikolaus Schaller wrote:
[ 39.419846] WARNING: CPU: 0 PID: 3673 at drivers/bus/omap_l3_noc.c:139 l3_interrupt_handler+0x23c/0x330
[ 39.429914] 44000000.l3-noc:L3 Custom Error: MASTER MPU TARGET GPMC (Idle): Data Access in Supervisor mode during Functional access
...


I have no idea what that error is supposed to mean. @Tony?

The error above is GPMC related. It means GPMC is not properly clocked or powered
while trying to access it's IO range.

Maybe DSS is somehow trying to access GPMC address space registers with DMA? The
GPMC address space starts at 0. Maybe the DSS DMA address is 0 somwhere?

I think I have an idea:

omap_framebuffer_pin() calls omap_gem_pin() without verifying the returned plane->dma_addr. To me it seems the assumption is that plane BOs are scanout/linear, which most-probably isn't the case. I was unable to find who provides those BOs though (they are passed as handles to omap_framebuffer_create(), most-probably set by the userspace)



Regards,

Tony