Ubuntu - Switchable Graphics

Direkte Linux-Programmierung, POSIX
Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Ubuntu - Switchable Graphics

Beitrag von Dirty Oerti » Mo Apr 27, 2009 8:23 pm

Tag zusammen :)

Ich besitze seit kurzem ein Lenovo Thinkpad T500. Nachdem ich bei der Partitionierung und anschließendem Versuch der Windows-Wiederherstellung mein Vista komplett verloren habe (^^ hab auch keine CD/DVD...) läuft jetzt ein Intrepid auf dem Laptop.

Nach ein wenig rumgebastel läuft das WLAN, das integrierte WWAN (über ein Wireless Modem) läuft (nach längerer Arbeit) jetzt auch.

Eine graphische Oberfläche steht mir (noch) nicht zur Verfügung.
Und damit zum eigentlichen Thema des Beitrags:

Das T500 hat 2 Grafikkarten. Eine Onboard Grafik von Intel (genau Bezeichnung suche ich noch) und eine ATI (selbiges).
Über das BIOS kann ich folgendes einstellen:

NUR onboard Grafik
NUR ATI Grafik
Switchable Graphics

Dazu gibt es noch einen Schalter "OS Detection" (für eben das Switchable Graphics) on/off.

Unter Vista standen diese Einstellungen auf Switchable und ON.
Dadurch war es mir möglich, im laufenden Betrieb die Grafikkarten zu wechseln.
Wechseln heißt hierbei: Die eine wird deaktiviert (kein Stromverbrauch mehr!) und die andere aktiviert und die Ausgabe auf diese umgelenkt.

Nun hab ich schon öfters gelesen, dass DIESES Feature von Linux (noch) nicht unterstützt wird.

Ich möchte es aber trotzdem versuchen :D
Im Endeffekt muss ich folgendes schaffen:

1) Ein per lspci erkanntes Gerät an/ausschalten (mit meinem Modem geht das, aber das wird von lsusb gelistet)
2) Den XServer dazu bringen, seine Konfiguration im Betrieb zu wechseln (oder den XServer neustarten, ohne das Anwendungen/Fenstermanager/Sitzung geschlossen werden)

Schwierigster Punkt wird wohl Punkt 1 sein. Punkt 2 ist auch erstmal optional.

Hat jemand dazu irgendeine Ahnung?

MfG
Daniel
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Ubuntu - Switchable Graphics

Beitrag von Xin » Di Apr 28, 2009 3:57 pm

Dirty Oerti hat geschrieben:Nun hab ich schon öfters gelesen, dass DIESES Feature von Linux (noch) nicht unterstützt wird.

Ich möchte es aber trotzdem versuchen :D
Wie immer sucht man sich die leichtesten Aufgaben aus ;-)
Dirty Oerti hat geschrieben:Im Endeffekt muss ich folgendes schaffen:

1) Ein per lspci erkanntes Gerät an/ausschalten (mit meinem Modem geht das, aber das wird von lsusb gelistet)
Es gibt doch PCI-Hotswap und das kann Linux doch auch!?
Dirty Oerti hat geschrieben:2) Den XServer dazu bringen, seine Konfiguration im Betrieb zu wechseln (oder den XServer neustarten, ohne das Anwendungen/Fenstermanager/Sitzung geschlossen werden)
Ich weiß, dass MacOS das kann, aber unter Linux habe ich das auch noch nicht probiert.
Das Problem wollte ich nämlich auch mal angehen, wenn ich an mein Laptop einen externen Monitor im laufenden Betrieb anschließe. Da weiß ich auch noch nicht, wie man eine Konfiguration für schreibt. Aber vom Prinzip her ist das doch das gleiche Problem!?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Ubuntu - Switchable Graphics

Beitrag von Dirty Oerti » Di Apr 28, 2009 5:07 pm

Xin hat geschrieben:
Dirty Oerti hat geschrieben:Nun hab ich schon öfters gelesen, dass DIESES Feature von Linux (noch) nicht unterstützt wird.

Ich möchte es aber trotzdem versuchen :D
Wie immer sucht man sich die leichtesten Aufgaben aus ;-)
Ja, naja, bisher habe ich nur gelesen, dass es nicht geht.
Vista kann es -> es ist möglich.
Xin hat geschrieben:
Dirty Oerti hat geschrieben:Im Endeffekt muss ich folgendes schaffen:

