# Intel graphics (Polski)

Related articles

- ATI_(Polski)
- NVIDIA_(Polski)
- Poulsbo_(Polski)
- Xorg_(Polski)
- Intel_gma3600_(Polski)

Ponieważ Intel udostępnia i wspiera otwarte sterowniki, karty graficzne Intela zwykle działają bez problemów.

Note: Informacje dotyczące używawania sterowników w konsoli bez X znajdziesz w Uvesafb.

## Modele

Myślenie, że "Intel 945G" i "Intel GMA 945" to ten sam układ graficzny, tylko z różnymi nazwami jest błędne. Dokładnie rzecz ujmując, ten drugi nie istnieje. Intel oznacza jako "GMA" układ graficzny lub GPU. Cokolwiek innego to model chipsetu płyty głównej, przykładowo "915G", "945GM", "G965" czy "G45".

Popularne GPU i odpowiadające im chipsety płyt głównych to:

    GPU                Chipset/Mostek północny
    Intel GMA 900         910, 915
    Intel GMA 950         945

Chipset (płyty głównej; nie GPU) "i810" jest bardzo stary i był produkowany na długo przed linią produktów 9xx, która jako pierwsza była oznaczana skrótem GMA. Podobnie, inne nazwy dla układów 910, 915 i 945 mogą zawierać prefiks `i`.

Tutaj znajduje się lista układów GMA.

## Instalacja

Wymagany jest: Xorg (Polski)

Zainstaluj pakiet xf86-video-intel, który jest dostępny w oficjalnych repozytoriach. Pozwala on na wybranie pożądanej metody akceleracji. Zalecaną metodą jest od teraz SNA. Zobacz testy przeprowadzone przez Phoronix [1]. Mogą być znalezione tutaj dla Sandy Bridge i tutaj dla Ivy Bridge. UXA jest dobrą alternatywą, jeśli SNA sprawia problemy z Twoją konfiguracją. Dodaj to do `/etc/X11/xorg.conf` lub stwórz `/etc/X11/xorg.conf.d/20-intel.conf` :

    Section "Device"
       Identifier  "Intel Graphics"
       Driver      "intel"
       Option      "AccelMethod"  "sna"
       #Option      "AccelMethod"  "uxa"
       #Option      "AccelMethod"  "xaa"
    EndSection

Jeśli korzystasz z 64-bitowego systemu i chcesz używać akceleracji w 32-bitowych programach, musisz zainstalować lib32-intel-dri[broken link: replaced by lib32-mesa].

Note: lib32-intel-dri[broken link: replaced by lib32-mesa] znajduje się w repozytorium [multilib].

## Konfiguracja

Aby uruchomić Xorg, nie ma potrzeby konfiguracji (plik `xorg.conf` jest niepotrzebny, jednak jeśli istnieje, musi być poprawny).

Rzeczą, która powinna być zrobiona już podczas instalacji to dodanie swojego użytkownika do odpowiedniej grupy:

    # gpasswd -a nazwauzytkownika video

## KMS (Kernel Mode Setting)

KMS jest wymagany do uruchomienia X-ów i środowiska graficznego, t.j. GNOME, KDE, Xfce, LXDE, itd. KMS jest wspierany przez układy Intela korzystające ze sterownika i915 i jest domyślnie włączony od jądra w wersji 2.6.32. Sterownik xf86-video-intel od wersji 2.10 nie wspiera UMS, wymagając użycie KMS (*). Zwykle KMS jest inicjalizowany po załadowaniu jądra. Jest jednak możliwe włączenie KMS podczas uruchamiania jądra, pozwalając całemu procesowi uruchamiania systemu działać w natywnej rozdzielczości.

Note: Używając KMS, musisz usunąć wszystkie parametry `vga` i `nomodeset` z Twojej konfiguracji uruchamiania jądra.

Aby to zrobić, dodaj moduł `i915` do linii `MODULES` w pliku `/etc/mkinitcpio.conf`:

    MODULES="i915"

Note: Jeśli posiadasz procesor Core i{3,5,7} pierwszej generacji ze zintegrowanym GPU, niedodanie `i915` do linii `MODULES` w `/etc/mkinitcpio.conf` prawdopodobnie spowoduje błąd `kernel: intel ips [...]: failed to get i915 symbols, graphics turbo disabled`.
Note: Twój system może także wymagać dodania modułu `intel_agp`, jeśli wyświetla błędy podczas uruchamiania.

Następnie, wygeneruj initramfs:

    # mkinitcpio -p linux

i uruchom ponownie system. Wszystko powinno działać.

## Tips and tricks

### Ustawienie trybu skalowania

Może to być użyteczne dla kilku aplikacji pełnoekranowych:

    xrandr --output LVDS1 --set PANEL_FITTING param

gdzie `param` może być:

- `center`: rozdzielczość nie zostanie zmieniona,
- `full`: przeskauj rozdzielczość tak, aby wykorzystać cały ekran,
- `full_aspect`: przeskaluj rozdzielczość tak, aby wykorzystać cały ekran ale z zachowaniem proporcji.

Jeśli to nie zadziała, spróbuj:

    xrandr --output LVDS1 --set "scaling mode" param

gdzie `param` to jedno z `"Full"`, `"Center"` i `"Full aspect"`.

### Problem z KMS: konsola jest ograniczona do małego obszaru

