https://bugs.freedesktop.org/show_bug.cgi?id=83708
--- Comment #14 from Michel Dänzer michel@daenzer.net --- (In reply to comment #13)
This patch can solve the address problem.
writel() and readl() already convert to/from little endian. Does it work better if you remove cpu_to_le32() from all lines using those functions?
@@ -751,22 +748,12 @@ }
/* stitch together an UVD destroy msg */ -#if 0
- msg[0] = cpu_to_le32(0x00000de4);
- msg[1] = cpu_to_le32(0x00000002);
- msg[2] = cpu_to_le32(handle);
- msg[3] = cpu_to_le32(0x00000000);
- for (i = 4; i < 1024; ++i)
msg[i] = cpu_to_le32(0x0);
-#endif -#if 1 writel(cpu_to_le32(0x00000de4),&msg[1]); writel(cpu_to_le32(0x00000002),&msg[2]); writel(cpu_to_le32(handle),&msg[3]); writel(cpu_to_le32(0x00000000),&msg[4]); for (i = 4; i < 1024; ++i) writel(cpu_to_le32(0x0),&msg[i]); -#endif radeon_bo_kunmap(bo); radeon_bo_unreserve(bo);
Why are you enabling this code?