You are not logged in.

#1 2011-09-11 09:37:42

Dronte
Member
Registered: 2011-09-11
Posts: 8

Intel HD Graphics 3000 backlight [PartlySolved]

Hi!
I've got HP Pavilion g6 laptop with Intel HD Graphics 3000 on Core i5. And it works correctly, except for backlight.

# echo 5 > /sys/class/backlight/acpi_video0/brightness 

Gives no effect, thow /sys/class/backlight/acpi_video0/brightness is 5 now;
Besides acpi_video0 there is acpi_video1 and acpi_video2. I didn't succeed to do the same with them.


acpi_osi=Linux and acpi_backlight=vendor
as kernel parametrs didn't help me.

Moreover

#setpci -s 00:02.0 F4.B=05 

didn't have an effect.
Im going to build a custom kernel now. Plese tell me, what moudules are need to be compiled in, and how do i need to use them.


Also on mu laptop i have Radeon HD 6470M.

#modprobe radeon
#echo DIS > /sys/kernel/debug/vgaswitcheroo/switch

Takes an effect, that system losts control over screen.
Help please.

PS Sorry of my poor english.
PPS I've chosen Laptop Issues topic, and i'm not shure, I was right.

Last edited by Dronte (2011-09-18 08:40:36)

Offline

#2 2011-09-11 10:32:02

ViruSzZ
Member
From: The Streets
Registered: 2010-10-14
Posts: 202
Website

Re: Intel HD Graphics 3000 backlight [PartlySolved]

Welcome to the Arch Forums @Dronte.

I have been having similar issues with my backlight on my HP G62 lappy (Intel HD along with ATI HD 5470). Basically, if I add acpi_osi=Linux and acpi_backlight=vendor to the kernel line I'm unable to control my backlight like you.

So, I'm disabling my discrete graphic with an acpi call and using the Intel one only. Once, I remove those parameters and disable the ati card, I'm able to set the brightness in /sys/class/backlight/acpi_video0/brightness or I can use the 'xbacklight' utility.

So, my idea is to try disabling the ati card, remove the acpi parameters from the kernel line, make sure you have some echo 1 > /sys/class/backlight/acpi_video0/brightness in your rc.local or you may end up with no light at all and try again and see if that works for you.

And just for my curiosity, are your Fn keys working? Also, how the acpi events are being handled, are they working just fine?

Take care


Their Momma Made Em, Their Momma Gave em & now she can`t even SAVE`em | My WebLog

Offline

#3 2011-09-11 11:12:09

Dronte
Member
Registered: 2011-09-11
Posts: 8

Re: Intel HD Graphics 3000 backlight [PartlySolved]

What do you mean by "disabling the card?" I use  sudo echo OFF >> /sys/kernel/debug/vgaswitcheroo/switch in rc.local


On fn+f12 key I've got wireless switching on/off and it works.
If I run acpi_listen
and press fn+f2 and fn+f3 i'll get the message:

video LCD1 00000087 00000000
video DD02 00000087 00000000

video LCD1 00000086 00000000
video DD02 00000086 00000000

Put these events are not connected with anything.
pressing other fn+f keys has no effect.

Offline

#4 2011-09-12 20:59:29

Dronte
Member
Registered: 2011-09-11
Posts: 8

Re: Intel HD Graphics 3000 backlight [PartlySolved]

I've looked through the xf86-video-intel and found a function there

static void
intel_output_backlight_set(xf86OutputPtr output, int level)
{
	struct intel_output *intel_output = output->driver_private;
	char path[BACKLIGHT_PATH_LEN], val[BACKLIGHT_VALUE_LEN];
	int fd, len, ret;

	if (level > intel_output->backlight_max)
		level = intel_output->backlight_max;
	if (! intel_output->backlight_iface || level < 0)
		return;

	len = snprintf(val, BACKLIGHT_VALUE_LEN, "%d\n", level);
	sprintf(path, "%s/%s/brightness",
		BACKLIGHT_CLASS, intel_output->backlight_iface);
	fd = open(path, O_RDWR);
	if (fd == -1) {
		xf86DrvMsg(output->scrn->scrnIndex, X_ERROR, "failed to open %s for backlight "
			   "control: %s\n", path, strerror(errno));
		return;
	}

	ret = write(fd, val, len);
	if (ret == -1) {
		xf86DrvMsg(output->scrn->scrnIndex, X_ERROR, "write to %s for backlight "
			   "control failed: %s\n", path, strerror(errno));
	}

	close(fd);
}

I didn't find, where this function sets the backlight. It only prints the information.

Last edited by Dronte (2011-09-12 21:01:03)

Offline

#5 2011-09-14 17:31:03