Jeden z portów wideo o małej rozdzielczości mógł zostać włączony podczas uruchamiania systemu i powoduje ten problem. Rozwiązaniem jest wyłączenie portu dopisując `video=SVIDEO-1:d` do linii komend kernela w Twoim bootloaderze. Więcej informacji znajdziesz w Parametry jądra.

Jeśli to nie zadziała, możesz spróbować wyłączyć port TV1 lub VGA1 zamiast SVIDEO-1.

### Sprzętowa akceleracja wideo

Jeśli chcesz włączyć sprzętową akcelerację dekodowania/enkodowania wideo w aplikacjach multimedialnych (takich jak VLC czy MPlayer) w układach Intel HD (Ivy Bridge, Sandy Bridge), zainstaluj pakiet libva-driver-intel[broken link: replaced by libva-intel-driver], dostępny w Oficjalnych Repozytoriach.

Jeśli posiadasz układ G45 (X4500MHD) będziesz potrzebować (libva-g45-h264AUR[broken link: archived in aur-mirror]) i (libva-driver-intel-g45-h264AUR[broken link: archived in aur-mirror]) z AUR, ponieważ dla G45 Intel dostarcza sprzętową akcelerację wideo z h264 tylko w gałęzi "g45-h264" - więcej informacji na http://intellinuxgraphics.org/h264.html). vlc i mplayer-vaapiAUR działają bardzo dobrze, (gstreamer-vaapi) z G45 aktualnie nie działa.

Aby skorzystać z VA-API, trzeba używać odtwarzacza wideo obsługującego VAAPI. Jeśli używasz mplayera, zainstaluj mplayer-vaapiAUR, i użyj parametru -vo vaapi. Aby włączyć sprzętowe dekodowanie wideo we Flashu, dodaj `EnableLinuxHWVideoDecode=1` do `/etc/adobe/mms.cfg`. Jeśli akceleracja sprzętowa dalej nie działa, spróbuj dodać `OverrideGPUValidation = 1`.

### Ustawienie jasności i gammy

Intel nie oferuje możliwości ich ustawienia na poziomie sterownika. Na szczęście, można je ustawić używając `xgamma` i `xrandr`.

Gamma może być ustawiona używając:

    xgamma -gamma 1.0

lub:

    xrandr --output VGA1 --gamma 1.0:1.0:1.0

Jasność można ustawić używając:

    xrandr --output VGA1 --brightness 1.0

## Rozwiązania problemów

### Glxgears pokazuje niską wydajność

Note: `glxgears` nie jest narzędziem do porównywania wydajności pomiędzy różnymi systemami.

Jeśli uruchamiasz `glxgears` w celu sprawdzenia wydajności graficznej systemu, możesz zauważyć, że wyniki oscylują wokół 60 FPS. Przykładowo:

    [...]
    311 frames in 5.0 seconds = 61.973 FPS
    311 frames in 5.0 seconds = 62.064 FPS
    311 frames in 5.0 seconds = 62.026 FPS
    [...]

Nie jest to spowodowane niską wydajnością. System graficzny używa synchronizacji pionowej i wyświetla natywną dla Twojego ekranu liczbę klatek na sekundę.

#### Wyłączenie synchronizacji pionowej (vsync)

Żeby wyłączyć synchronizację pionową, dodaj do pliku `/etc/X11/xorg.conf.d/20-intel.conf` w `Section "Device"` tę linię `Option "SwapbuffersWait" "false"`.

Innym sposobem jest ustawienie `vblank_mode` na `0` w pliku `~/.drirc` i upewnienie się, że `driver` jest ustawiony na `dri2`:

    ~/.drirc

    <device screen="0" driver="dri2">
        <application name="Default">
        <option name="vblank_mode" value="0"/>
        </application>
     </device>

### Pusty ekran podczas startu systemu, w czasie "Loading modules"

Jeśli używasz "późnego startu" KMS i ekran staje się pusty w czasie "Loading modules", dodanie `i915` i `intel_agp` do initramfs może pomóc. Zobacz paragraf KMS powyżej.

Dodanie poniższego parametru do linii parametrów jądra też może pomóc:

    video=SVIDEO-1:d

### Poszarpane wideo

Szarpanie obrazu powinno ustąpić po włączeniu sprzętowej akceleracji wideo. Możesz też dodać

    Option "TearFree" "true"

do `/etc/X11/xorg.conf.d/20-intel.conf`

### X zawiesza/wyłącza się

Znany jest problem z chipsetem i845G, który powoduje zawieszanie GPU po chwili.

Jeśli masz problem z wyłączaniem/zawieszaniem się X lub problemy z GPU, rozwiązaniem może być zablokowanie korzystania z GPU korzystając z opcji "NoAccel":

    /etc/X11/xorg.conf.d/20-intel.conf

     Section "Device"
        Identifier "old intel stuff"
        Driver "intel"
        Option "AccelMethod"  "sna"
        Option "NoAccel" "True"
     EndSection

### Dodanie niewykrytych rozdzielczości

Ta kwestia jest opisana na stronie Xrandr.

## Zobacz także

- http://intellinuxgraphics.org/documentation.html (zawiera listę wspieranego sprzętu)
- KMS — artykuł o KMS z wiki Archa
- Xrandr — Jeśli masz problem z ustawieniem rozdzielczości
- Forum Arch Linuksa: Intel 945GM, Xorg, Kernel - wydajność

Categories:

- Graphics (Polski)
- X server (Polski)
- Polski

Hidden category:

- Pages with broken package links