Intel graphics with eeepc 1015

I’ve been following some of the graphics stickies I see on these forums and I’m reading through this article: openSUSE Graphic Card Practical Theory Guide for Users

I just moved back to OpenSuse (last version I used was 9) after being on Debian for a few years. In Mint, Debian, and Ubuntu, I saw the same instructions for creating Xorg config files to get the intel card to work on my eepc 1015p. However, the config file wasn’t really the issue. There was a solution that worked for Mint and Ubuntu where I need to pass “acpi_osi: Linux” to the bootloader in order to enable ACPI, and after that the kernel is able to detect the graphics driver and use the native drivers in the kernel. I passed this option to the grub bootloader and SuSE is still not properly detecting and using the intel driver. I checked Yast and looked for a video configuration tool to see if I can change it, but I must have missed it.

Am I missing something? Shouldnt the acpi_osi: Linux option work on OpenSuSE just as it did with the debian distros?

I am seeing the command is:

acpi_osi=Linux

and not:

acpi_osi: Linux

as you suggest. Did you use the right option?

Thank You,

I did use acpi_osi=Linux, I just checked with the config file and the actual bootloader on startup. I must have just mistyped it here.

Is there any chance this is a syntax issue ? In addition to trying “acpi_osi=Linux”, maybe try “acpi_osi=!Linux” and if that fails, perhaps even just “acpi_osi=” …

I confess this is nominally NOT something I ever look at. When I look at the syntax in /usr/src/linux-2.6.34.7-0.7/Documentation/kernel-parameters.txt , I note:


	acpi_osi=	[HW,ACPI] Modify list of supported OS interface strings
			acpi_osi="string1"	# add string1 -- only one string
			acpi_osi="!string2"	# remove built-in string2
			acpi_osi=		# disable all strings

of course I have NO IDEA as to what is the suitable values for “string1” nor for “!string2”. But one could try “acpi=osi=” and disable all strings ??

… but since I’m looking now at it, I decided to play a bit … Here is an interesting output:


oldcpu@core-i7:~> grep acpi /usr/src/linux-2.6.34.7-0.7/Documentation/kernel-parameters.txt | sed 's/^.*://'
        acpi=           [HW,ACPI,X86]
                        See also Documentation/power/pm.txt, pci=noacpi
        acpi_apic_instance=     [ACPI, IOAPIC]
        acpi_backlight= [HW,ACPI]
                        acpi_backlight=vendor
                        acpi_backlight=video
                        (e.g. thinkpad_acpi, sony_acpi, etc.) instead
        acpi.debug_layer=       [HW,ACPI,ACPI_DEBUG]
        acpi.debug_level=       [HW,ACPI,ACPI_DEBUG]
                        Documentation/acpi/debug.txt for more information about
                            acpi.debug_layer=0x20000000
                            acpi.debug_layer=0x400000                                                                                                                          
                            acpi.debug_layer=0xffffffff acpi.debug_level=0x2
                            acpi.debug_layer=0x2 acpi.debug_level=0xffffffff
        acpi_display_output=    [HW,ACPI]                                                                                                                                      
                        acpi_display_output=vendor
                        acpi_display_output=video                                                                                                                              
        acpi_irq_balance [HW,ACPI]
        acpi_irq_nobalance [HW,ACPI]
        acpi_irq_isa=   [HW,ACPI] If irq_balance, mark listed IRQs used by ISA
        acpi_irq_pci=   [HW,ACPI] If irq_balance, clear listed IRQs for                                                                                                        
        acpi_no_auto_ssdt       [HW,ACPI] Disable automatic loading of SSDT
        acpi_no_initrd_override         [KNL,ACPI]
        acpi_no_initramfs_override      [KNL,ACPI]
        acpi_os_name=   [HW,ACPI] Tell ACPI BIOS the name of the OS
        acpi_osi=       [HW,ACPI] Modify list of supported OS interface strings                                                                                                
                        acpi_osi="string1"      # add string1 -- only one string
                        acpi_osi="!string2"     # remove built-in string2
                        acpi_osi=               # disable all strings
        acpi_pm_good    [X86]
        acpi_sci=       [HW,ACPI] ACPI System Control Interrupt trigger mode
        acpi_serialize  [HW,ACPI] force serialization of AML methods
        acpi_skip_timer_override [HW,ACPI]
        acpi_sleep=     [HW,ACPI] Sleep options
        acpi_use_timer_override [HW,ACPI]
        acpi_enforce_resources= [ACPI]                                                                                                                                         
                        [ACPI] acpi_pm
        libata.noacpi   [LIBATA] Disables use of ACPI in libata suspend/resume
                noacpi          [X86] Do not use ACPI for IRQ routing
        pnpacpi=        [ACPI]

