Obsługa grafiki hybrydowej AMD + Intel w systemie Mux-less.

Awatar użytkownika
brezniew
Przyjaciel
Przyjaciel
Posty: 2680
Rejestracja: 12 kwie 2011, 16:48
Wersja Ubuntu: inny OS
Środowisko graficzne: Fluxbox
Architektura: x86_64

Obsługa grafiki hybrydowej AMD + Intel w systemie Mux-less.

Post autor: brezniew » 20 cze 2012, 01:39

A. Zanim zaczniesz bezmyślnie kopiować polecenia:
Poradnik dotyczy grafik hybrydowych w systemie Mux-less, czyli obecnej w większości nowszych laptopów z obsługiwanymi kartami AMD HD 6xxx (lub wyższymi) + zintegrowany Intel Sandy/Ivy Bridge.
Ze względu na różnice w budowie układów hybrydowych w poszczególnych modelach, nie ma gwarancji, że zadziała na Twoim laptopie.
Najnowszy BIOS i zaktualizowany system zwiększa prawdopodobieństwo prawidłowej obsługi.
Najlepiej wykonywać na świeżo zainstalowanym i zaktualizowanym systemie. W przeciwnym wypadku należy usunąć wszelkie własnoręcznie instalowane sterowniki do karty graficznej.

B. Obsługa karty AMD:
1. Instalacja wymaganych pakietów:

Kod: Zaznacz cały

sudo apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++6 dkms libqtgui4 wget execstack libelfg0 dh-modaliases mesa-utils linux-headers-generic libgcc1
Dla wersji 64-bit dodatkowo:

Kod: Zaznacz cały

sudo apt-get install ia32-libs-multiarch:i386 lib32gcc1 libc6-i386
cd /usr ; sudo ln -svT lib /usr/lib64
2. Pobranie najnowszych sterowników ze strony AMD (w tym przypadku jest to wersja 12.6 dla systemu 64-bit):

Kod: Zaznacz cały

cd ~/; mkdir catalyst; cd catalyst/
wget http://www2.ati.com/drivers/linux/amd-driver-installer-12-6-x86.x86_64.run
3. Budowa i instalacja pakietów ze sterownikiem:

Kod: Zaznacz cały

chmod +x amd-driver-installer-12-6-x86.x86_64.run
sudo sh ./amd-driver-installer-12-6-x86.x86_64.run --buildpkg Ubuntu/precise
sudo dpkg -i fglrx*.deb
4. Konfiguracja X Serwera i utworzenie niezbędnego pliku xorg.conf:

Kod: Zaznacz cały

sudo aticonfig --initial -f
i sprawdzamy czy zgadza się oznaczenie karty w pliku xorg.conf:

Kod: Zaznacz cały

echo "PCI:$(lspci | grep VGA | grep ATI | awk '{print $1}' | sed 's/\./:/')"
powinno dać wynik:
PCI:01:00:0

Kod: Zaznacz cały

Section "Device"
	Identifier  "aticonfig-Device[0]-0"
	Driver      "fglrx"
	BusID       "PCI:1:0:0"
C. Naprawa akceleracji przy używaniu karty Intela (należy powtórzyć po każdej aktualizacji sterownika fglrx). W przeciwnym razie nie uruchomi się Unity lub Gnome Shell na zintegrowanej karcie graficznej:

Otwieramy plik do edycji z uprawnieniami administratora:

Kod: Zaznacz cały

gksu gedit /etc/X11/Xsession.d/10fglrx
Dla systemu 32-bit dodajemy na końcu czwartej linii /usr/lib32/dri/, powinien wtedy wyglądać tak:

Kod: Zaznacz cały

 LIBGL_DRIVERS_PATH=/usr/lib/fglrx/dri 
if [ `uname -m` = 'x86_64' ]; then 
if [ -d /usr/lib32/fglrx/dri ]; then 
LIBGL_DRIVERS_PATH=${LIBGL_DRIVERS_PATH}:/usr/lib32/fglrx/dri:/usr/lib32/dri
if [ ! -z $LD_LIBRARY_PATH ]; then 
LD_LIBRARY_PATH=$LD_LIBRARY_PATH: 
fi 
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/lib32 
export LD_LIBRARY_PATH 
fi 
fi 
export LIBGL_DRIVERS_PATH
Dla systemu 64-bit będzie to /usr/lib/x86_64-linux-gnu/dri/:

Kod: Zaznacz cały

 LIBGL_DRIVERS_PATH=/usr/lib/fglrx/dri 
if [ `uname -m` = 'x86_64' ]; then 
if [ -d /usr/lib32/fglrx/dri ]; then 
LIBGL_DRIVERS_PATH=${LIBGL_DRIVERS_PATH}:/usr/lib32/fglrx/dri:/usr/lib/x86_64-linux-gnu/dri
if [ ! -z $LD_LIBRARY_PATH ]; then 
LD_LIBRARY_PATH=$LD_LIBRARY_PATH: 
fi 
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/lib32
export LD_LIBRARY_PATH 
fi 
fi 
export LIBGL_DRIVERS_PATH
Po zrestartowaniu komputera możemy cieszyć się działającą grafiką hybrydową.

C. Przełączanie kart (wymagany restart serwera X, żeby zmiany zostały zatwierdzone):
Sprawdzanie dostępnych układów graficznych:

Kod: Zaznacz cały

aticonfig --pxl
Włączanie dodatkowej karty graficznej (High-Performance mode):

Kod: Zaznacz cały

sudo aticonfig --px-dgpu
Przełączanie na zintegrowaną, energooszczędną kartę (Power-Saving mode):

Kod: Zaznacz cały

sudo aticonfig --px-igpu
Można oczywiście, zamiast konsoli, używać do tego myszki:

Kod: Zaznacz cały

gksu amdcccle
E. Weryfikacja działania poszczególnych trybów:

Kod: Zaznacz cały

fglrxinfo
glxinfo | grep -i '\(direct\|open\)'
F. Gdy coś pójdzie nie tak i nie wystartuje środowisko graficzne:

Kod: Zaznacz cały

sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.OLD
sudo apt-get purge fglrx fglrx-amdcccle fglrx-dev
sudo apt-get install --reinstall libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core xserver-xorg-video-radeon xserver-xorg-video-intel
sudo reboot
i wracamy do punktu wyjścia.

Lista przetestowanych modeli laptopów.
ODPOWIEDZ

Wróć do „Hardware-Multimedia”