kevery has quit [Remote host closed the connection]
kevery has joined #linux-rockchip
kevery has quit [Read error: Connection reset by peer]
sjoerds has quit [Read error: Connection reset by peer]
sjoerds0 has joined #linux-rockchip
paulk has quit [Ping timeout: 250 seconds]
paulk has joined #linux-rockchip
sjoerds0 has quit [Read error: Connection reset by peer]
sjoerds has joined #linux-rockchip
Esmil has joined #linux-rockchip
<mriesch>
can anyone give me some pointers how to debug rk3568-iommu page faults?
* mriesch
looks in robmur01 's direction :-)
<mriesch>
i simply don't get it: the mapping seems to be fine (iommu: map: iova 0xfff00000 pa 0x000000007bb00000 size 0xeb000)
<mriesch>
but when the rk3568 isp tries to write a buffer: rk_iommu fdff1a00.iommu: Page fault at 0x00000000fff00000 of type write
<robmur01>
likely it's only mapped with read permission then ;)
<mriesch>
oh yes, that would make sense :-)
<mriesch>
robmur01: the permissions should be in prot, right?
<robmur01>
indeed, I'm not sure why neither the tracepoint nor the pr_debug log that :/
<robmur01>
anyway, the usual cause would be a DMA mapping using an inappropriate direction
<mriesch>
robmur01: prot is 0x2, which should be IOMMU_WRITE
<mriesch>
write and read are from the peripheral point of view?
<robmur01>
is this the ISP that has separate IOMMU instances for reads vs. writes? That's a rich source of potential fun. Other things to look for would be races and possibly missing TLB invalidation
<robmur01>
(I've never really understood the TLB logic in rk_iommu_map_iova()...)
<mriesch>
no i don't think so, downstream device tree node features only one iommu and the iommu itself has only one instance
<robmur01>
yes, IOMMU permissions are from the client device's PoV
<mriesch>
where are the rk iommu v2 registers documented anyway? they didn't care to dedicate them a separate section in the trm, did they?
minimal has joined #linux-rockchip
sjoerds has quit [Read error: Connection reset by peer]
sjoerds has joined #linux-rockchip
Esmil has quit [Ping timeout: 252 seconds]
Esmil has joined #linux-rockchip
jagan has quit [Ping timeout: 246 seconds]
vagrantc has joined #linux-rockchip
sjoerds has quit [Read error: Connection reset by peer]
sjoerds1 has joined #linux-rockchip
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #linux-rockchip
sjoerds1 has quit [Read error: Connection reset by peer]
sjoerds has joined #linux-rockchip
stikonas has joined #linux-rockchip
sjoerds9 has joined #linux-rockchip
sjoerds has quit [Read error: Connection reset by peer]
sjoerds9 is now known as sjoerds
Danct12 has quit [Ping timeout: 272 seconds]
Danct12 has joined #linux-rockchip
lurchi_ is now known as lurchi__
sjoerds has quit [Read error: Connection reset by peer]