You are not logged in.

#1 2011-06-15 04:25:28

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Asus UL50vt / asus-switcheroo with Nouveau (G210m)

I have a UL50vt with optimus (intel/nvidia g210m) and I'm trying to get bumblebee to work but, well, I'm here so obviously I've failed.

**EDIT** Archreg was nice enough to point out that the UL50vt doesn't have optimus.**

I started with xf86-video-intel installed.
I then followed the wiki  on bumblebee (adjusting the makepkg to use the newest nvidia driver - 275.09.07-1)

Loading the nvidia module manually works fine with no errors but if I try to start the bumblebee daemon I get the following error:

X.Org X Server 1.10.2
Release Date: 2011-05-28
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.38-ARCH i686 
Current Operating System: Linux myhost 2.6.39-ARCH #1 SMP PREEMPT Tue Jun 7 05:49:02 UTC 2011 i686
Kernel command line: root=/dev/disk/by-label/root1 ro
Build Date: 30 May 2011  08:16:10AM
 
Current version of pixman: 0.22.0
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.1.log", Time: Tue Jun 14 21:07:09 2011
(++) Using config file: "/etc/X11/xorg.conf.nvidia"
(==) Using config directory: "/etc/X11/xorg.conf.d"
(EE) Failed to load module "mouse" (module does not exist, 0)
(EE) Failed to load module "kbd" (module does not exist, 0)
(EE) No devices detected.

Fatal server error:
no screens found

I've edited the xorg.conf.nvidia file changing "ConncectedMonitor" to both "CRT-0" and "DFP-0".  I've also checked to make sure the BusID matched.
Rebooting and trying the daemon again has the same result.

Trying to run "optirun glxgears" to test it all gives me the following error:

 [VGL] ERROR: Could not open display :1.

I've been somewhat patiently waiting for any chance of running the nvidia card on this since I bought it and I'm getting excited at the amazing workarounds people have come up with, but I'm still unable to get any of them to work.  Any ideas?

Last edited by ctarwater (2011-06-16 00:04:27)

Offline

#2 2011-06-15 07:16:51

archreg
Member
Registered: 2011-03-12
Posts: 14

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Hello,
Are you sure that ul50vt is an optimus laptop? I have ul80vt and it definitely has hardware mux.
If it is so in your case you can try https://github.com/awilliam/asus-switcheroo for card switching.

Offline

#3 2011-06-15 07:29:43

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Holy shit, I think you're right.  The UL50vf is an optimus, but mine doesn't appear to be.  About to go off to bed but I'll look at "switcheroo" again manana.  Thanks for correcting me, that should simplify things a bit!

Offline

#4 2011-06-16 00:08:55

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

so archreg (or anyone else) have you managed to get the nvidia card to work with this?

I've installed the Nouveau driver and can load it with no errors.
asus-switcheroo installed fine and I can use it to disable the nvidia card, but if I run

# echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch

and reboot then all I get is booting to a greyish/black screen.

Offline

#5 2011-06-16 07:37:00

archreg
Member
Registered: 2011-03-12
Posts: 14

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Yes it's working on my side (switching from intel -> nvidia), i have problems switching back to intel though and no time to investigate further.

You don't need to reboot to switch cards.

Here's my output, check yours:

$lspci | grep -i vga
00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)
01:00.0 VGA compatible controller: nVidia Corporation GT218 [GeForce G210M] (rev ff)

I already switched off nvidia (echo OFF > ...) before checking arch forums:

$cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :Off:0000:01:00.0
$dmesg | grep -i switcheroo
[    9.492047] Asus switcheroo: detected DSM switching method \_SB_.PCI0.P0P1.VGA_ handle
[   10.947265] VGA switcheroo: detected DSM switching method \_SB_.PCI0.P0P1.VGA_ handle
[   11.586209] vga_switcheroo: enabled
[  415.891616] VGA switcheroo: switched nouveau off

Now to demonstrate i'll switch to nvidia:

$echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch
$cat /sys/kernel/debug/vgaswitcheroo/switch 
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :Pwr:0000:01:00.0

And have to restart xorg, hope to be back any second wink (restart xorg)