MadCat_X
Member
Registered: 2009-10-08
Posts: 189

Re: Intel HD Graphics 3000 backlight [PartlySolved]

I guess it sets the brightness here

ret = write(fd, val, len);

It looks like the X.org driver uses the sysfs to tell the kernel driver to change the brightness.

I've been observing similar difficulties on Lenovo Z570 with HD3000 and nV GT520. Do you see any of these in dmesg?

ACPI: Failed to switch the brightness
ACPI Error: Current brightness invalid (20110413/video-377)

Last edited by MadCat_X (2011-09-14 17:31:21)

Offline

#6 2011-09-17 16:23:04

Dronte
Member
Registered: 2011-09-11
Posts: 8

Re: Intel HD Graphics 3000 backlight [PartlySolved]

Yes, you are probably right.
But I don't see any messeges about brightness in dmesg.
Where to search the answer?

Last edited by Dronte (2011-09-17 19:39:39)

Offline

#7 2011-09-17 20:31:39

Dronte
Member
Registered: 2011-09-11
Posts: 8

Re: Intel HD Graphics 3000 backlight [PartlySolved]

I found one solution! There is an intel-gpu-tools-git package avalible in AUR

After installing running

 sudo intel_backlight N

where N is an integer between 0 and 100 changes backlight.

I know thet's not a very good solution.

Offline

#8 2011-11-02 12:53:25

manouchk
Member
Registered: 2008-07-29
Posts: 306

Re: Intel HD Graphics 3000 backlight [PartlySolved]

I have the same problem with a intel HD Graphics 3000. The problem is the kernel. I installed custom kerne kernel-kamal from aur and baklight was supported.

http://aur.archlinux.org/packages.php?ID=51329

I added this entry to /boot/grubmenu.lst:

# (0) Arch Linux kamal
title  Arch Linux Kamal
root   (hd0,6)
kernel /boot/vmlinuz-linux-kamal root=/dev/sda7 ro
initrd /boot/initramfs-linux-kamal.img

Iused yaourt to compile linux-kamal I also had to increase /tmp size from  1 giga to 2 giga. It is done by modifying /etc/fstab, adding options size=2G for /tmp mount point:

more /etc/fstab
# 
# /etc/fstab: static file system information
#
# <file system>	<dir>	<type>	<options>	<dump>	<pass>
tmpfs		/tmp	tmpfs	nodev,nosuid,size=2G	0	0

Last edited by manouchk (2011-11-02 13:04:20)

Offline

#9 2011-11-03 20:02:45

userlander
Member
Registered: 2008-08-23
Posts: 413

Re: Intel HD Graphics 3000 backlight [PartlySolved]

MadCat_X wrote:

I guess it sets the brightness here

ret = write(fd, val, len);

It looks like the X.org driver uses the sysfs to tell the kernel driver to change the brightness.

I've been observing similar difficulties on Lenovo Z570 with HD3000 and nV GT520. Do you see any of these in dmesg?

ACPI: Failed to switch the brightness
ACPI Error: Current brightness invalid (20110413/video-377)

Hi MadCat_X - I have z570 and have seen those ACPI messages when trying to set the brightness. I finally used intel-gpu-tools-git as Dronte suggested & that works, but no Fn support. Do you have Fn brightness & other functions working? Are you noticing any other ACPI issues? thx

Offline

#10 2011-11-04 00:02:06

MadCat_X
Member
Registered: 2009-10-08
Posts: 189

Re: Intel HD Graphics 3000 backlight [PartlySolved]

I don't personally own a Z570, I just remember this as a friend of mine's been having the same problem. There's been some work done on Ideapad backlight support in kernel 3.1, so updating might be worth a shot.

Offline

#11 2011-11-04 15:24:26

silvik
Member
From: Bucharest/Romania
Registered: 2006-11-08
Posts: 110

Re: Intel HD Graphics 3000 backlight [PartlySolved]

Lenovo B570 here, with kamal kernel the brightness keys finally work (xfce, no kernel parameters, no other work needed)
The maintainer even has a repo for x64. thanks for the idea, had no idea this kamal kernel existed.
hopefully in 3.1 no patches will be needed.

Last edited by silvik (2011-11-04 15:25:54)

Offline

#12 2011-11-04 23:26:10

MadCat_X
Member
Registered: 2009-10-08
Posts: 189

Re: Intel HD Graphics 3000 backlight [PartlySolved]

The kamal kernel only difference to a stock Arch kernel seems to be "CONFIG_ACPI_IGD_OPREGION=m" in the config. Couldn't this just be enabled in the Arch kernel by default too?

Offline

Board footer

Powered by FluxBB