web-dev-qa-db-ja.com

PCIe分岐を使用する単一スロット上の複数のM.2 NVMe SSD:BIOSがそうでない場合にLinuxからこれをセットアップしますか?

HP Z240タワー型ワークステーションAsus Hyper M.2 x16 Card v2 のようなマルチM.2 NVMe PCIeキャリアカードを使用したい。そのC236 PCHおよびSkylake E3-1200V5 CPUサポート PCIe分岐 CPUによって駆動されるx16 PCIeスロットの=。 (参照: Intel 100シリーズ/ C230シリーズチップセットデータシートVol 1 、p。22; Intel Xeon E3-1200V5データシートVol 1 、p。24)CPU PCIeの構成分岐1x8 + 2x4モードの場合、x16スロットで3つのM.2 NVMeドライブを使用できます。 (E3 CPUは4x4分岐に対応していないため、前述のAsusのようなクワッドキャリアカードのM.2スロットの1つは空のままにする必要があります。)

残念ながら、Z240のBIOSセットアップには、PCIe分岐を構成するオプションが含まれていません。さらに悪いことに、 HP'sSure Start デュアルBIOS BIOSの変更を防止する どれ PCIe分岐を有効にすることができます

この PCIe分岐へのIntelビデオの紹介 は(02:34に)

CPU PCI Expressバスの構成は、初期化の前にBIOSによって静的に決定されます。 BIOSは、CFG [5]およびCFG [6]と呼ばれるCPU上のプレゼンス検出ピンを調べることによって構成を決定します。

BIOSセットアップに分岐を構成するオプションが含まれていない場合でも、これはおそらく機能します。しかし、このアプローチでは、物理的なCPUパッドへの接続にアクセスして変更する必要があるため、避けたいと思います。

分岐を構成するオプションが含まれている他のBIOSは、明らかにCFG [5]およびCFG [6]をオーバーライドします。私は彼らがこれをどのように行うかについてのドキュメントを見つけていません、そしてあなたが知っているかもしれないどんなリンクにも感謝します。

この時点で、マシンがLinuxで起動した後でCFG [5]とCFG [6]をオーバーライドする方法はありますか? (この場合、おそらくM.2ドライブの1つから起動できないと思いますが、これはこのシステムの要件ではありません。)このような手順には、次のような手順が含まれると予想されます hot -resetting x16、x8、x4 PCIeコントローラーおよび/または機能レベルのリセットPEGルートポート10、11、12(参照: Intel Xeon E3-1200V5データシートVol 2 。) kexec

あなたが提供できるヒント、ヒント、またはアドバイスに感謝します!

3
fmyhr

これが可能かどうかはわかりませんが、さらに調査するためのいくつかの手段を提案できます。

リンクしたビデオは、前世代のIntelプロセッサー(ビデオの日付は2010年、Skylakeは2015年にリリースされたもの)のように見えるため、Skylakeプロセッサーの構成が異なる可能性があります。言われていることは、BIOSによってセットアップが実行され、BIOSがCFGパッド値を読み取り、それを実装するためにPCIeコントローラー構成レジスターをセットアップすることを意味します(つまり、CFGパッド値を完全に無視できるということです)選択した場合)。

通常、これらのタイプの構成レジスターの詳細は、ほとんどのCPUについてIntelによって公開されていないIntel「BIOSライターガイド」/「UEFIファームウェアライターガイド」にのみ記載されています。一部のCPU構成レジスタには、BIOSがそれらを「ロック」するオプションが含まれています(そのため、CPUがリセットされるまで、内容を変更できません(場合によっては読み取ることもできません)。そうであれば、HPファームウェアがこれを行って、また、必要なレジスタには、CPUの「システム管理モード」からのみアクセスできる場合もあります。

私がこれを試みていた場合、必要な構成を実行するSkyLakeファームウェア(別の製造元など)のコードを見つけようとします。このファームウェアを分解して、分岐を有効にするようにCPUを構成する方法を確認し、同じレジスタを(Linuxカーネルモードから、またはGRUBを使用して)書き込むことを試すことができる場合があります。

Corebootなどのオープンソースファームウェア実装に役立つコードが見つかる場合もあります。

HTH、そして頑張ってください!

2
Tim Small