Yet another acpi_call brightness control question...

I have a Clevo "kudu professional" laptop and the brightness controls do not work in FreeBSD. I also have Linux installed. Is there a way to find out what ACPI methods are being called in linux when adjusting brightness?

I have tried loading acpi_video(), acpi_ibm(), acpi_asus(), acpi_wmi() modules but they didn't seem to do anything.

There are several mentions of brightness in the asl file produced from acpidump(), but I can't call the methods using acpi_call. There is another method, BCM, commented as "brightness control method," but I can't call it either.

Code:
Method (_BQC, 0, NotSerialized)  // _BQC: Brightness Query Current
  {
  If (\_SB.WMI.HKDR)
  {
  If (\_SB.PCI0.LPCB.EC.ECOK)
  {
  Store (\_SB.PCI0.LPCB.EC.OEM2, Local0)
  If (LLess (OSYS, 0x07DC))
  {
  If (LEqual (Local0, 0x07))
  {
  Return (0x64)
  }
  Return (Multiply (Local0, 0x0E))
  }
  Return (Multiply (Local0, 0x0A))
  }
  Else
  {
  Return (0x64)
  }
  }
  Else
  {
  Return (BRTL)
  }
  }

I thought I could use acpi_call to call _BQC, but I'm not sure I understand the syntax. Just going by the brackets, I guessed the "path" to BQC. Maybe I've got it wrong?

Code:
acpi_call -v -p "\SB.PCI0.GFX0.LCD0.BQC"
Path: \_SB.PCI0.GFX0.LCD0.BQC
Number of arguments: 0
Status: 5
Result: Unknown object type '0'

I've attached the entire asl file if anybody wants to look at it.
 

Attachments

  • foo.txt
    566.8 KB · Views: 434
acpi_video already calls those methods. So it should work. Maybe the brightness keys just don't work. Try setting the sysctl hw.acpi.video.0.brightness yourself (see acpi_video(4)).
 
Oops. Forgot to mention that I'd already tried sysctl, but it did not affect screen brightness.

Code:
sysctl hw.acpi.video.lcd0.brightness=20
hw.acpi.video.lcd0.brightness: 80 -> 20
 
Back
Top