# Intel graphics (Español)

Artículos relacionados

- Intel GMA3600
- Poulsbo
- Xorg
- Kernel mode setting
- Xrandr
- Hybrid graphics

Desde que Intel desarrolla y proporciona controladores de código abierto, las tarjetas de vídeo Intel son esencialmente plug-and-play.

Para obtener una lista completa de los modelos GPU-Intel, y los chipsets y CPUs correspondientes, consulte esta comparación en la wikipedia.

Nota: Las tarjetas gráficas basadas en el chip PowerVR (series GMA 500 y GMA 3600) no son compatibles con los controladores de código abierto.

## Instalación

Prerrequisito: Xorg.

Instale el paquete xf86-video-intel desde los repositorios oficiales. Este paquete proporciona el controlador DDX para la aceleración 2D y tira de intel-dri[broken link: replaced by mesa] como una dependencia, proporcionando el controlador DRI para la aceleración 3D.

Para soporte 3D de programas de 32 bits que corran en sistemas de x86_64, instale lib32-intel-dri[broken link: replaced by lib32-mesa] desde el repositorio multilib.

La aceleración de vídeo por hardware para codificar/decodificar en las GPU más antiguas es proporcionado por el controlador XvMC, incluido en el controlador DDX. Para GPU más antiguas instale el controlador VA-API proporcionado por el paquete libva-intel-driver.

## Configuración

No necesita ningún tipo de configuración para hacer funcionar Xorg (el archivo `xorg.conf` no es necessario, pero tiene que estar configurado correctamente si está presente).

Para ver la lista de opciones, escriba `man intel`

## KMS (Kernel Mode Setting)

Sugerencia: Si tiene problemas con la resolución, compruebe esta página[broken link: invalid section].

KMS es necesario para ejecutar X y el entorno de escritorio, tales como GNOME, KDE, Xfce, LXDE, etc. KMS es compatible con el chipset Intel cuando usa el driver i915 DRM, el cual ahora está activado por defecto en el kernel v2.6.32. Las versiones 2.10 del kernel y las más recientes del driver xf86-video-intel ya no dan soporte a UMS (excepto para la antigua familia de chipsets 810), que requieran el uso de KMS obligatoriamente[1]. KMS se suele inicializar normalmente una vez arrancado el kernel. Es posible, sin embargo, habilitar KMS durante la fase de arranque el kernel, permitiendo que todo el proceso de arranque funcione en la resolución nativa.

Nota: Al utilizar KMS, es necesario quitar todas las referencias al obsoleto `vga` o `nomodeset` de la configuración de arranque.

Para proceder, añada el módulo `i915` a la matriz `MODULES` en `/etc/mkinitcpio.conf`:

    MODULES="i915"

Si utiliza un archivo EDID personalizado, debe incorporarlo en initramfs de esta manera:

    /etc/mkinitcpio.conf

    FILES="/lib/firmware/edid/su_edid.bin"

A continuación, vuelva a crear el initramfs:

    # mkinitcpio -p linux

y reinicie el sistema. Ahora todo debería funcionar.

## Opciones de gestión de energía basadas en el módulo

El módulo del kernel i915 permite configurarlo a través de `/etc/modprobe.d/i915.conf`, donde se pueden establecer las opciones de gestión de energía. Existe un lista de opciones disponible a través de la orden:

    $ modinfo i915 | grep power

He aquí un ejemplo de `/etc/modprobe.d/i915.conf`:

    options i915 i915_enable_rc6=7 i915_enable_fbc=1 lvds_downclock=1

## Consejos y trucos

### Elegir el método de aceleración

