# NVidia GLX 560M backlight control

## Lustmored

This problem is driving me crazy. I've tried to look everywhere for help, but I simply cannot make my backlight control work. I have all the time full light (thus is too bright in dark environment to work with and drops battery life dramatically).

My notebook is Toshiba Qosmio X770-11C ( http://uk.computers.toshiba-europe.com/innovation/product/Qosmio-X770-11C/1113133/toshibaShop/true/ ):

lspci:

```
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)

00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09)

00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)

00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)

00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 04)

00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b4)

00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b4)

00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b4)

00:1c.5 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6 (rev b4)

00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)

00:1f.0 ISA bridge: Intel Corporation HM65 Express Chipset Family LPC Controller (rev 04)

00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 04)

00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 04)

01:00.0 VGA compatible controller: nVidia Corporation Device 1251 (rev a1)

01:00.1 Audio device: nVidia Corporation GF116 High Definition Audio Controller (rev a1)

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)

03:00.0 Network controller: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)

05:00.0 System peripheral: JMicron Technology Corp. SD/MMC Host Controller (rev 30)

05:00.2 SD Host controller: JMicron Technology Corp. Standard SD Host Controller (rev 30)

05:00.3 System peripheral: JMicron Technology Corp. MS Host Controller (rev 30)

05:00.4 System peripheral: JMicron Technology Corp. xD Host Controller (rev 30)

06:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04)
```

Right now I use nvidia-drivers-290.10-r1 with custom ebuild for nvidiabl-0.73 (just copied one for -0.72 that wasn't working either) on top of gentoo-sources-3.2.5.

Could someone please help me or give me any direction to look for?

cave info:

```
Package Manager Information:

    Package Name              paludis

    Package Version           0.70.2

    Build Date                2012-01-27T20:50:48+0100

    Built with CXX            x86_64-pc-linux-gnu-g++ 4.6.2

    Built with CXXFLAGS        -march=native -O2 -pipe -pedantic

    Built with LDFLAGS        -Wl,-O1 -Wl,--as-needed -Wl,-O2

Environment Information:

    Format                    paludis

    Config dir                /etc/paludis

    Root                      /

    System Root               /

    World file                /var/db/pkg/world

Repository layman:

    format                    unavailable

    location                  /var/db/paludis/repositories/layman

    sync                      tar+http://git.exherbo.org/layman_repositories.tar.bz2

    sync_options              

Repository gentoo:

    format                    e

    location                  /usr/portage

    builddir                  /var/tmp/paludis

    cache                     /usr/portage/metadata/cache

    distdir                   /usr/portage/distfiles

    eapi_when_unknown         0

    eapi_when_unspecified     0

    eclassdirs                /usr/portage/eclass

    layout                    traditional

    manifest_hashes           RMD160 SHA1 SHA256

    names_cache               /usr/portage/.cache/names

    newsdir                   /usr/portage/metadata/news

    profile_eapi_when_unspecified 0

    profile_layout            traditional

    profiles                  /usr/portage/profiles/default/linux/amd64/10.0/desktop/kde

    securitydir               /usr/portage/metadata/glsa

    setsdir                   /usr/portage/sets

    sync                      rsync://rsync.gentoo.org/gentoo-portage

    sync_options              

    thin_manifests            false

    use_manifest              use

    write_cache               /var/cache/paludis/metadata

    Package information

        app-shells/bash       4.2_p20

        dev-java/java-config  2.1.11-r3

        dev-lang/python       2.7.2-r3 3.2.2

        dev-util/ccache       3.1.7

        dev-util/cmake        2.8.7-r3

        dev-util/pkgconfig    0.26

        sys-apps/baselayout   2.1

        sys-apps/openrc       0.9.8.4

        sys-apps/sandbox      2.5

        sys-devel/autoconf    2.13 2.68

        sys-devel/automake    1.11.3 1.9.6-r3

        sys-devel/binutils    2.22-r1

        sys-devel/gcc         4.6.2

        sys-devel/gcc-config  1.5-r2

        sys-devel/libtool     2.4.2

        sys-devel/make        3.82-r3

        sys-freebsd/freebsd-lib (none)

        sys-kernel/linux-headers 3.2

        sys-libs/glibc        2.14.1-r2

        sys-libs/uclibc       (none)
```

xorg.conf (autogenerated by nvidia-drivers):

```
# nvidia-settings: X configuration file generated by nvidia-settings

# nvidia-settings:  version 290.10  (buildmeister@swio-display-x86-rhel47-07.nvidia.com)  Wed Nov 16 18:46:42 PST 2011

Section "ServerLayout"

    Identifier     "Layout0"

    Screen      0  "Screen0" 0 0

    InputDevice    "Keyboard0" "CoreKeyboard"

    InputDevice    "Mouse0" "CorePointer"

    Option         "Xinerama" "0"

EndSection

Section "Files"

EndSection

Section "InputDevice"

    # generated from data in "/etc/conf.d/gpm"

    Identifier     "Mouse0"

    Driver         "mouse"

    Option         "Protocol"

    Option         "Device" "/dev/input/mice"

    Option         "Emulate3Buttons" "no"

    Option         "ZAxisMapping" "4 5"

EndSection

Section "InputDevice"

    # generated from default

    Identifier     "Keyboard0"

    Driver         "kbd"

EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid

    Identifier     "Monitor0"

    VendorName     "Unknown"

    ModelName      "Seiko/Epson 173HT02-T01"

    HorizSync       68.6 - 137.3

    VertRefresh     60.0 - 120.0

    Option         "DPMS"

EndSection

Section "Device"

    Identifier     "Device0"

    Driver         "nvidia"

    VendorName     "NVIDIA Corporation"

    BoardName      "GeForce GTX 560M"

EndSection

Section "Screen"

    Identifier     "Screen0"

    Device         "Device0"

    Monitor        "Monitor0"

    DefaultDepth    24

    Option         "TwinView" "1"

    Option         "TwinViewXineramaInfoOrder" "DFP-2"

    Option         "metamodes" "DFP: nvidia-auto-select +1280+0, CRT: nvidia-auto-select +0+0"

    SubSection     "Display"

        Depth       24

    EndSubSection

EndSection
```

I will gladly provide any other useful details.

----------

## kimmie

Try adding this to your "Device" section:

```
Option         "RegistryDwords" "EnableBrightnessControl=1"
```

I've never used nvidiabl. The setting above seems to be all I need to get it working at the console or in gnome using the laptop brightness keys. gnome-power-manager picks up the brightness up key and not the down for some reason, and displays the brightness level overlay, and gets it wrong. But that seems to be harmless.

----------

## Lustmored

Doesn't help. Still no action upon trying to adjust brightness.

xorg.conf:

```
# nvidia-settings: X configuration file generated by nvidia-settings

# nvidia-settings:  version 290.10  (buildmeister@swio-display-x86-rhel47-07.nvidia.com)  Wed Nov 16 18:46:42 PST 2011

Section "ServerLayout"

    Identifier     "Layout0"

    Screen      0  "Screen0" 0 0

    InputDevice    "Keyboard0" "CoreKeyboard"

    InputDevice    "Mouse0" "CorePointer"

    Option         "Xinerama" "0"

EndSection

Section "Files"

EndSection

Section "InputDevice"

    # generated from data in "/etc/conf.d/gpm"

    Identifier     "Mouse0"

    Driver         "mouse"

    Option         "Protocol"

    Option         "Device" "/dev/input/mice"

    Option         "Emulate3Buttons" "no"

    Option         "ZAxisMapping" "4 5"

EndSection

Section "InputDevice"

    # generated from default

    Identifier     "Keyboard0"

    Driver         "kbd"

EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid

    Identifier     "Monitor0"

    VendorName     "Unknown"

    ModelName      "Seiko/Epson 173HT02-T01"

    HorizSync       68.6 - 137.3

    VertRefresh     60.0 - 120.0

    Option         "DPMS"

EndSection

Section "Device"

    Identifier     "Device0"

    Driver         "nvidia"

    VendorName     "NVIDIA Corporation"

    BoardName      "GeForce GTX 560M"

    Option         "RegistryDwords" "EnableBrightnessControl=1"

EndSection

Section "Screen"

    Identifier     "Screen0"

    Device         "Device0"

    Monitor        "Monitor0"

    DefaultDepth    24

    Option         "TwinView" "1"

    Option         "TwinViewXineramaInfoOrder" "DFP-2"

    Option         "metamodes" "DFP: nvidia-auto-select +1280+0, CRT: nvidia-auto-select +0+0"

    SubSection     "Display"

        Depth       24

    EndSubSection

EndSection
```

----------

## Lustmored

I've moved to nouveau to try it.

It kinda works for this hardware, but still without any backlight control  :Sad: 

Nobody?

----------

## keenblade

Is  ACPI_TOSHIBA set in your kernel?

I think for brightness control, you have to use toshiba_acpi module. It will only work, if toshiba supports linux for your machine.

----------

## Lustmored

It's set. Changes nothing  :Sad: 

----------

## keenblade

There seems to be  a bios update for your toshiba. I would try to update bios before any other thing.

----------

## Lustmored

"Unfortunately" I already have that update.

But there is certainly something in my BIOS that linux doesn't like.

Eg. keyboard backlight - kernel turns it off at boot. But when I shut down windows unclearly just before - it doesn't, so that backlight works   :Shocked: 

But it's keyboard backlight - even after unclear windows shut down I cannot switch display brightness anyhow  :Sad: 

[EDIT]

DEFINITELY there is something with kernel<->BIOS:

```
vindor acpi_video0 # cat brightness 

0

vindor acpi_video0 # cat max_brightness 

7

vindor acpi_video0 # cat actual_brightness 

7
```

shows up for each ACPI. I've set to 0 to check if actual will be updated.

----------

## Lustmored

It started to work   :Confused: 

Just like that.

I've yesterday removed ACPI_TOSHIBA from kernel and uninstalled nvidiabl.

Than I've connected 2nd monitor, generated new xorg.conf via nvidia-settings, reloaded xdm and... my display dimmed! woah.

So it's as clean situation as possible, where at the beginning it wasn't working and now magically it started.

Couldn't explain - would really like to find out the reason it have started to work, so that others could benefit from it.

Any ideas where to look for?

xorg.conf:

```
# nvidia-settings: X configuration file generated by nvidia-settings

# nvidia-settings:  version 295.20  (buildmeister@swio-display-x86-rhel47-05.nvidia.com)  Mon Feb  6 22:13:16 PST 2012

Section "ServerLayout"

    Identifier     "Layout0"

    Screen      0  "Screen0" 0 0

    InputDevice    "Keyboard0" "CoreKeyboard"

    InputDevice    "Mouse0" "CorePointer"

    Option         "Xinerama" "0"

EndSection

Section "Files"

EndSection

Section "InputDevice"

    # generated from data in "/etc/conf.d/gpm"

    Identifier     "Mouse0"

    Driver         "mouse"

    Option         "Protocol"

    Option         "Device" "/dev/input/mice"

    Option         "Emulate3Buttons" "no"

    Option         "ZAxisMapping" "4 5"

EndSection

Section "InputDevice"

    # generated from default

    Identifier     "Keyboard0"

    Driver         "kbd"

EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid

    Identifier     "Monitor0"

    VendorName     "Unknown"

    ModelName      "Seiko/Epson 173HT02-T01"

    HorizSync       68.6 - 137.3

    VertRefresh     60.0 - 120.0

    Option         "DPMS"

EndSection

Section "Device"

    Identifier     "Device0"

    Driver         "nvidia"

    VendorName     "NVIDIA Corporation"

    BoardName      "GeForce GTX 560M"

EndSection

Section "Screen"

    Identifier     "Screen0"

    Device         "Device0"

    Monitor        "Monitor0"

    DefaultDepth    24

    Option         "TwinView" "1"

    Option         "TwinViewXineramaInfoOrder" "DFP-2"

    Option         "metamodes" "DFP: nvidia-auto-select +1280+0, CRT: nvidia-auto-select +0+0"

    SubSection     "Display"

        Depth       24

    EndSubSection

EndSection
```

----------

## keenblade

 *Lustmored wrote:*   

> It started to work  
> 
> ...
> 
> Couldn't explain - would really like to find out the reason it have started to work, so that others could benefit from it.
> ...

 

You have just updated nvidia-drivers to version 295.20 from 290.10. That's why it started to work, I think.

----------

## Lustmored

No I didn't - I update regularly.

And after reboot to windows and back (nothing else) it doesn't work again   :Confused: 

I'm loosing my patience to this   :Mad:  Hope toshiba at some day will do anything at all to support linux   :Mad: 

----------

