[PATCH] drm: Add downclock quirk for Samsung LTN121AT10-301

Sean Paul seanpaul at chromium.org
Wed May 30 08:21:32 PDT 2012


On Wed, May 30, 2012 at 10:16 AM, Adam Jackson <ajax at redhat.com> 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.

Sean



> - ajax


More information about the dri-devel mailing list