La configuración de modo de kernel bloquea mi arranque, pero el controlador ATI lo requiere

13

Tengo una MacBook Pro de finales de 2011. Tiene una tarjeta de video Intel integrada y una tarjeta de video ATI discreta. Idealmente, me gustaría que mi Xorg use la tarjeta ATI con el controlador gratuito (sin Catalyst).

Aquí está el problema: la configuración del modo kernel bloquea mi arranque (verificado al agregar nomodeseta los parámetros del kernel), y no puedo entender por qué. Sin embargo, el controlador ATI requiere KMS, al igual que el controlador Intel. ¿Cuáles son mis opciones para obtener gráficos con la configuración deseada como se describe anteriormente?

Estoy en el kernel 3.13.8, Arch GNU / Linux. También lo probé con el kernel 3.10.35, también conocido como kernel LTS. Sin suerte. Como se sugiere en los comentarios, he tratado de hacer ping a la máquina afectada después de que se bloquea. No puedo decir con certeza, pero parece que está completamente congelado, no solo la pantalla.

También he intentado arrancar en Mac OS X y usar gfxCardStatus para forzar el uso de la tarjeta Intel. Esto no hizo nada.

Para tratar de obtener más información, he arrancado el MacBook con los siguientes parámetros del kernel agregados a mi línea de kernel normal (el kernel normal, no el kernel LTS y con quieteliminado), y con gfxCardStatus configurado en el conmutación rápida (esto parecía revertirse automáticamente al reiniciar OS X):

rootwait ignore_loglevel debug debug_locks_verbose=1 sched_debug initcall_debug mminit_loglevel=4 udev.log_priority=8 loglevel=8 earlyprintk=vga,keep log_buf_len=10M print_fatal_signals=1 apm.debug=Y i8042.debug=Y drm.debug=1 scsi_logging_level=1 usbserial.debug=Y option.debug=Y pl2303.debug=Y firewire_ohci.debug=1 hid.debug=1 pci_hotplug.debug=Y pci_hotplug.debug_acpi=Y shpchp.shpchp_debug=Y apic=debug show_lapic=all hpet=verbose lmb=debug pause_on_oops=5 panic=10 sysrq_always_enabled

Muy al final del registro del proceso de arranque Fin completo del registro de arranque

Cuando intento iniciar GDM usando los controladores ATI o Intel, arrancados sin KMS, Xorg falla con un mensaje acerca de no encontrar un controlador adecuado (esperado, ya que los controladores Intel / AMD necesitan KMS). También intenté usar el xf86-video-vesapaquete, pero eso falla con un mensaje sobre tener un controlador adecuado pero no tener una configuración adecuada, algo acerca de que el BIOS no es correcto.

Intenté usar PRIME , pero como no puedo lograr que Xorg aparezca incluso sin aceleración ni nada sofisticado, xrandrno funciona y ni siquiera puedo pasar el primer paso.

He pensado en usar vgaswitcheroo o algo relacionado, pero no creo que eso haga nada debido al hecho de que el problema subyacente es, creo, el hecho de que KMS está colgando.

Lo último que probé es usar el controlador Catalyst patentado, debido al hecho de que tiene su propia implementación de KMS, pero no pude instalarlo debido a un desajuste de la versión del servidor Xorg. Y honestamente, tengo menos de cero deseo de usar un controlador propietario si puedo evitarlo, así que no lo intenté mucho.

Le envié un correo electrónico a la lista de correo del kernel de Linux sobre esto y espero que alguien me responda.

¿Es posible que me haya topado con un error del kernel o un error Xorg que valga la pena informar?

Busqué en Google, pero no surgió nada útil.

Strugee
fuente
IMO KMS debe ocuparse de la configuración de nomodeset. ¿Has probado radeon.modeset=0o el controlador que utilizas?
Braiam
1
@Braiam como dije, eso hace que la máquina arranque, pero deshabilita un componente requerido del controlador ATI. wiki.archlinux.org/index.php/ATI#Kernel_mode-setting_.28KMS.29
strugee
¿Has confirmado que realmente se cuelga, y no solo se rompe el video? Por ejemplo, ¿puedes entrar? Si no, ¿al menos hace ping? Si es así, necesita una netconsole ...
derobert 05 de
1
La gente del gestor de arranque de trébol maneja este tipo de cosas todo el tiempo para la multitud hackintosh. Tal vez sea aplicable al revés: clover-wiki.zetam.org/Configuration/SMBIOS
mikeserv
1
Por lo que vale, por haberlo probado yo mismo, no creo que sea posible ejecutar controladores propietarios de nvidia / fglrx si arranca el núcleo en modo EFI (como lo haría con un MBP).
CmdrMoozy

