Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 May 2012 01:03:43 +0300
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        user10508@gmail.com
Cc:        freebsd-x11@freebsd.org
Subject:   Re: pcbsd9-stable-20120505 snapshot - howto enable intel rc6
Message-ID:  <20120517220343.GY2358@deviant.kiev.zoral.com.ua>
In-Reply-To: <4FB503A6.8000506@gmail.com>
References:  <4FB503A6.8000506@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--rd/3IrB17klb+Ksj
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, May 17, 2012 at 09:56:54AM -0400, user10508@gmail.com wrote:
> I'm using this pcbsd snapshot on an asus k53e laptop
>=20
> /etc/make.conf contains:
> WITH_NEW_XORG=3Dyes
>=20
> xf86-video-intel-2.17.0 compiled from ports
>=20
> Laptop runs very hot
> Battery lasts less than half as long as pcbcd9 release intel driver
>=20
> sysctl inquiry reveals
>=20
> hw.dri.0.info.i915_drpc_info: RC information accurate: yes
> Video Turbo Mode: yes
> HW control enabled: yes
> SW control enabled: no
> RC1e Enabled: no
> RC6 Enabled: no
> Deep RC6 Enabled: no
> Deepest RC6 Enabled: no
> Current RC state: on
> Core Power Down: no
>=20
>=20
> If it is possible to enable RC6:
>=20
> what modes can be enabled
>=20
> how can/should an RC6 mode be enabled
On my 2600K enabling any RC6 causes reliable failure to start BLT ring.
When I tried to enable RC for wider audience, I get similar reports in
quantity. So RC6 is disabled by default.

I have no idea what version of Intel GPU patch was applied to your
snapshot, so I describe a recipe for 14.x and 15.x series of patches.
To try to play with RC6, you need to set kernel environment variables
before loading the i915(kms) module. Set drm.i915.intel_iommu_enabled=3D0,
then you may enable actual RC6 states with drm.i915.enable_rc6 tunable.
The bits are the same as for Linux, citation from i915_drv.h:

/**
 * RC6 is a special power stage which allows the GPU to enter an very
 * low-voltage mode when idle, using down to 0V while at this stage.  This
 * stage is entered automatically when the GPU is idle when RC6 support is
 * enabled, and as soon as new workload arises GPU wakes up automatically a=
s well.
 *
 * There are different RC6 modes available in Intel GPU, which differentiate
 * among each other with the latency required to enter and leave RC6 and
 * voltage consumed by the GPU in different states.
 *
 * The combination of the following flags define which states GPU is allowed
 * to enter, while RC6 is the normal RC6 state, RC6p is the deep RC6, and
 * RC6pp is deepest RC6. Their support by hardware varies according to the
 * GPU, BIOS, chipset and platform. RC6 is usually the safest one and the o=
ne
 * which brings the most power savings; deeper states save more power, but
 * require higher latency to switch to and wake up.
 */
#define INTEL_RC6_ENABLE			(1<<0)
#define INTEL_RC6p_ENABLE			(1<<1)
#define INTEL_RC6pp_ENABLE			(1<<2)


--rd/3IrB17klb+Ksj
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (FreeBSD)

iEYEARECAAYFAk+1db4ACgkQC3+MBN1Mb4hBAgCgwfXflTPYO0bR8tTb7DVKga3k
thYAn2lilRXhhPdfV6xVLZd7tWKKBPYm
=KS23
-----END PGP SIGNATURE-----

--rd/3IrB17klb+Ksj--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120517220343.GY2358>