web-dev-qa-db-ja.com

2016年4月のMacBook12 "(A1534)のNVMeフラッシュドライブへのアクセス

新しい2016年4月のMacBook12 "(A1534)にLinuxをインストールしようとしています。

EFI経由のUSBからの起動は正常に機能します: Arch Linux(2016.05.01、カーネル4.5.1)とUbuntu(16.04、カーネル4.4.0-21、およびLubuntu 15.10)を試しました。 ArchLinuxの場合はカーネルオプションnoapicを、Ubuntuの場合はnoapic acpi=off noacpi nomodesetを渡す必要がありました。そうしないと、画面が空白のままになり、カーネルが起動しません。

ワイヤレスカードでもすぐに使用できます(Broadcom BCM4350 802.11ac 14e4:43a3)。 RAMへのサスペンドも機能します。 (キーボードとタッチパッドは機能しませんが、現時点ではこれらは私の優先事項ではありません。)

ただし、カーネルは内蔵フラッシュドライブを検出しません(MacBookにはそれ以上のストレージメディアがありません)。つまり、blkidcat /proc/partitionsには、フラッシュドライブに関連するエントリは表示されません。古いMacBookの提案に基づいて、カーネルモジュールnvmeをロードしました。フラッシュドライブが誤ったPCIデバイスクラスを報告するため、手動で次のようにバインドしました。

echo 106b 2003 > /sys/bus/pci/drivers/nvme/new_id

Dmesgの出力は情報を提供せず、プローブが失敗したことを報告するだけです。フラッシュドライブはlspci -nnの下で次のように報告します。

01:00.0 Mass storage controller [0180]: Apple Inc. Device [106b:2003] (rev 11)

これは、以前のバージョンのMacBook(PCI IDが106b:2001であった)とは異なることに注意してください。フラッシュドライブはGrubShellから検出され、Mac OSXからは問題なく動作します。

次に何を試してみるべきですか?私は確かにさらなる提案があることを望んでいます、この時点で私は途方に暮れています。

6
Carina Willbold

内蔵フラッシュドライブへのアクセスは問題なく機能しますカーネル4.6.0-rc7を使用し、次を使用してデバイスを手動でバインドすることを喜んで確認できます。

echo 106b 2003 > /sys/bus/pci/drivers/nvme/new_id

手動でのバインドが不要になるパッチを送信します。

テスト中に、誤ったタイムアウトが1回発生しましたが、これを再現することはできませんでした。適度にディスクを集中的に使用する場合でも、ドライバは安定しているようです。

MacBookに残っている唯一の問題は次のとおりです。

  1. オーディオの再生が機能しません(録音は正常に機能します)。
  2. キーボードとタッチパッドが機能しません。
3
Carina Willbold