Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Jul 2011 18:21:56 +0300
From:      Andriy Gapon <avg@FreeBSD.org>
To:        Vitaly Magerya <vmagerya@gmail.com>
Cc:        freebsd-acpi@FreeBSD.org
Subject:   Re: (Missing) brightness controls of an Atom N455-based netbook
Message-ID:  <4E1C6694.6050706@FreeBSD.org>
In-Reply-To: <CAL409KwHccndSa_venYqMdteJd7x3WFv5rgo6KxJ=N%2Bvtow1Nw@mail.gmail.com>
References:  <CAL409KwHccndSa_venYqMdteJd7x3WFv5rgo6KxJ=N%2Bvtow1Nw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
on 11/07/2011 19:08 Vitaly Magerya said the following:
> Andriy Gapon <avg@freebsd.org> wrote:
>>> From what I heard this isn't a problem with FreeBSD ACPI code, it's
>>> a problem with Samsung firmware. AFAIK to get brightness controls
>>> working on Windows you need to setup Samsung software that uses
>>> undocument BIOS interface for it's function.
>>>
>>> Linux has what appears to be a reverse-engineered driver [1] that
>>> does the same. Someone (probably me) needs to port it.
>>
>> Maybe, maybe not...  Can you please verify which driver Linux actually uses on
>> your system?
> 
> Nothing but generic ACPI; samsung-laptop dirver is not used because
> it doesn't white-list my laptop model (and for some reason fails
> to attach when I load it with force=1, even though my BIOS definitely
> has the signatures it is looking for).
> 
> At any rate, brightness controls don't work under Linux.

I officially give up on this case then :-)
Maybe you'd want to report this problem to Linux folks too.
If they come up with a fix we may borrow it from them.

>> So I can see how this behavior can easily confuse our acpi_video driver.
>> I see that Linux acpi video driver has some quirks in it, but not sure if it is
>> able to handle this kind of issues.  I would doubt that.
>>
>> Maybe you would feel adventurous enough to experiment with hacking your DSDT some
>> more.  For a start I would just try to remove that level % 10 == 0 check.
> 
> Sure. I removed those checks, but there isn't much difference.
> Here's a sample transcript:
> 
>     # sysctl hw.acpi.video
>     hw.acpi.video.crt0.active: 0
>     hw.acpi.video.lcd0.active: 0
>     hw.acpi.video.lcd0.brightness: 5
>     hw.acpi.video.lcd0.fullpower: 100
>     hw.acpi.video.lcd0.ecoomy: 5
>     hw.acpi.video.lcd0.levels: 100 5 15 24 30 45 60 80
>     hw.acpi.video.ext0.active: 0
>     hw.acpi.video.out0.active: 0
>     # sysctl hw.acpi.video.lcd0.brightness=45
>     hw.acpi.video.lcd0.brightness: 5 -> 45
>     # sysctl hw.acpi.video.lcd0.brightness=100
>     hw.acpi.video.lcd0.brightness: 45 -> 100
> 
> No brightness changes actually occur during this.


-- 
Andriy Gapon



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