On Thu, May 31, 2012 at 3:09 AM, Daniel Vetter <daniel@xxxxxxxx> wrote: > On Wed, May 30, 2012 at 11:21:32AM -0400, Sean Paul wrote: >> On Wed, May 30, 2012 at 10:16 AM, Adam Jackson <ajax@xxxxxxxxxx> wrote: >> > On 5/30/12 8:05 AM, Sean Paul wrote: >> > >> >> Yes, definitely. The reason I can't set it via xrandr (easily) is >> >> because we look for lvds downclock modes (in i915) on the driver init. >> >> Since the driver initializes way before we have a chance to add a new >> >> mode via xrandr, the driver won't have a downclock mode. >> >> >> >> I suppose the other option is to hack the i915 driver to allow a >> >> downclocked mode to be added after it's been initialized. I haven't >> >> looked into this solution, it might be worth investigating. >> > >> > >> > Just so I'm clear, is what you're looking for "I want this pair of timings, >> > with the driver magically switching between them"? If all you wanted was >> > the lower clock speed all the time you could just, you know, do that, so I >> > assume that's not what you're after. >> > >> >> Yep, you got it. >> >> > If binding two timings together like that is what you want, then that seems >> > like a pretty reasonable device-specific ioctl at first glance. I think the >> > only thing to be careful of would be copying the slower timings into the >> > driver private of the faster, rather than keeping a pointer or copy of the >> > object id, since modes aren't refcounted. >> > >> > How big of a power savings do you see with this? Wondering if it's worth >> > trying to make some common tooling for finding downclocked modes, if it's >> > going to be worthwhile on multiple panels. >> > >> >> I saw about 200mW savings with downclocking enabled. It's hard to say >> how many panels this might apply to, some panels which report >> downclocked states still flicker, and others that don't have it in the >> EDID work just fine (like this Samsung panel). >> >> LVDS downclocking is enabled by default in Fedora and ChromiumOS, so >> making this more accessible might be useful for users of these >> distros. > > I think adding lvds connector properties for downclocking would make > sense. I guess we need and enable knob and a frequency value. At boot time > we'd fill these with the detected values, but then userspace would have > full control (i.e. the enable knob should overwrite the i915 module > options). That way downclocking would also be much easier to test (and > maybe we could try to enable it by default eventually). Excellent, thanks to everyone for the feedback! I'll put together a patch when I get some free cycles. Sean > -Daniel > -- > Daniel Vetter > Mail: daniel@xxxxxxxx > Mobile: +41 (0)79 365 57 48 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel