カーネルモード設定でブートがハングしますが、ATIドライバーで必要です


13

2011年後半のMacBook Proがあります。IntelビデオカードとディスクリートATIビデオカードが統合されています。理想的には、Xorgに無料ドライバー(Catalystなし)でATIカードを使用してほしい。

ここに問題があります:カーネルモード設定がブートをハングさせ(nomodesetカーネルパラメーターに追加することで確認されます)、その理由がわかりません。ただし、Intelドライバーと同様に、ATIドライバーに KMS が必要です。上記の目的のセットアップでグラフィックスを取得するためのオプションは何ですか?

カーネル3.13.8、Arch GNU / Linuxを使用しています。また、カーネル3.10.35(別名LTSカーネル)で試しました。運がありません。コメントで示唆されているように、私は影響を受けたマシンがロックした後にpingを実行しようとしました。確かにわかりませんが、ディスプレイだけでなく完全にフリーズしているようです。

また、Mac OS Xで起動し、gfxCardStatusを使用してIntelカードを強制的に使用しようとしました。これは何もしませんでした。

より多くの情報を取得するために、次のカーネルパラメーターを通常のカーネル行(LTSカーネルではなく、通常のカーネル、quiet削除済み)に追加し、gfxCardStatusをon-the-に設定してMacBookを起動しましたフライスイッチング(これは、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

ブートプロセスログの最後 ブートログの最後

KMSなしで起動したATIまたはIntelドライバーを使用してGDMを起動しようとすると、Xorgが失敗し、適切なドライバーが見つからないというメッセージが表示されます(Intel / AMDドライバーにはKMSが必要です)。また、このxf86-video-vesaパッケージを使用してみましたが、適切なドライバーはあるが適切な構成がないというメッセージが表示されて失敗します-BIOSが正しくないということです。

私はPRIMEを使ってみましたが、加速や空想がなくてもXorgを起動できないため、xrandr動作せず、最初のステップを通過することさえできません。

私はvgaswitcherooまたは関連する何かを使用することを考えましたが、根本的な問題がKMSがハングしているという事実のために、それが何もしないと思います。

私が試した最後のことは、独自のKMS実装を持っているという事実のために、独自のCatalystドライバーを使用することですが、Xorgサーバーのバージョンの不一致のためにインストールできませんでした。そして正直なところ、私は私がそれを助けることができるならば、私はプロプライエタリなドライバーを使いたいという欲求がゼロ未満であるので、私は非常に一生懸命努力しませんでした。

Linuxカーネルメーリングリストにこれについてのメールを送信しました。

報告する価値のあるカーネルのバグやXorgのバグに遭遇した可能性はありますか?

Googleで検索しましたが、役に立つものは何もありません。


IMO KMSはnomodeset設定を処理する必要があります。試したradeon.modeset=0ことがありますか、使用しているドライバーは何ですか?
Braiam

1
先ほど言ったように、@ Braiamはマシンを起動しますが、ATIドライバーの必要なコンポーネントを無効にします。wiki.archlinux.org/index.php/ATI#Kernel_mode-setting_.28KMS.29
strugee

ビデオが途切れるだけでなく、実際にハングすることを確認しましたか?たとえば、sshで接続できますか?そうでない場合、少なくともpingを実行しますか?もしそうなら、あなたは... netconsoleのを必要とする
derobert

1
クローバーブートローダーの人々は、ハッキントッシュの群衆のために常にこの種のものを扱います。逆の場合もあります:clover-wiki.zetam.org/Configuration/SMBIOS
mikeserv

1
価値のあることは、自分で試したことから、カーネルをEFIモードで(MBPの場合のように)起動すると、独自のnvidia / fglrxドライバーを実行できるとは思わないことです。
CmdrMoozy 14

回答:


1

読んだ Gentooフォーラムでこの投稿を。同じNVIDIAセットアップで他のユーザーを支援しました。要するに、あなたは選ぶことはできません:

  1. XOrgサーバーを「駆動」するには、Intelドライバーを使用する必要があります。
  2. ATIボードは出力のレンダリングにのみ使用できますが、生成はできません。

ここにいくつかの説明があります:(このためのATIのプロジェクト-Ironhide-が中止されているため、NVIDIAの観点からこれを説明しなければならないことをおpoびします。ATIは CONFIG_VGA_SWITCHEROOオプションのます)

私が作ったより賢い人 Bumblebee Projectを ATIのようなハイブリッドグラフィックシステムを使用するOptimus Line of Notebooksとのインターフェースを取りました。どちらの場合でも、トランスフォーマーへのベール化された参照を自分で理解してください:)

引き続き、すべてのハイブリッドシステムは同じように機能します。

  1. Intelグラフィックスボードは、計算領域を初期化し、ポリゴン、画面などを描画するための命令を計算します。
  2. 指示された場合、Intelグラフィックボードは、完了した計算をATI / NVIDIAディスクリートボードにオフロードします。インテルグラフィックスドライバーが特定のアプリケーションの計算をオフロードすることを要求できるアプリケーションをシステムに伝えるために、サードパーティのドライバーをインストールして構成する必要があります。BumblebeeおよびIronhideプロジェクトは、LinuxベースのOS上のWindowsドライバーに相当します。
  3. ATI / NVIDIAディスクリートボードには、計算処理能力がありません。アプリケーションレベルで出力を描画する要求のみを受け入れることができるため、Intelドライバーを使用するようにXOrgを構成し、常にXOrgでIntelを使用する必要があります。XOrgが起動すると、サードパーティドライバーが起動し、アプリケーションレベルでXOrgを制御します。計算の計算にはまだIntelドライバーを使用しています。

上記のリンクを投稿したとき、私はこれをすべて知っていて、リンクを提供しただけでうんざりしました。私の説明がお役に立てば幸いです。ご質問がある場合は、この回答を新しい回答で更新します/


0
  • ATIカードのバージョンがありません。内部にIntel&ATIを搭載した「Late 2011 MacBook Pro」は、十分な名称ではありません。コンソールを起動し、lspci -nnを起動します| grep VGAを使用して、次のような正確なバージョンを取得します。

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

    それを使用して、「Linuxモード設定がATI xyzでハングする」をGoogleで検索できます。

  • 2.6.32、3.0.last、3.2.last、3.4.last、3.16.lastなど、異なるカーネルを使用してコンソールから起動してみてください。3.0から3.16までのカーネルのすべての偶数バージョンをチェックする必要はありませんが、あなたの靴では2.6.somethingを確実に試してみます。起動に成功したら、startxでGUIを起動します(古い方法)。(.lastは、そのカーネルブランチの最新バージョンを意味します)

  • (ノートブックを使用して)ハードウェアロックされている場合、Linuxドライバーを自分で記述/デバッグできない場合、選択肢はあまりありません。使用しているドライバーを使用する必要があります。私は長年のLinuxユーザーとしての経験から書いています。そのため、動作するATIドライバーを使用します。動作しない場合は、Intelカードを使用します。ATIカードの正確なバージョンを提供する場合、Googleまたはここのユーザーが、そのカードがLinuxとうまく連携する(ハードウェアのバグがある)か、そうでない(ドライバーが機能しない)かを教えてください。ゲームが主な関心事ではない場合(おそらく、ゲーム用にLinux向けにMac OSXを切り替えることはないでしょう)、Intelカードは正常に動作しますが、私が時々使用するノートブックにIntel / NVIDIAコンボを持っているという願いを理解しています。:)

  • 最後に、UEFIを起動する必要はありません:https : //help.ubuntu.com/community/UEFIBooting「Appleは公式にはMac OS XのEFI起動のみをサポートしていますが、技術的にはBIOSファームウェアを使用してMac OS Xを起動できます。 Intel Macで(U)EFIを使用するLinuxには、次の利点があります。... "

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.