Unfortunately, none of that playing of mine is particularly relevant nor helpful to the thread. :frowning:

I read elsewhere on the web that kernel-parameters.txt is not particularly helpful because it is out of date.

Trying to find out more about acpi_osi, I note it was suggested to try this:


oldcpu@core-i7:/usr/src/linux-2.6.34.7-0.7/drivers/acpi> grep -rw __setup /usr/src/linux-2.6.34.7-0.7/drivers/acpi/*.*
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c:__setup("acpi_no_initrd_override", acpi_no_initrd_override_setup);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c:__setup("acpi_no_initramfs_override", acpi_no_initramfs_override_setup);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c:__setup("acpi_os_name=", acpi_os_name_setup);
**/usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c**:__setup("acpi_osi=", acpi_osi_setup);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c:__setup("acpi_serialize", acpi_serialize_setup);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c:__setup("acpi_wake_gpes_always_on", acpi_wake_gpes_always_on_setup);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c:__setup("acpi_enforce_resources=", acpi_enforce_resources_setup);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/pci_link.c:__setup("acpi_irq_isa=", acpi_irq_isa);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/pci_link.c:__setup("acpi_irq_pci=", acpi_irq_pci);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/pci_link.c:__setup("acpi_irq_nobalance", acpi_irq_nobalance_set);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/pci_link.c:__setup("acpi_irq_balance", acpi_irq_balance_set);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/video_detect.c:__setup("acpi_backlight=", acpi_backlight);
/usr/src/linux-2.6.34.7-0.7/drivers/acpi/video_detect.c:__setup("acpi_display_output=", acpi_display_output);

Which suggests that the information on acpi_osi_setup is located in the file acpi_osi and then further suggests for one to look inside /usr/src/linux-2.6.34.7-0.7/drivers/acpi/osl.c and note:

/*
 * The story of _OSI(Linux)
 *
 * From pre-history through Linux-2.6.22,
 * Linux responded TRUE upon a BIOS OSI(Linux) query.
 *
 * Unfortunately, reference BIOS writers got wind of this
 * and put OSI(Linux) in their example code, quickly exposing
 * this string as ill-conceived and opening the door to
 * an un-bounded number of BIOS incompatibilities.
 *
 * For example, OSI(Linux) was used on resume to re-POST a
 * video card on one system, because Linux at that time
 * could not do a speedy restore in its native driver.
 * But then upon gaining quick native restore capability,
 * Linux has no way to tell the BIOS to skip the time-consuming
 * POST -- putting Linux at a permanent performance disadvantage.
 * On another system, the BIOS writer used OSI(Linux)
 * to infer native OS support for IPMI!  On other systems,
 * OSI(Linux) simply got in the way of Linux claiming to
 * be compatible with other operating systems, exposing
 * BIOS issues such as skipped device initialization.
 *
 * So "Linux" turned out to be a really poor chose of
 * OSI string, and from Linux-2.6.23 onward we respond FALSE.
 *
 * BIOS writers should NOT query _OSI(Linux) on future systems.
 * Linux will complain on the console when it sees it, and return FALSE.
 * To get Linux to return TRUE for your system  will require
 * a kernel source update to add a DMI entry,
 * or boot with "acpi_osi=Linux"
 */

and note:


