Ustawienie trybu jądra zawiesza mój boot, ale wymaga tego sterownik ATI


13

Mam MacBooka Pro z końca 2011 roku. Ma zintegrowaną kartę graficzną Intel i dyskretną kartę graficzną ATI. Idealnie, chciałbym, aby mój Xorg używał karty ATI z bezpłatnym sterownikiem (bez Catalyst).

Oto problem: ustawienie trybu jądra zawiesza mój rozruch (zweryfikowany przez dodanie nomodesetparametrów jądra) i nie mogę zrozumieć, dlaczego. Jednak sterownik ATI wymaga KMS, podobnie jak sterownik Intel. Jakie są moje opcje uzyskania grafiki przy żądanej konfiguracji, jak opisano powyżej?

Jestem na jądrze 3.13.8, Arch GNU / Linux. Próbowałem także z jądrem 3.10.35, AKA jądrem LTS. Brak szczęścia. Jak zasugerowano w komentarzach, próbowałem pingować komputer, którego dotyczy problem, po jego zablokowaniu. Nie jestem pewien, ale wydaje się, że jest całkowicie zamrożony, nie tylko wyświetlacz.

Próbowałem także uruchomić system Mac OS X i użyć gfxCardStatus, aby wymusić użycie karty Intel. To nic nie zrobiło.

Aby spróbować uzyskać więcej informacji, uruchomiłem MacBooka z następującymi parametrami jądra dołączonymi do mojej normalnej linii jądra (zwykłe jądro, nie jądro LTS i po quietusunięciu) oraz z gfxCardStatus ustawionym na on-the- przełączanie w locie (wydawało się, że przywraca się automatycznie po ponownym uruchomieniu 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

Sam koniec dziennika procesu rozruchu Cały koniec dziennika rozruchu

Kiedy próbuję uruchomić GDM przy użyciu sterowników ATI lub Intel, uruchomionych bez KMS, Xorg nie wyświetla komunikatu o nie znalezieniu odpowiedniego sterownika (oczekiwane, ponieważ sterowniki Intel / AMD potrzebują KMS). Próbowałem także użyć tego xf86-video-vesapakietu, ale nie powiedzie się to z komunikatem o posiadaniu odpowiedniego sterownika, ale nie o odpowiedniej konfiguracji - coś o tym, że BIOS nie jest poprawny.

Próbowałem użyć PRIME , ale ponieważ nie mogę zmusić Xorga do pojawienia się nawet bez przyspieszenia lub czegokolwiek wymyślnego, xrandrnie działa i nie mogę nawet przejść pierwszego kroku.

Myślałem o użyciu vgaswitcheroo lub czegoś podobnego, ale nie sądzę, że to coś zrobi, ponieważ moim zdaniem podstawowym problemem jest zawieszenie się KMS.

Ostatnią rzeczą, którą próbowałem, jest użycie zastrzeżonego sterownika Catalyst, ponieważ ma on własną implementację KMS, ale nie mogłem go zainstalować z powodu niedopasowania wersji serwera Xorg. I szczerze mówiąc, mam mniej niż zero chęci używania zastrzeżonego sterownika, jeśli mogę pomóc, więc nie bardzo się starałem.

Wysłałem listę mailingową jądra Linuxa na ten temat i mam nadzieję, że ktoś do mnie wróci.

Czy to możliwe, że natknąłem się na błąd jądra lub błąd Xorga, który warto zgłosić?

Poszukałem Google, ale nie znalazłem nic pomocnego.


IMO KMS powinien zadbać o ustawienia nomodeset. Próbowałeś radeon.modeset=0lub używasz innego sterownika?
Braiam

1
@Braiam, jak powiedziałem, powoduje rozruch komputera, ale wyłącza wymagany komponent sterownika ATI. wiki.archlinux.org/index.php/ATI#Kernel_mode-setting_.28KMS.29
struge

Czy potwierdziłeś, że rzeczywiście się zawiesza, a nie tylko przerywa odtwarzanie wideo? Np. Czy możesz ssh? Jeśli nie, to czy przynajmniej pinguje? Jeśli tak, potrzebujesz netconsoli ...
derobert,

1
Ludzie bootloadera koniczyny cały czas zajmują się tego rodzaju rzeczami dla tłumu hackintosha. Może dotyczy to vice versa: clover-wiki.zetam.org/Configuration/SMBIOS
mikeserv

1
Jeśli chodzi o to, co warto, po wypróbowaniu samego siebie, nie sądzę, aby możliwe było uruchomienie zastrzeżonych sterowników nvidia / fglrx, jeśli uruchomisz jądro w trybie EFI (tak jak w przypadku MBP).
CmdrMoozy,

Odpowiedzi:


1

Przeczytaj ten post na forach Gentoo. Pomogłem tam innym użytkownikom z identyczną konfiguracją NVIDIA. Krótko mówiąc, nie możesz wybrać i wybrać:

  1. Musisz użyć sterownika Intel, aby „prowadzić” swój serwer XOrg.
  2. Możesz użyć płyty ATI tylko do renderowania danych wyjściowych, ale nie możesz ich wygenerować.

Oto niektóre wyjaśnienia: (przepraszam za to, że muszę to wyjaśnić w kategoriach NVIDIA, ponieważ projekt ATI w tym zakresie - Ironhide - został przerwany. Wierzę, że ATI oczekuje, że skorzystasz z tej CONFIG_VGA_SWITCHEROOopcji)

Ktoś mądrzejszy ode mnie zbudował Projekt Bumblebee , aby połączyć się z linią notebooków Optimus, które korzystają z hybrydowego systemu graficznego, podobnie jak ATI. W obu przypadkach sam znajdź ukryte odniesienie do transformatorów :)

