what is required to support a new laptop?

matt sendtomatt at gmail.com
Mon Feb 25 01:17:35 UTC 2013


On 02/24/13 17:04, Eitan Adler wrote:
> On 24 February 2013 19:57, matt <sendtomatt at gmail.com> wrote:
>> On 01/29/13 10:24, Ian Smith wrote:
>>> On Tue, 29 Jan 2013 12:46:43 -0500, Eitan Adler wrote:
>>>  > On 29 January 2013 12:29, Ian Smith <smithi at nimnet.asn.au> wrote:
>>>  > > Ah right.  I don't suppose kldload -v shows anything useful about the
>>>  > > problem loading it?  Ah, never mind, it may be obvious .. lightly
>>>  > > skimming your asl.y530.gz, I recalled folks having to patch something
>>>  > > for Lenovo rather than IBM OEMIDs .. hunt, hunt .. ok, here it is:
>>>  > >
>>>  > > http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/164538
>>>  >
>>>  >
>>>  > This is after the install of a patched acpi_ibm
>>>  > [3500 root at gravity /usr/src/sys/modules/acpi ]#kldload -v acpi_ibm
>>>  > Loaded acpi_ibm, id=12
>>>
>>> Which looks maybe successful, on the face of it? ..
>>>
>>>  > [5507 eitan at gravity (100)% ~ !1!]%sysctl dev.acpi_ibm
>>>  > sysctl: unknown oid 'dev.acpi_ibm'
>>>
>>> .. but clearly wasn't.
>>>
>> The Y series doesn't have the HKEY stuff, or it's not the same. You want
>> acpi_video (as does every new Lenovo, thinkpad or not).
>>
>> The problem is Lenovo is putting the "correct" _BCL/_BCM under "PEG"
>> devices....section from your dsdt follows, temporary workaround test
>> after that
> ...
>
>> This would be under _SB.PCI0.PEG0.VGA
>>
>> Try acpi_call -p '\_SB.PCI0.PEG0.VGA.LCD._BCL'
>> then
>> acpi_call -p '\_SB.PCI0.PEG0.VGA.LCD._BCL' -i 50
>>
>> Experiment with the numbers.
>>
>> We need to fix acpi_video so it attaches to the correct _BCL on these
>> laptops.
> Unknown object type '4'
>
> regardless of what number is passed to -i.  Same with the first call.
>

I made a typo :( Change the second call from _BCL to _BCM.
The first call _BCL would "trapdoor" a thinkpad, and it returns an
unknown object type 4. Acpi call has some formatting options to display
this "object", it's usually (or should be) a list of valid backlight
levels. The second call should set the value. _BQC will return the
current value. If that does not work, also try replacing PEG0 with PEG1.


Matt


More information about the freebsd-acpi mailing list