- UXA - (Unified Acceleration Architecture) es el backend maduro que se introdujo para apoyar el modelo de controlador GEM.
- SNA - (Sandybridge's New Acceleration) es el sucesor más rápido para hardware compatible.

El método predeterminado es SNA (a partir de 2013-08-05[2]), el cual es menos estable, pero más rápido. Revisa los benchmarks realizados por Phoronix [3]. Esto puede ser encontrado aquí para Sandy Bridge y aquí para Ivy Bridge. UXA es aún una sólida opción, si experimenta problemas con SNA.

Para usar el antiguo método de aceleración UXA, se debe crear el archivo `/etc/X11/xorg.conf.d/20-intel.conf` con el siguiente contenido:

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

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

### Desactivar Vertical Synchronization (VSYNC)

El controlador de intel utiliza Triple Buffering para la sincronización vertical, lo que permite un rendimiento completo y evita la ruptura. Para poner la sincronización vertical en apagado (por ejemplo, para benchmarking) utilice este archivo .drirc en su carpeta «home»:

    ~/.drirc

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

No utilice driconf para crear este archivo, producirá un error y establecerá el controlador incorrecto.

### Ajustar la modalidad de escalado

Este procedimiento puede ser útil para algunas aplicaciones a pantalla completa:

    $ xrandr --output LVDS1 --set PANEL_FITTING param

donde `param` puede asumir los valores:

- `center`: la resolución se mantendrá exactamente como está definida, no se aplicará ningún redimensionamiento.
- `full`: Redimensiona el tamaño de la resolución para ocupar toda la pantalla.
- `full_aspect`: Redimensiona el tamaño de la resolución al máximo permitido, manteniendo la relación de aspecto de la imagen.

Si esto no funciona, pruebe con:

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

donde `param` puede tomar el valor de `"Full"`, `"Center"` o `"Full aspect"`.

### Problema KMS: la consola está limitada a una pequeña porción de la pantalla

Un puerto de vídeo de baja resolución puede ser activado en el inicio, causando el uso de solo una pequeña zona de la pantalla. Para solucionar esto, deshabilite explícitamente el puerto infractor proporcionando un reajuste del módulo i915 con `video=SVIDEO-1:d` como un parámetro a la línea de comandos del kernel en el gestor de arranque. Consulte los parámetros del kernel para más información.

Si esto no funciona, pruebe a sustituir TV1 o VGA1 en el lugar de SVIDEO-1.

### Decodificación H.264 en el chip GMA 4500

El paquete libva-intel-driver proporciona descodificación MPEG-2 solo para las GPUs de la serie GMA 4500. El soporte para la decodificación de H.264 se mantiene en un rama separada, g45-h264, que se puede utilizar al instalar el paquete libva-driver-intel-g45-h264AUR[broken link: archived in aur-mirror], disponible en el repositorio AUR. Sin embargo, tenga en cuenta que este soporte es experimental y no está actualmente en desarrollo activo. El uso de VA-API en una tarjeta de la serie GMA 4500 descarga la GPU, pero no hace una reproducción más ágil, ya que la reproducción se hace sin aceleración. Las pruebas usando mplayer mostraton que el uso de VAAPI para reproducir un video H.264 codificado a 1080p redujo a la mitad la carga de la CPU (en comparación con la superposición XV), pero dió lugar a una reproducción muy agitada, mientras que codificado a 720p funcionó razonablemente bien [4]. Esto se ha hecho eco de otras experiencias [5].

### Establecer el valor gamma y el brillo

Intel no proporciona un método para establecer estos parámetros en el controlador. Afortunadamente, se pueden establecer a través de `xgamma` y `xrandr`.

El rango de valores Gamma se puede ajustar con:

    $ xgamma -gamma 1.0

o

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

El brillo se puede ajustar con:

    $ xrandr --output VGA1 --brightness 1.0

## Solución de problemas

### Pantalla vacía durante el inicio, en la fase «Loading modules»

Si está utilizando el inicio tardío de KMS («late start»), y la pantalla se queda sin mostrar nada durante la fase «Loading modules», puede ser útil agregar `i915` y `intel_agp` al initramfs. Consulte la sección anterior.

Como alternativa, puede intentar resolverlo añadiendo a la línea de comandos del kernel lo que sigue:

    video=SVIDEO-1:d

### Vídeo rasgado

Si se utiliza el método de aceleración SNA, es posible resolver el problema activando la opción `"TearFree"` en el controlador:

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

    Section "Device"
       Identifier  "Intel Graphics"
       Driver      "intel"
       Option      "TearFree"    "true"
    EndSection

Nota:

- Esta opción puede no funcionar cuando `SwapbuffersWait` es `false`.
- Esta opción es problemática para las aplicaciones que son muy exigentes con la cadencia vsync, como Super Meat Boy.
- Con esta opción activada, algunas animaciones de Gnome Shell son sensiblemente lentas.

### Congelación/bloqueo del servidor X con el controlador intel

Si tiene un problema con le servidor X que termina inesperadamente, o que parece bloquearse, o la GPU no responde correctamente, puede que la solución sea desactivar el uso de la GPU con la opción `NoAccel`:

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

    Section "Device"
       Identifier "Intel Graphics"
       Driver "intel"
       Option "NoAccel" "True"
    EndSection

Como alternativa, pruebe a desactivar únicamente la aceleración 3D con la opción `DRI`:

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

    Section "Device"
       Identifier "Intel Graphics"
       Driver "intel"
       Option "DRI" "False"
    EndSection

Si el equipo falla y tiene

    Option "TearFree" "true"
    Option "AccelMethod" "sna"

en el archivo de configuración, en la mayoría de los casos se puede solucionar añadiendo

    i915.semaphores=1

en los parámetros del arranque.

### Añadir resoluciones no detectadas

Esta cuestión se aborda en el artículo Xrandr.

### Lentitud tras una actualización de libGL 9 e Intel-DRI 9

Efectuar un Downgrade[broken link: invalid section] para Intel-DRI 8 y libGL 8.

### Texturas en negro en videojuegos

Si está experimentando texturas negras en los juegos de vídeo, la solución puede ser habilitar el soporte S3TC que permite la compresión de texturas. Se puede activar a través de driconf o instalando libtxc_dxtn desde AUR.

Este «problema» se solucionará muy pronto en los nuevos controladores

Puede leer más sobre la compresión S3TC en: http://dri.freedesktop.org/wiki/S3TC wikipedia:S3_Texture_Compression

Uno de los juegos que se ve afectado por este problema es Oil Rush y World of Warcraft usando Wine.

### Colores alterados (problema con el espacio de color)

Nota: Este problema está relacionado con los cambios en el kernel 3.9.

El Kernel 3.9 contiene las modificaciones del controlador Intel que permite un fácil ajuste de los rangos de RGB Limited, que puede causar la alteración de los colores en algunos casos. Esto se relaciona con el nuevo modo "Automatic" para la propiedad "Broadcast RGB". Se puede forzar la modalidad, por ejemplo con `xrandr --output HDMI1 --set "Broadcast RGB" "Full"` usando la salida del dispositivo apropiada distinta de HDMI1.

Nota: Algunos televisores solo pueden mostrar colores desde el rango 16-255, de modo que al ajustar a la modalidad Full causará un recorte de los colores en el rango de 0-15, por lo que es mejor dejarlo en Automatic, ya que de este modo detectará automáticamente si es necesario comprimir el espacio de color para el televisor.

También hay otros problemas relacionados que pueden ser resueltos modificado los registros de la GPU. Información adicional se puede encontrar en estas páginas: [6] y [7].

### Retroiluminación no ajustable completamente, o no regulable del todo después de la reanudación

Si utiliza una tarjeta gráfica de Intel y no tiene control mediante las teclas de acceso rápido para modificar el brillo de la pantalla, pruebe iniciando el sistema con estos parámetros del kermel:

    acpi_backlight=vendor

Si eso no resuelve el problema, algunos usuarios han conseguido resolverlo añadiendo, o bien:

    acpi_osi=Linux

o

    acpi_osi="!Windows 2012"

además del parámetro mencionado anteriormente.

Si ninguna de estas propuestas resuelve el problema, se debe editar/crear el archivo `/etc/X11/xorg.conf.d/20-intel.conf` con el contenido siguiente:

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

    Section "Device"
            Identifier  "card0"
            Driver      "intel"
            Option      "Backlight"  "intel_backlight"
            BusID       "PCI:0:2:0"

    EndSection

Si utiliza la aceleración SNA como se mencionó anteriormente, cree el archivo como sigue:

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

    Section "Device"
            Identifier  "card0"
            Driver      "intel"
            Option      "AccelMethod"  "sna"
            Option      "Backlight"    "intel_backlight"
            BusID       "PCI:0:2:0"

    EndSection

### Desactivar la compresión del frame buffer

En algunas tarjetas, como la Intel Corporation Mobile 4 Series Chipsets, la compresión del frame buffer está activada y forzada, lo que da como resultado mensajes de error sin fin:

    $ dmesg |tail
    [ 2360.475430] [drm] not enough stolen space for compressed buffer (need 4325376 bytes), disabling
    [ 2360.475437] [drm] hint: you may be able to increase stolen memory size in the BIOS to avoid this

La solución es desactivar la compresión del frame buffer, lo cual aumentará ligeramente el consumo de energía. En este sentido, para desactivarla hay que añadir `i915.i915_enable_fbc=0` a la línea de parámetros del kernel. Más información sobre los resultados de la desactivación de la compresión se puede encontrar aquí.

### Alteraciones en Chrome/Chromium

Si experimenta alteraciones en Chrome/Chromium establezca AccelMethod a "UXA" #Elegir el método de aceleración

## Véase también

- http://intellinuxgraphics.org/documentation.html (incluye una lista de hardware compatible)
- KMS — Artículo de Arch wiki sobre kernel mode setting
- Xrandr — Si tiene problemas con la configuración de la resolución
- Arch Linux forums: Intel 945GM, Xorg, Kernel - performance

Categories:

- Graphics (Español)
- X server (Español)

Hidden categories:

- Pages with broken package links
- Pages with broken section links