165 patches for power management of Radeon graphics cards

A series of patches for the power management of Radeon graphics cards for the Linux 3.11 kernel has been presented.

Alex Deucher, a developer of of AMD, presented in a mailing list dri-devel very large series of patches (165 patches!), Which presumably will be included in the version of the Linux 3.11 kernel (radeon drm-next to the developers terminology).

These patches provide a lot of improvements for working with the family of Radeon GPU in the Linux kernel. Submitted changes affect the graphics card family Radeon, ranging from fairly old family cards HD2000 (R600) to the latest HD7000 chips on the architecture of GCN and have not even released HD8000 (Sea Islands) based on the architecture GCN 2.0.

Although the data patches cover many aspects of the family of GPU Radeon, in this series can be easily detected priority over which the developers of AMD worked most actively. In this direction, this time turned out to control the power and frequencies of GPU. As you know, AMD has periodically been criticized people, especially from the owners of powerful graphics cards and laptop owners for bad GPU power management in an open video driver.

In this series of patches implemented dynamic frequency and voltage scaling on the GPU that previously lacked this feature, and for the GPU where this feature has already been implemented, it has been substantially revised, discovered and fixed a number of bugs in the implementation, made a variety of improvements. It was also implemented an active state management bus PCI-E (ASPM), in which the power consumption of the PCI-E can be significantly reduced at idle. It was also sold off clock for those not used at the moment blocks GPU (“clock gating”).

Additionally, you can note some other interesting changes:

- For the Radeon HD7000 series includes support PCI-E 2.0, and 3.0;

- Now the driver can distinguish whether the system is on battery or AC power;

- A number of corrections concerning the initialization block UVD on some GPU (as it is known, the initial support for hardware video decoding UVD on the block will be part of the kernel 3.10);

- For more unreleased HD8000 GPU family supports setting video mode operations with 3D, GPU computing and working with UVD.