Opened 4 years ago

Closed 3 years ago

Last modified 3 years ago

#16341 closed bug (fixed)

Screen Preferences - bright slider don't work on Intel GMA (GM45)

Reported by: un_spacyar Owned by: pulkomandy
Priority: normal Milestone: Unscheduled
Component: Drivers/Graphics/intel_extreme/g45 Version: R1/beta2
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

Hi. I had a laptop with the Intel graphics card. Haiku identify that as GMA (GM45) in the Screen Preferences. The actual Intel driver works well, but unfortunatelly, the bright control don't work. I can move the slide to either side, but the screen bright keep in the same level.

listdev command identify the video hardware as this:

device Display controller [3|80|0]

vendor 8086: Intel Corporation device 2a43: Mobile 4 Series Chipset Integrated Graphics Controller

device Display controller (VGA compatible controller, VGA controller) [3|0|0]

vendor 8086: Intel Corporation device 2a42: Mobile 4 Series Chipset Integrated Graphics Controller

I'm using hrev54379 (x86_gcc2)

Attachments (1)

IE_ouput.jpeg (72.3 KB ) - added by un_spacyar 4 years ago.
ie_reg 0x61250 and 0x61254 ouput

Download all attachments as: .zip

Change History (9)

comment:1 by pulkomandy, 4 years ago

Hi,

Sorry for the delay.

Can you tell me the output of these two commands in KDL:

ie_reg 0x61250
ie_reg 0x61254

These are the two registers that control the backlight for intel video cards. But on some machines, the manufacturer decided to not use this and connect the backlight control elsewhere. In that case, our attempts to change the brightness using this method will not work, of course. We have to find the correct way for that machine, then. Possibly ACPI could offer a better way to do this.

comment:2 by un_spacyar, 4 years ago

Hi. No problem. Thanks for the answer.

How I can trigger a KDL to check that commands? Fortunately, Haiku is pretty solid in this computer :-)

comment:3 by un_spacyar, 4 years ago

Hi, I managed to get it. There is the result:

ie_reg 0x61250 intel_extreme register 0x61250 value: 0xe0000000 (3758096384)

ie_reg 0x61254 intel_extreme register 0x61254 value: 0x0 (0)

Just in case, I also attach an image with the KDL output.

by un_spacyar, 4 years ago

Attachment: IE_ouput.jpeg added

ie_reg 0x61250 and 0x61254 ouput

comment:4 by pulkomandy, 4 years ago

Thanks. So, the good news is I have a machine with the same problem here (interestingly the hardware shortcut to change the brightness is working). The bad news is I didn't find yet where the brightness is stored in this case.

For my own reference: reproducible on Dell Inspiron 1525 (GM965).

The meaning of the register values (probably only for my own reference as well):

  • Backlight control PLL enabled, legacy mode enabled (so backlight can also be set from a register directly in PCI), backlight control on pipe B
  • Both duty cycle and period are set to 0, which makes no sense when the PLL is enabled
  • Trying to change the register values does not have any effect.
  • I did not try changing the value using the legacy register, which is not as easily accessible (it is at addresses F4-F7 in the PCI registers, and writing the first byte with a value between 0 and 255 should work if it is being used in some way).

comment:5 by un_spacyar, 4 years ago

Not sure if it helps, but on this laptop, the keyboard shortcut to increase / decrease bright ONLY works with this trick:

When I change some screen configuration (like refresh rate, or resolution) and press "Apply" button, the screen go blank during a second. If I press the keyboard shortcut during this second, the bright control works.

If I press the keyboard shortcut in any other moment, doesn't work.

I notice the same problem under Linux.

comment:6 by un_spacyar, 3 years ago

Hi. Please, close this ticket. After the Intel Extreme driver improvements from past year, now the bright slider works perfectly. Thank you!!!

comment:7 by humdinger, 3 years ago

Resolution: fixed
Status: newclosed

Thanks for the follow-up.

comment:8 by korli, 3 years ago

Hi, could you please check that everything works as expected on a current hrev?

Note: See TracTickets for help on using tickets.