?

Log in

No account? Create an account
airlied
airlied
:.:..:.

July 2017
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

airlied [userpic]
radeon vblank interrupts + power stop : fix step one

I've added code to the radeon drm to support vblank interrupts on both CRTCs and a setparam to allow the DDX to enable/disable the interrupts. I haven't gotten any mesa support for this yet to actually figure out the interrupts but I'll get to that later I'm sure.

But for now it means that when no 3D apps are running we turn off all the vblank interrupts at least so we save power on laptops...

Of course we can do much better, than just turning interrupts off when no 3D is running, it would be nice to not have the interrupt happening when 3D is running this involves using the hardware counters for vblank. Need to think about that a bit more.

Comments
Mesa/OpenGL update?

Hi,
it is said that Mesa will see a major update soon with a new stable version supporting OpenGL 2.0/2.1. Will the radeon driver support the new features also?

(Anonymous)

Yay! Thank you!

(Anonymous)

Would you consider posting the patch somewhere, so people can apply it to their kernels?

it's not just a kernel patch, you need a DDX patch to xf86-video-ati as well..

the kernel patch will go upstream soon, the DDX patches will have to wait for distros to pick them up.

(Anonymous)

Out of curiosity, rather than using a setparam, why can't the radeon drm just turn on interrupts when something calls the relevant ioctl, and turn them off when done?

just that the kernel driver is in charge of interrupts, so having the DDX do it would be very rude.

(Anonymous)

No, I mean why can't the kernel driver do it without any changes to the DDX? Just turn on the interrupt whenever waiting on a vblank, and turn it back off when not waiting on a vblank.

because 3D interface suck and OpenGL needs to count the vblanks...

We are trying to modify it as i said to be smarter and use the hw counters to count the blanks without the interrupt when not waiting...

(Anonymous)

Ah, I see. I had no idea that OpenGL had such a moronic requirement.

(Anonymous)

I installed xserver-xorg-video-ati 6.6.192 from debian/experimental yesterday, but I did not see any reduction in the 50 wake-ups/sec due to the radeon driver using powertop. Do I need to update other xorg components? I'm running 2.6.21 on a thinkpad t41p laptop and everything else is pegged to debian/unstable.