You are not logged in.

#1 2013-02-04 22:16:16

aitigie
Member
Registered: 2013-02-04
Posts: 8

Backlight stuck on full with Toshiba Satellite L770

As the title says, my backlight's stuck on full. I've tried quite a few things, which I'll list here:

I do have a device in /sys, located at

/sys/class/backlight/acpi_video0/brightness

I can read a value from it, or send a value to it, and it will remain persistant accross a reboot. However, it doesn't do anything besides sit there and look pretty.

The fact that it's called acpi_video0 implies that this is a generic acpi driver, rather than the toshiba specific driver. Unfortunately, running

modprobe -v toshiba_acpi
insmod /lib/modules/3.7.5-1-ARCH/kernel/drivers/platform/x86/toshiba_acpi.ko.gz 
modprobe: ERROR: could not insert 'toshiba_acpi': No such device

Which is annoying. So, then I tried passing this to the kernel:

acpi_osi=Linux acpi_backlight=vendor

This booted fine, but my /sys file completely disappeared, rather than renaming itself. Querying lsmod showed that the toshiba_acpi module wasn't running.

Next, I tried the nvidia_bl driver, which apparently works sometimes.

modprobe -v nvidia_bl
insmod /lib/modules/3.7.5-1-ARCH/extramodules/nvidia_bl.ko 
modprobe: ERROR: could not insert 'nvidia_bl': No such device

No such luck!

Okay, fine. I'll try talking to the video card directly, and see if that works.

setpci -v -s 01:00.0 F4.B=0
0000:01:00.0 @f4 00

Which is nice, but it didn't change the backlight.

The strangest thing is, the acpi functions that usually break on other machines work fine for me. I can see my CPU temperature, fan speed, and battery level without any trouble at all. I can even switch the backlight off, if I want to; I just can't dim it.

Some extra info:

[alan@purplecouch ~]$ lspci | grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation Device 0dec (rev a1)

This is interesting, as nvidia-settings reports my card is a Geforce GT 525m, whereas lspci sees it as generic. I'm not sure if this is related.

Offline

#2 2013-02-05 00:15:59

the sad clown
Member
From: 192.168.0.X
Registered: 2011-03-20
Posts: 833

Re: Backlight stuck on full with Toshiba Satellite L770

Which BIOS do you have (Toshiba or Phoenix)?


I laugh, yet the joke is on me

Offline

#3 2013-02-05 00:18:13

aitigie
Member
Registered: 2013-02-04
Posts: 8

Re: Backlight stuck on full with Toshiba Satellite L770

My splash screen says TOSHIBA in big red letters, but if I go to the Setup menu it shows up as American Megatrends.

Offline

#4 2013-02-05 01:08:35

the sad clown
Member
From: 192.168.0.X
Registered: 2011-03-20
Posts: 833

Re: Backlight stuck on full with Toshiba Satellite L770

If that is the case, the Toshiba specific drivers might not be appropriate.  It seems acpi problems with AMI BIOS are known:

http://comments.gmane.org/gmane.linux.acpi.devel/50053
http://linux.toshiba-dme.co.jp/pipermai … 00540.html

I don't have a solution for you.


I laugh, yet the joke is on me

Offline

#5 2013-02-05 01:10:54

aitigie
Member
Registered: 2013-02-04
Posts: 8

Re: Backlight stuck on full with Toshiba Satellite L770

Thanks anyways. That first link is interesting, as he mentions closing the lid crashes his system - mine hibernates fine out of the box, even though I have the same model.

Offline

#6 2013-02-05 01:16:03

the sad clown
Member
From: 192.168.0.X
Registered: 2011-03-20
Posts: 833

Re: Backlight stuck on full with Toshiba Satellite L770

aitigie wrote:

Thanks anyways. That first link is interesting, as he mentions closing the lid crashes his system - mine hibernates fine out of the box, even though I have the same model.

It's been almost two years, so I'm sure changes in the kernel and modules have made some improvements.  In fact, I was just going to suggest checking the kernel bugzilla for your problem.  This is the closest to your issue I could find (same BIOS and issue)

https://bugzilla.kernel.org/show_bug.cgi?id=42942

I've actually seen people have luck contacting the vendor for help: https://bbs.archlinux.org/viewtopic.php?id=125262

This resulted in Sentelic touchpads actually working out of box for me.

Last edited by the sad clown (2013-02-05 01:18:33)


I laugh, yet the joke is on me

Offline