Kontynuując, wszystkie systemy hybrydowe działają w ten sam sposób, czyli:

  1. Karta graficzna Intel inicjuje obszar obliczeniowy i oblicza instrukcje rysowania wielokątów, ekranów itp.
  2. Jeśli zostanie o to poproszony, karta graficzna Intel prześle ukończone obliczenia na dyskretną kartę ATI / NVIDIA. Należy zainstalować i skonfigurować sterownik innej firmy, aby poinformować system, które aplikacje mogą zażądać od sterownika grafiki Intel odciążenia obliczeń dla tej konkretnej aplikacji. Projekty Bumblebee i Ironhide są odpowiednikiem sterownika Windows w systemie operacyjnym Linux.
  3. Płyta dyskretna ATI / NVIDIA nie ma mocy obliczeniowej. Może akceptować tylko żądania rysowania danych wyjściowych na poziomie aplikacji, dlatego należy skonfigurować XOrg do korzystania ze sterownika Intel i zawsze używać Intel z XOrg. Po uruchomieniu XOrg sterownik innej firmy uruchamia się i kontroluje XOrg na poziomie aplikacji. Nadal używa sterownika Intel do obliczeń matematycznych.

Wiedziałem o tym wszystkim, kiedy zamieściłem powyższy link i zostałem przekierowany za tylko pod warunkiem, że link. Mam nadzieję, że moje wyjaśnienie pomoże. Jeśli masz jakieś pytania, zaktualizuję tę odpowiedź o nowe odpowiedzi /


0
  • Nie podałeś wersji karty ATI. „MacBook Pro z końca 2011 r.” Z procesorami Intel i ATI nie jest wystarczająco dobrym oznaczeniem. Uruchom konsolę, uruchom lspci -nn | grep VGA, aby uzyskać dokładną wersję, taką jak ta:

    $ 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]
    

    Dzięki temu możesz znaleźć w Google „Ustawienia trybu Linux wisi na ATI xyz”

  • Spróbuj uruchomić z konsoli za pomocą różnych jąder, np. Z 2.6.32, 3.0.last, 3.2.last, 3.4.last, 3.16.last. Nie trzeba sprawdzać każdej parzystej wersji jądra między 3.0 a 3.16, ale w twoich butach na pewno spróbuję 2.6. A jeśli rozruch się powiedzie, uruchom GUI za pomocą startx (stary sposób). (.last oznacza najnowszą wersję tej gałęzi jądra)

  • Kiedy jesteś zablokowany sprzętowo (używasz notebooka), nie masz dużego wyboru, jeśli nie jesteś w stanie samodzielnie pisać / debugować sterowników Linuxa - musisz użyć sterowników, które są dostępne i działają. Piszę z doświadczenia, jako długoletni użytkownik Linuksa. Więc użyj dowolnego sterownika ATI, który działa, jeśli nie, użyj karty Intel. Kiedy podasz dokładną wersję karty ATI, mam nadzieję, że Google lub jakiś użytkownik powie ci, że ta karta współpracuje dobrze z Linuksem (miałby to błąd sprzętowy) lub nie (brak działającego sterownika). Jeśli granie nie jest twoim głównym zmartwieniem (prawdopodobnie nie zamienisz Mac OSX na Linuksa z zamiarem grania), karta Intel powinna działać dobrze, ale rozumiem twoje życzenie posiadania własnej kombinacji Intel / NVIDIA w notebooku, którego od czasu do czasu używam. :)

  • Wreszcie nie trzeba uruchamiać systemu UEFI: https://help.ubuntu.com/community/UEFIBooting „Apple oficjalnie obsługuje tylko uruchamianie EFI w systemie Mac OS X, chociaż technicznie możliwe jest uruchomienie systemu Mac OS X za pomocą oprogramowania układowego BIOS. Linux korzystający z (U) EFI na komputerach Mac z procesorami Intel ma następujące zalety: ... ”

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.