1) Ein per lspci erkanntes Gerät an/ausschalten (mit meinem Modem geht das, aber das wird von lsusb gelistet)
Es gibt doch PCI-Hotswap und das kann Linux doch auch!?
Wie??
Xin hat geschrieben:
Dirty Oerti hat geschrieben:2) Den XServer dazu bringen, seine Konfiguration im Betrieb zu wechseln (oder den XServer neustarten, ohne das Anwendungen/Fenstermanager/Sitzung geschlossen werden)
Ich weiß, dass MacOS das kann, aber unter Linux habe ich das auch noch nicht probiert.
Das Problem wollte ich nämlich auch mal angehen, wenn ich an mein Laptop einen externen Monitor im laufenden Betrieb anschließe. Da weiß ich auch noch nicht, wie man eine Konfiguration für schreibt. Aber vom Prinzip her ist das doch das gleiche Problem!?
Ja, müsste das gleiche Problem sein.
Die zu Grunde liegende Hardware ändert sich während der XServer läuft.
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Ubuntu - Switchable Graphics

Beitrag von Xin » Di Apr 28, 2009 5:23 pm

Dirty Oerti hat geschrieben:
Xin hat geschrieben:Es gibt doch PCI-Hotswap und das kann Linux doch auch!?
Wie??
Junge, Du kannst fragen stellen, da müsste ich meinen Linux-Admin fragen, der kann sowas. ^^
Ich kann nur ein bißchen programmieren - und weiß, dass mein Linux-Admin das kann.
Dirty Oerti hat geschrieben:
Xin hat geschrieben:
Dirty Oerti hat geschrieben:2) Den XServer dazu bringen, seine Konfiguration im Betrieb zu wechseln (oder den XServer neustarten, ohne das Anwendungen/Fenstermanager/Sitzung geschlossen werden)
Ich weiß, dass MacOS das kann, aber unter Linux habe ich das auch noch nicht probiert.
Das Problem wollte ich nämlich auch mal angehen, wenn ich an mein Laptop einen externen Monitor im laufenden Betrieb anschließe. Da weiß ich auch noch nicht, wie man eine Konfiguration für schreibt. Aber vom Prinzip her ist das doch das gleiche Problem!?
Ja, müsste das gleiche Problem sein.
Die zu Grunde liegende Hardware ändert sich während der XServer läuft.
Soweit ich weiß, gibt es Distributionen, die das direkt unterstützen. Debian ist da zurückhaltender... deswegen kann ich das halt auch noch nicht ;-)
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Jside
Beiträge: 377
Registriert: Di Nov 11, 2008 12:56 am

Re: Ubuntu - Switchable Graphics

Beitrag von Jside » Di Apr 28, 2009 5:24 pm

Xin hat geschrieben:
Dirty Oerti hat geschrieben:2) Den XServer dazu bringen, seine Konfiguration im Betrieb zu wechseln (oder den XServer neustarten, ohne das Anwendungen/Fenstermanager/Sitzung geschlossen werden)
Ich weiß, dass MacOS das kann, aber unter Linux habe ich das auch noch nicht probiert.
Das Problem wollte ich nämlich auch mal angehen, wenn ich an mein Laptop einen externen Monitor im laufenden Betrieb anschließe. Da weiß ich auch noch nicht, wie man eine Konfiguration für schreibt. Aber vom Prinzip her ist das doch das gleiche Problem!?
IRIX kann das auch, da kann man im Betrieb die Geometry Engine oder den Textur RAM erweitern oder verkleinern...Wobei das ja immo auchnoch gleichzeitig auf Hardwareebene Funktioniert.
SunOS kann das glaubisch auch ?!

Theoretisch dürfte das so gehen:
X :1 -query 127.0.0.1 -config <config für 2te Graka>
damit wird auf dem Localhost vom Localhost das Display auf das nächsthöhere Display(utopisch 8 da default 7) rübergezogen, und dann musst du halt nur eine zweite Config anlegen, das dürfte aber gehen.... Du musst allerdings vorher den Host freigeben, da du sonst beim Loginmanager landest, also mal im Windowmanager in den Optionen nachschauen, ob man da remotehosts auf das selbige Desktop umleiten kann... Dann ist das Bild aber allerdings für ne sekunde Weg ^^ ...wenn dich das stören sollte ;) via Strg+alt+Backspace gehts dann wieder zurück auf die primäre GraKa....

Zum anlegen der beiden Configs, kannst du erst übers BIOS die erste, und dann die zweite nehmen, und je ein X -configure ausführen.
Xin hat geschrieben:Es gibt doch PCI-Hotswap und das kann Linux doch auch!?
Naja, aber wann ist denn Hotswap in nicht-monster-server Maschienen verbaut ^^ meines wissens ist das doch ehr was für Enterprise Hardware, um mal schnell ne kaputte NIC auszuwechseln(können fast alle meine Server) !? Wobei man bei Linux immerhin auch ohne HotSwap die PCI Karte herausziehen kann, ohne das es abstürtzt (etwas, das mit W anfängt lässt grüßen^^)....

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Ubuntu - Switchable Graphics

Beitrag von Dirty Oerti » Fr Mai 15, 2009 1:04 pm

ATI-karte auf meinem Lap ausprobiert, funktioniert super.
Installiert habe ich den Treiber über envyng.