#7 2013-02-05 01:19:47

aitigie
Member
Registered: 2013-02-04
Posts: 8

Re: Backlight stuck on full with Toshiba Satellite L770

Well, thanks for the answers! It's not what I wanted to hear, as I've just spent 2 days setting up arch and awesome, but if I can't change the backlight then it just won't ever be useable.

Offline

#8 2013-02-05 02:57:27

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 12,438

Re: Backlight stuck on full with Toshiba Satellite L770

Ages and ages ago, I wrote an ebuild for Gentoo (the equivalence of an Arch  MAKEPKG)  for something called toshiba-smi; a kernel module for the SMI bus for Toshiba.
https://bugs.gentoo.org/show_bug.cgi?id=199861

I've no idea if it works anymore, or if the referenced sites still exist.  My Toshiba died years ago.  The SMI bus was used for a while for things like temperature sensors, airflow sensors, and in the case of Toshiba, backlight brightness controls.  I do not know if your machine still uses an SMI bus.  You might look into it.

To use this, there are some user space tools.  There was one called s1bl which was a command line driven application.  I had written a GUI version that,IIRC, was based on Qt.

I still have all of the source for the driver, the CLI tool, and (I think) my code.  Let me know if you need any of it -- but, I cannot support you as I no longer have a Toshiba; it is ancient and may no longer compile; and your machine may not actually have an SMI bus.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Like you, I have no idea what you are doing, but I am pretty sure it is wrong...Jasonwryan
----
How to Ask Questions the Smart Way

Online

#9 2013-02-05 03:11:11

aitigie
Member
Registered: 2013-02-04
Posts: 8

Re: Backlight stuck on full with Toshiba Satellite L770

Thanks! I'll give this a try tomorrow, when I'm back in Arch land - I have some windows related work to do tonight, but I'll let you know how it works out.

Offline

#10 2013-02-05 23:42:59

aitigie
Member
Registered: 2013-02-04
Posts: 8

Re: Backlight stuck on full with Toshiba Satellite L770

Hate to bother you, but the source file linked in your ebuild isn't hosted there anymore. Would you mind re-hosting it? I'm not sure if it will benefit me, as I haven't been able to effectively google whether or not my laptop has an SMI bus, but I think it's worth a shot.


However, does the fact that other apci functions work as intended indiciate that I don't have one?

Offline

#11 2013-02-06 00:41:19

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 12,438

Re: Backlight stuck on full with Toshiba Satellite L770

aitigie wrote:

Hate to bother you, but the source file linked in your ebuild isn't hosted there anymore. Would you mind re-hosting it?

I will send it by PM when I get home in a few hours.

I'm not sure if it will benefit me, as I haven't been able to effectively google whether or not my laptop has an SMI bus, but I think it's worth a shot.
However, does the fact that other apci functions work as intended indiciate that I don't have one?

IIRC, no.  That laptop used ACPI for lid and power switches.  I think the thermal and battery management stuff was ACPI as well.  I could be wrong abouth the thermal sensors.  The backlight was definitely SMI.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Like you, I have no idea what you are doing, but I am pretty sure it is wrong...Jasonwryan
----
How to Ask Questions the Smart Way

Online

#12 2013-02-06 03:58:40

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 12,438

Re: Backlight stuck on full with Toshiba Satellite L770

aitigie:

Check your email


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Like you, I have no idea what you are doing, but I am pretty sure it is wrong...Jasonwryan
----
How to Ask Questions the Smart Way

Online

#13 2013-02-07 05:03:58

aitigie
Member
Registered: 2013-02-04
Posts: 8

Re: Backlight stuck on full with Toshiba Satellite L770

I feel a bit silly - it seems to compile fine, but it's not leaving the module anywhere I can find it! Locate can't seem to find it, either -

[alan@purplecouch toshiba_smi]$ sudo make -C /usr/src/linux-3.7.5-1-ARCH/ SUBDIRS=$PWD modules_install
make: Entering directory `/usr/src/linux-3.7.5-1-ARCH'
  DEPMOD  3.7.5-1-ARCH
make: Leaving directory `/usr/src/linux-3.7.5-1-ARCH'
[alan@purplecouch toshiba_smi]$ sudo depmod -a
[alan@purplecouch toshiba_smi]$ sudo modprobe toshiba_smi
modprobe: FATAL: Module toshiba_smi not found.
[alan@purplecouch toshiba_smi]$ sudo updatedb
[alan@purplecouch toshiba_smi]$ sudo locate toshiba_smi
/home/alan/toshibaBacklight/toshiba_smi
/home/alan/toshibaBacklight/toshiba_smi/.built-in.o.cmd
/home/alan/toshibaBacklight/toshiba_smi/.tmp_versions
/home/alan/toshibaBacklight/toshiba_smi/Makefile
/home/alan/toshibaBacklight/toshiba_smi/README
/home/alan/toshibaBacklight/toshiba_smi/built-in.o
/home/alan/toshibaBacklight/toshiba_smi/toshiba_smi.c