/*
 * Modify the list of "OS Interfaces" reported to BIOS via _OSI
 *
 * empty string disables _OSI
 * string starting with '!' disables that string
 * otherwise string is added to list, augmenting built-in strings
 */
int __init acpi_osi_setup(char *str)
{
	if (str == NULL || *str == '\0') {
		printk(KERN_INFO PREFIX "_OSI method disabled
");
		acpi_gbl_create_osi_method = FALSE;
	} else if (!strcmp("!Linux", str)) {
		acpi_cmdline_osi_linux(0);	/* !enable */
	} else if (*str == '!') {
		if (acpi_osi_invalidate(++str) == AE_OK)
			printk(KERN_INFO PREFIX "Deleted _OSI(%s)
", str);
	} else if (!strcmp("Linux", str)) {
		acpi_cmdline_osi_linux(1);	/* enable */
	} else if (*osi_additional_string == '\0') {
		strncpy(osi_additional_string, str, OSI_STRING_LENGTH_MAX);
		printk(KERN_INFO PREFIX "Added _OSI(%s)
", str);
	}

	return 1;
}

__setup("acpi_osi=", acpi_osi_setup);

which I have read means one can define any routine which accepts a character string value for a kernel parameter, then tie the parameter name to that routine. The routine is then free to parse/interpret that value however it pleases.

However my suspicion is that those words are more for those who compile a kernel, than for those of us who simply use the kernel. :frowning: … Ergo, I do not know to what extent the SuSE-GmbH kernel packagers still package the acpi_osi option ?

According to yast it’s detecting my graphics card and it’s using the proper drivers, but performance on the card is terrible. I know intel cards aren’t the best and I don’t do any hardcore gaming, but I still want to fix the problem. I mainly use glxgears to test how it’s doing, and with the other systems I was getting 300+fps. Here I’m only getting 50fps, and desktop effects are slow.

Should I bother looking for intel drivers and manually installing those?

DupermanDave, its possible to do better with Intel by upgrading to a newer kernel. openSUSE 11.4 comes out in just 11 days and uses kernel 2.6.37. If you want to stick with openSUSE 11.3, it is possible to upgrade its kernel to 2.6.37 as well using the bash script file SAKC you can find here in message #17:

S.A.K.C. - SUSE Automated Kernel Compiler - Version 2.00

If you want to use the very latest stuff, go for openSUSE 11.4. If you prefer sticking with a reliable alternative, upgrade your kernel version instead in openSUSE 11.3. Of course, you can even try both.

Thank You,

I forgot to mention I’m already on 11.4 with the latest updates. I tried 11.3 a few days ago and had the exact same issue, so I didn’t think it was a pre-release issue.

Well, thats a good question.

RATHER than you tell us the solution is to use acpi_osi=Linux (which you note is not working), how about instead telling us a bit about the graphic hardware of your eepc 1015p ? Is it an Intel Graphics Media Accelerator (GMA) 4500MHD ? I know, this is intuitively obvious to you, but it is not to me reading this thread. Type:


/sbin/lpsci -nnk

and note the line that has ‘VGA’ in it, and copy the section associated with that line (ie that line and maybe 2 or 3 lines under it) and post it here. That will tell us the hardware.

Also post the content of /var/log/Xorg.0.log on http://susepaste.org and press create and post here the URL that it creates. That log file will show us more about what is configured in X.

Did you try the Intellegacy driver to see if it works better ? Some Intel users of openSUSE hardware have found that the 2.9.1 Intel driver works better than the newer 2.12.0 driver (that comes with openSUSE-11.3) and better than the 2.14.0 driver (that comes with openSUSE-11.4). SuSE-GmbH have packaged the 2.9.1 driver in the rpm xorg-x11-driver-video-intel-legacy which should be on your PC already, and in that case edit the file /etc/X11/xorg.conf.d/50-device.conf so that it looks like (where I added one line):


Section "Device"
  Identifier "Default Device"

  #Driver "radeon"
  Driver "intellegacy"

  ## Required magic for radeon/radeonhd drivers; output name
  ## (here: "DVI-0") can be figured out via 'xrandr -q'
  #Option "monitor-DVI-0" "Default Monitor"

EndSection


also BEFORE you do the above, install the program midnight commander (mc) so that you can easily edit that file in a full screen text mode by just typing ‘mc’ from the appropriate directory where the file is located.

I made a note of some rather basic graphic theory for openSUSE here: openSUSE Graphic Card Practical Theory Guide for Users

Here’s the results of the lspci:

00:00.0 Host bridge [0600]: Intel Corporation N10 Family DMI Bridge [8086:a010]
	Subsystem: ASUSTeK Computer Inc. Device [1043:83ac]
	Kernel driver in use: agpgart-intel
00:02.0 VGA compatible controller [0300]: Intel Corporation N10 Family Integrated Graphics Controller [8086:a011]
	Subsystem: ASUSTeK Computer Inc. Device [1043:83ac]
	Kernel driver in use: i915
00:02.1 Display controller [0380]: Intel Corporation N10 Family Integrated Graphics Controller [8086:a012]
	

Here is the URL for the Xorg.log file: SUSE Paste

Right now I’m in the process of editing that Xorg conf file as you suggested.

With 11.4 this is now in the realm of Beta Software hence I don’t have anything further to add. … Sorry.

If it does not function well for you I think you should raise a bug report. There is guidance here: openSUSE:Submitting bug reports - openSUSE You can use your openSUSE forum username and password when logging on to bugzilla.

That’s understandable. Thanks for all of the help. I’ll keep this thread active if I do a final release upgrade and still have the issue.

As for the suggestion of editing that Xord device file, that didn’t work. X started to load, flashed a bit, then kept restarting. I had to open another console session and use nano to edit the config file back to the original state.

I’m going to do some more research on these legacy drivers.

Sorry to say it guys, but at this moment I’ve switched to Crunchbang linux. Everything is working out of the box, even the graphics card. But fret not, I’m moving back to SuSE after my crunchbanging is done. Before I do get rid of crunchbang, what info should I gather on this system to help figure out why my intel drivers aren’t working on openSuSE?

On 03/04/2011 09:06 PM, DupermanDave wrote:
>
> Sorry to say it guys, but at this moment I’ve switched to Crunchbang
> linux. Everything is working out of the box, even the graphics card. But
> fret not, I’m moving back to SuSE after my crunchbanging is done. Before
> I do get rid of crunchbang, what info should I gather on this system to
> help figure out why my intel drivers aren’t working on openSuSE?
>
>

is the same intel driver working on crunchbang?
what is the kernel on crunch, and on openSUSE?
does crunch have a xorg.conf file, if so grab a copy…


DenverD
CAVEAT: http://is.gd/bpoMD
[NNTP posted w/openSUSE 11.3, KDE4.5.5, Thunderbird3.0.11, nVidia
173.14.28 3D, Athlon 64 3000+]
“It is far easier to read, understand and follow the instructions than
to undo the problems caused by not.” DD 23 Jan 11

On your crunchbang try typing:

/sbin/lspci -nnk 

and make a note of the line with VGA in it, plus the following 3 lines. Copy it and paste it somewhere (such as here) such that you can post or view it later.

Also, open up the log file (with a text editor):
/var/log/Xorg.0.log
and post that on SUSE Paste and press create on that site, and when it gives you the website / url where that is posted, then post than link here.

That will tell us a bit about your graphics.

Kernel version from crunch is 2.6.32-5-amd64 and the intel drivers are version 2:2.13.0-5

Suse paste of the other outputs

I can’t find any xorg config on the system, so I don’t think there is one.

It could be this is a regression in 11.4, in which case your best bet is to write a bug report on openSUSE-11.4.

I note 11.4 has the 2.6.37 kernel w/Intel-2.14.0 driver and Xorg 1.9.3, as opposed to the crunch 2.6.32 kernel w/Intel-2.13.0 driver and Xorg 1.7.7.

Guidance for raising bug reports is here: openSUSE:Submitting bug reports - openSUSE

I’ll wait until the final release to submit a bug report just in case this is a work in progress. But thanks for all the help.