Nun zum Problem: Sobald ich im BIOS wieder auf die interne (Intel) Grafik umstelle, funktioniert nichts mehr.
Grund ist anscheinend der installierte Treiber.
Einfach die xorg.conf auszutauschen hat nämlich nichts geholfen.
(Ich hab mir Skripte erstellt, die die xorg.conf automatisch auswählen).

Muss ich nun den flgx (?) Treiber blacklisten, oder wie deaktiviere ich den, ohne ihn zu deinstallieren (was ich jetzt erstmal getan habe).
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Ubuntu - Switchable Graphics

Beitrag von fat-lobyte » Fr Mai 15, 2009 10:23 pm

Dirty Oerti hat geschrieben:Nun zum Problem: Sobald ich im BIOS wieder auf die interne (Intel) Grafik umstelle, funktioniert nichts mehr.
Der ATI Treiber ist eingestellt und er bekommt die Intelkarte geliefert. Klar dass das dem Treiber gar nicht schmeckt.
Dirty Oerti hat geschrieben:Einfach die xorg.conf auszutauschen hat nämlich nichts geholfen.
Nicht? Das ist seltsam...
Dirty Oerti hat geschrieben:(Ich hab mir Skripte erstellt, die die xorg.conf automatisch auswählen)
.
Was genau tun die?
Dirty Oerti hat geschrieben:Muss ich nun den flgx (?) Treiber blacklisten
Das könntest du auch. Allerdings sollte der Treiber eigentlich gar nicht geladen werden, wenn der XServer ihn nicht verwendet.
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Ubuntu - Switchable Graphics

Beitrag von Dirty Oerti » Sa Mai 16, 2009 10:33 am

Also:

Zu den Skript:

Code: Alles auswählen

#!/bin/sh

detect_correct_card () {
	VIDEO=`/usr/bin/lspci |grep -c ATI`

	if [ "$VIDEO" = 1 ]; then
	cp -f /etc/X11/XORG_CONFIG_FILES/xorg.conf.ati /etc/X11/xorg.conf
	else
	cp -f /etc/X11/XORG_CONFIG_FILES/xorg.conf.vesa /etc/X11/xorg.conf
	fi
}

write_back_changes () {
	VIDEO=`/usr/bin/lspci |grep -c ATI`

	if [ "$VIDEO" = 1 ]; then
	cp -f /etc/X11/xorg.conf /etc/X11/XORG_CONFIG_FILES/xorg.conf.ati
	else
	cp -f /etc/X11/xorg.conf /etc/X11/XORG_CONFIG_FILES/xorg.conf.vesa
	fi
}

case "$1" in
	start)	detect_correct_card
		;;
	stop)	write_back_changes
		;;
	*)	;;
esac

exit 0
Ich weiß nur leider nicht so genau, wo das alles hingehört.

Die beiden xorg.conf:
(xorg.conf.ati)

Code: Alles auswählen

Section "Monitor"
	Identifier	"Configured Monitor"
EndSection

Section "Screen"
	Identifier	"Default Screen"
	Monitor		"Configured Monitor"
	Device		"Configured Video Device"
	DefaultDepth	24
EndSection

Section "Module"
	Load	"glx"
	Disable	"dri2"
EndSection

Section "Device"
	Identifier	"Configured Video Device"
	Driver	"fglrx"
	###Option		"MigrationHeuristic"	"greedy"
	#############	Option		"DRI"	"off"
EndSection
(xorg.conf.vesa)

Code: Alles auswählen

Section "Device"
	Identifier	"Configured Video Device"
	Driver "vesa"
EndSection

Section "Monitor"
	Identifier	"Configured Monitor"
EndSection

Section "Screen"
	Identifier	"Default Screen"
	Monitor		"Configured Monitor"
	Device		"Configured Video Device"
EndSection
An dem Skript kann es aber nicht liegen. Hab's auch probiert, als ich es wieder aus den /etc/rcX.d/ gelöscht hatte und manuell die xorg.conf ausgetauscht hab.
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Ubuntu - Switchable Graphics

Beitrag von fat-lobyte » Sa Mai 16, 2009 11:46 am

Ziemlich vertrackte Sache... was sagt eigentlich /var/log/xorg.0.log ?
Dirty Oerti hat geschrieben:Nun zum Problem: Sobald ich im BIOS wieder auf die interne (Intel) Grafik umstelle, funktioniert nichts mehr.
Grund ist anscheinend der installierte Treiber.
Bist du eigentlich sicher dass das der Grund ist?
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Ubuntu - Switchable Graphics

Beitrag von Dirty Oerti » Sa Mai 16, 2009 12:07 pm

Naja, was sollte es sonst sein?
Nach dem ich in einer ROOT-Shell den Treiber per envyng wieder entfernt hab, hat alles wieder einwandfrei funktioniert.
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Antworten