EDIT: Looking at the output of Make again, I don't think it's compiling at all. Should I edit the makefile in some way?


I'm not really sure what's going on here, any ideas?

Last edited by aitigie (2013-02-07 05:04:49)

Offline

#14 2013-02-11 15:55:59

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 12,438

Re: Backlight stuck on full with Toshiba Satellite L770

Sorry for taking so long to get back to you -- I've been reeducating myself on kernel modules..  You need to copy the module to where your other kernel modules live prior to doing the depmod.   Regardless, if the make is not producing a module, that is moot.  I am at $DAYJOB right now, I'll look at your make invocation and get back to you sometime today.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Like you, I have no idea what you are doing, but I am pretty sure it is wrong...Jasonwryan
----
How to Ask Questions the Smart Way

Online

#15 2013-02-12 03:33:45

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 12,438

Re: Backlight stuck on full with Toshiba Satellite L770

Okay, not so good news.  I rewrote the Makefile (Okay, I plagiarized it from elsewhere in these Forums smile ).  It looks like the code uses a structure to build a /proc entry.  That structure has changed (apparently).   I will look and see if it can be patched.

ewaller@odin:~/devel/toshibaBacklight/toshiba_smi[2] 1037 %cat Makefile
obj-m += toshiba_smi.o

all:
	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

clean:
	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
ewaller@odin:~/devel/toshibaBacklight/toshiba_smi 1038 %make
make -C /lib/modules/3.7.6-1-ARCH/build M=/home/ewaller/devel/toshibaBacklight/toshiba_smi modules
make[1]: Entering directory `/usr/src/linux-3.7.6-1-ARCH'
  CC [M]  /home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.o
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c: In function 'toshiba_proc_write':
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:333:5: warning: format '%d' expects argument of type 'int *', but argument 3 has type 'long unsigned int *' [-Wformat]
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c: In function 'create_proc_entries':
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:356:17: error: 'struct proc_dir_entry' has no member named 'owner'
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:363:28: error: 'struct proc_dir_entry' has no member named 'owner'
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:372:20: error: 'struct proc_dir_entry' has no member named 'owner'
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:381:29: error: 'struct proc_dir_entry' has no member named 'owner'
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:390:24: error: 'struct proc_dir_entry' has no member named 'owner'
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:399:25: error: 'struct proc_dir_entry' has no member named 'owner'
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:408:23: error: 'struct proc_dir_entry' has no member named 'owner'
make[2]: *** [/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.o] Error 1
make[1]: *** [_module_/home/ewaller/devel/toshibaBacklight/toshiba_smi] Error 2
make[1]: Leaving directory `/usr/src/linux-3.7.6-1-ARCH'
make: *** [all] Error 2
ewaller@odin:~/devel/toshibaBacklight/toshiba_smi[2] 1039 %

Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Like you, I have no idea what you are doing, but I am pretty sure it is wrong...Jasonwryan
----
How to Ask Questions the Smart Way

Online

#16 2013-02-12 04:09:23

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 12,438

Re: Backlight stuck on full with Toshiba Satellite L770

Okay, the owner member has been deprecated and is not really needed (according to the Interwebs, it caused some race conditions so it was worked around)

Now, I am having trouble because it seems to use 32 bit in-line assembly:

/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:181: Error: operand type mismatch for `push'
/home/ewaller/devel/toshibaBacklight/toshiba_smi/toshiba_smi.c:184: Error: operand type mismatch for `pop'

Now, how to work around that?


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Like you, I have no idea what you are doing, but I am pretty sure it is wrong...Jasonwryan
----
How to Ask Questions the Smart Way

Online

#17 2013-02-12 17:02:22

aitigie
Member
Registered: 2013-02-04
Posts: 8

Re: Backlight stuck on full with Toshiba Satellite L770

Unfortunately, I've got absolutely no idea. Thank you for all your help with this, though!

Offline

Board footer

Powered by FluxBB