Respuestas:

1

Lea esta publicación en los foros de Gentoo. Ayudé a otros usuarios allí con una configuración NVIDIA idéntica. En resumen, no puedes elegir:

  1. Debe usar el controlador Intel para "conducir" su servidor XOrg.
  2. Solo puede usar la placa ATI para procesar la salida, pero no generarla.

Alguna explicación aquí: (Pido disculpas por tener que explicar esto en términos de NVIDIA, ya que el proyecto de ATI para esto - Ironhide - se suspende. Creo que ATI espera que usted use el CONFIG_VGA_SWITCHEROO opción)

Alguien más inteligente que yo construyó el Proyecto Bumblebee , para interactuar con la Línea Optimus de Portátiles que usan el sistema gráfico híbrido, al igual que ATI. Descubra la referencia velada a los transformadores usted mismo en ambos casos :)

Continuando, todos los sistemas híbridos funcionan de la misma manera, que es:

  1. La Intel Graphics Board inicializa el área computacional y calcula las instrucciones para dibujar polígonos, pantallas, etc.
  2. Si se le indica, la placa de gráficos Intel descargará los cálculos completados a la placa discreta ATI / NVIDIA. Se debe instalar y configurar un controlador de terceros para indicarle a su sistema qué aplicaciones pueden solicitar que el controlador de gráficos Intel descargue los cálculos para esa aplicación específica. Los proyectos Bumblebee y Ironhide son el equivalente del controlador de Windows en un sistema operativo basado en Linux.
  3. La placa discreta ATI / NVIDIA no tiene potencia de procesamiento computacional. Solo puede aceptar solicitudes para dibujar resultados a nivel de aplicación, por lo tanto, debe configurar XOrg para usar el Controlador Intel y siempre usar Intel con XOrg. Una vez que XOrg se inicia, el controlador de terceros comienza y controla XOrg en el nivel de aplicación. Todavía está usando el controlador Intel para las matemáticas computacionales.

Sabía todo esto cuando publiqué el enlace de arriba, y me criticaron por solo proporcionar el enlace. Espero que mi explicación ayude. Si tiene alguna pregunta, actualizaré esta respuesta con nuevas respuestas /

eyoung100
fuente
0
  • No diste ninguna versión de la tarjeta ATI. "MacBook Pro de finales de 2011" con Intel y ATI en su interior no es una designación suficientemente buena. Arranque en la consola, inicie lspci -nn | grep VGA para obtener una versión exacta, como esta:

    $ lspci -nn | grep VGA
    01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Park [Mobility Radeon HD 5430/5450/5470] [1002:68e0]
    

    Con eso puedes buscar en Google "La configuración de modo Linux se cuelga en ATI xyz"

  • Intente arrancar en la consola utilizando diferentes núcleos, por ejemplo, desde 2.6.32, 3.0.last, 3.2.last, 3.4.last, 3.16.last. No es necesario verificar todas las versiones pares de kernel entre 3.0 y 3.16, pero en su lugar probaría 2.6.algo seguro. Y si el arranque va bien, inicie la GUI con startx (antigua forma). (.last significa la última versión de esa rama del kernel)

  • Cuando está bloqueado por hardware (usando una computadora portátil), no tiene muchas opciones si no puede escribir / depurar los controladores de Linux usted mismo; debe usar los controladores que están disponibles y funcionan. Escribo por experiencia, como usuario de Linux desde hace mucho tiempo. Por lo tanto, use cualquier controlador ATI que funcione, si no hay ninguno, use la tarjeta Intel. Cuando proporcione la versión exacta de la tarjeta ATI, con suerte Google o algún usuario aquí le dirá si esa tarjeta coopera bien con Linux (por lo que tendría un error de hardware) o no (falta de controlador de funcionamiento). Si el juego no es su principal preocupación (probablemente no cambiaría Mac OSX por Linux con la intención de jugar), la tarjeta Intel debería funcionar bien, pero entiendo su deseo de tener el combo Intel / NVIDIA en el portátil que uso de vez en cuando. :)

  • Por último, no necesita iniciar UEFI: https://help.ubuntu.com/community/UEFIBooting "Apple oficialmente solo admite el inicio EFI para Mac OS X, aunque técnicamente es posible iniciar Mac OS X con el firmware del BIOS. Linux que usa (U) EFI en Intel Macs tiene las siguientes ventajas: ... "

tallo
fuente