And i'm back smile

$cat /sys/kernel/debug/vgaswitcheroo/switch 
0:IGD: :Off:0000:00:02.0
1:DIS:+:Pwr:0000:01:00.0
$dmesg | tail -n 30
[  415.891616] VGA switcheroo: switched nouveau off
[  415.891625] [drm] nouveau 0000:01:00.0: Disabling fbcon acceleration...
[  415.891629] [drm] nouveau 0000:01:00.0: Unpinning framebuffer(s)...
[  415.891676] [drm] nouveau 0000:01:00.0: Evicting buffers...
[  415.895211] [drm] nouveau 0000:01:00.0: Idling channels...
[  415.895360] [drm] nouveau 0000:01:00.0: Suspending GPU objects...
[  417.333202] [drm] nouveau 0000:01:00.0: And we're gone!
[  417.333248] nouveau 0000:01:00.0: PCI INT A disabled
[ 1164.282001] vga_switcheroo: client 0 refused switch
[ 1164.282006] vga_switcheroo: setting delayed switch to client 1
[ 1164.293281] nouveau 0000:01:00.0: Refused to change power state, currently in D3
[ 1164.293292] nouveau 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[ 1165.213265] VGA switcheroo: switched nouveau on
[ 1165.213273] [drm] nouveau 0000:01:00.0: We're back, enabling device...
[ 1165.226709] nouveau 0000:01:00.0: restoring config space at offset 0x1 (was 0x100000, writing 0x100007)
[ 1165.226734] nouveau 0000:01:00.0: setting latency timer to 64
[ 1165.226738] [drm] nouveau 0000:01:00.0: POSTing device...
[ 1165.226741] [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 0 at offset 0xD60F
[ 1165.251057] [drm] nouveau 0000:01:00.0: 0xD8E5: i2c wr fail: -6
[ 1165.271151] [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 1 at offset 0xDB60
[ 1165.278940] [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 2 at offset 0xE68F
[ 1165.278969] [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 3 at offset 0xE6C4
[ 1165.280015] [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 4 at offset 0xE858
[ 1165.280018] [drm] nouveau 0000:01:00.0: Parsing VBIOS init table at offset 0xE8BD
[ 1165.300039] [drm] nouveau 0000:01:00.0: Restoring GPU objects...
[ 1165.379278] [drm] nouveau 0000:01:00.0: Reinitialising engines...
[ 1165.379366] [drm] nouveau 0000:01:00.0: Restoring mode...
[ 1379.915880] vga_switcheroo: processing delayed switch to 1
[ 1379.994465] fbcon: Remapping primary device, fb1, to tty 1-63
[ 1380.927075] i915: switched off

With nvidia card on and working...
Hope it helps you somehow wink


Edited:
as for switching back to intel it hung for me and i had to reboot:

2011-06-16T09:38:26.507896+02:00 localhost kernel: [ 1928.856449] vga_switcheroo: client 1 refused switch
2011-06-16T09:38:26.507919+02:00 localhost kernel: [ 1928.856453] vga_switcheroo: setting delayed switch to client 0
2011-06-16T09:38:26.521230+02:00 localhost kernel: [ 1928.866597] i915 0000:00:02.0: BAR 0: set to [mem 0xfcc00000-0xfcffffff 64bit] (PCI address [0xfcc00000-0xfcffffff])
2011-06-16T09:38:26.521239+02:00 localhost kernel: [ 1928.866605] i915 0000:00:02.0: BAR 2: set to [mem 0xd0000000-0xdfffffff 64bit pref] (PCI address [0xd0000000-0xdfffffff])
2011-06-16T09:38:26.521244+02:00 localhost kernel: [ 1928.866611] i915 0000:00:02.0: BAR 4: set to [io  0xcc00-0xcc07] (PCI address [0xcc00-0xcc07])
2011-06-16T09:38:26.521247+02:00 localhost kernel: [ 1928.866616] i915: switched on
2011-06-16T09:38:47.354564+02:00 localhost kernel: [ 1949.702489] vga_switcheroo: processing delayed switch to 0
2011-06-16T09:38:47.594609+02:00 localhost kernel: [ 1949.939920] fbcon: Remapping primary device, fb0, to tty 1-63
2011-06-16T09:41:42.723655+02:00 localhost kernel: imklog 5.8.1, log source = /proc/kmsg started.                    <----- after reboot

Last edited by archreg (2011-06-16 07:49:18)

Offline

#6 2011-06-16 16:52:30

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

THANKS!  I was finally able to get it to work and verified with the same commands you used.

In case anybody else needs it, here's what I did:
- install xf86-video-intel
- install xf86-video-nouveau
-  (optional) install nouveau-dri

Download asus-switcheroo from here: https://github.com/awilliam/asus-switcheroo and install according to it's README file. (# make, # make install-arch)

Reboot.

Basic usage:
- Power off nvidia card  (saves battery)

# echo OFF > /sys/kernel/debug/vgaswitcheroo/switch

- Switch to nvidia

# echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch

and restart X.

Offline

#7 2011-06-16 17:13:07

archreg
Member
Registered: 2011-03-12
Posts: 14

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Are you able to switch back to intel from nvidia?

Offline

#8 2011-06-16 17:15:06

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Honestly, haven't tried yet.  Finally got the nvidia card to work and I'm scared of the gremlins fucking it up.

I just need to echo the DDIS command again and then restart X right?

Offline

#9 2011-06-16 17:25:52

archreg
Member
Registered: 2011-03-12
Posts: 14

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Although it doesn't work for me (hangs) it could work for you smile

echo DIGD > ...
restart x

or if above won't work you could try stop x and in console do

$echo IGD > ...
$startx

in second case don't be tricked being blinded by black console after echoing switch command (don't know for sure that you will be, maybe it'll work flawlessly).
Just try to type startx and <enter> wink

Sry for my english, don't know if i clarify myself enough. Thanks for your efforts wink

Offline

#10 2011-06-16 17:45:40

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Echoing DIDG and restarting X makes my eyes bleed.  The monitor isn't black, it's on a mixture of LSD and amphetamines (a lot of colors moving all over the place very quickly)

Echoing IGD and restarting X just boots back with the nvidia card in use - dmesg gives me this:

 vga_switcheroo: client 1 refused switch
 vga_switcheroo: setting delayed switch to client 1
 vga_switcheroo: processing delayed switch to 1
fbcon: Remapping primary device, fb0, to tty 1-63
i915: switched off
 vga_switcheroo: client 0 refused switch

Offline

#11 2011-06-16 17:55:25

archreg
Member
Registered: 2011-03-12
Posts: 14

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

thanks for trying....

hate to do that but could you try 'echo IGD' with nvidia on and xorg OFF.
shut down xorg, echo IGD and then startx....

that way we'll get the whole picture with this switching thing.

Last edited by archreg (2011-06-16 18:00:12)

Offline

#12 2011-06-16 18:21:32

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Just logged out of X, echoed IGD, restarted X and confirmed that I'm now running the intel video card.

Offline

#13 2011-06-16 18:25:38

archreg
Member
Registered: 2011-03-12
Posts: 14

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

great, thank You very much wink

Offline

#14 2011-06-16 18:29:06

ctarwater
Member
Registered: 2009-02-05
Posts: 300

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

No problem, thanks for your help.  Glad to finally have my nvidia card working!

So it seems like switching between cards works like this:
Intel -> nvidia.   You can echo DDIS from within an X session and restart X.
nvidia -> intel.  You have to echo IGD from the console (no X sessions running) and then start X.

Still, this is a huge improvement over where things were when I bought this computer and I couldn't even get the nvidia card to work or turn off.

Offline

#15 2011-11-19 20:17:14

Peppers
Member
Registered: 2011-11-19
Posts: 1

Re: Asus UL50vt / asus-switcheroo with Nouveau (G210m)

Did you know that if you disable AHCI in the BIOS, you get the nvidia card working on linux directly?

That way, the Intel card is always disabled, and the binary nvidia drivers works correctly.

It uses less power than having both cards activated, but it's still more than only IGD.

Offline

Board footer

Powered by FluxBB