Date: Tue, 8 Mar 2016 13:18:57 +0200 From: Andriy Gapon <avg@FreeBSD.org> To: freebsd-x11 <freebsd-x11@FreeBSD.org> Subject: basic power management for radeon Message-ID: <56DEB521.7000308@FreeBSD.org>
next in thread | raw e-mail | index | archive | help
https://people.freebsd.org/~avg/radeon-pm-profile.diff This patch adds support for manually setting a power profile on supported Radeon cards via a sysctl. Also, it adds reporting of some power management information and a temperature reading. Sample output: hw.dri.0.modesetting: 1 hw.dri.0.busid: pci:0000:01:00.0 hw.dri.0.temperature: 51.6C hw.dri.0.pm_info: default engine clock: 775000 kHz current engine clock: 99990 kHz default memory clock: 1000000 kHz current memory clock: 1000000 kHz voltage: 950 mV hw.dri.0.power_method: profile hw.dri.0.power_profile: low hw.dri.0.vblank: crtc ref count last enabled inmodeset 00 00 01090494 00061323 01 00 01 00 01090932 00061344 01 00 02 01 00000001 00000000 01 03 03 01 00000001 00000000 01 03 04 01 00000001 00000000 01 03 05 01 00000001 00000000 01 03 hw.dri.0.bufs: hw.dri.0.clients: a dev pid uid magic ioctls y dri/card0 3028 1001 5 526990 y dri/card0 2121 1001 2 2012279 y dri/card0 1943 0 0 139848 y dri/card0 1919 0 0 20086433 hw.dri.0.vm: slot offset size type flags address mtrr hw.dri.0.name: radeon 0x39 pci:0000:01:00.0 Only 'profile' method is supported (i.e. 'dynpm' is not) and 'auto' profile is not supported. So, the control is completely manual, which is not as good as the automatic / dynamic control but is better than nothing. The patch is generated against a somewhat old head tree, so it might not apply cleanly on a more recent head or other branches. The patch is somewhat inconsistent in dealing with the Linux specific code, in some cases it is converted to FreeBSD specific code, in others it's "forked". The patch is rather trivial and it could use some cleaning up. Hope that you find it useful. -- Andriy Gapon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56DEB521.7000308>