QNAP TS-464でHailo-8を認識させるのに問題があるようです。TS-464はQTS 5.2.Xを実行しており、これはHailo-8サポートに必要なバージョンよりも新しいです。TS-464には2つのM.2スロット(各スロットはx1 PCIeレーンを提供)と、x2 PCIeレーンを持つGen3 PCIe x4スロットが1つあります。
QNAPの互換性リストには、Hailo-8 B+Mキー(型番:HM218B1C2LAE)が記載されており、このバージョンはx2 PCIeレーンをサポートしています。
私は代わりにMキー版(型番:HM218B1C2FAE)を入手しました。Mキー版は4レーンをサポートしますが、x2 PCIeレーンにダウントレインすることを確認済みで、Hailoの社員からx1 PCIeレーンにもダウントレインすることができると確認されています。
したがって、これは低レベルの問題のようです。lspciでカードが表示されません。
以下の手順を試しました:
- Hailo-8(Mキー)をQNAPの最初のM.2スロットに挿入。lspciで表示されません。
- Hailo-8をもう一方のM.2スロットに挿入。lspciで表示されません。
- Hailo-8を自分のノートPCのM.2スロットに挿入。ノートPCでは動作します。ノートPCのM.2はx2レーンをサポートしているので、Hailo-8が2レーンにダウントレインすることが分かります。これはHailo Integration Toolでも確認済みです。
- QNAPのM.2スロットに問題がある可能性を考え、各スロットに1TB Samsung NVMeを挿入してテスト。両方のスロットは動作しており、x1レーンにダウングレードされています。
- Hailo-8がQNAPのM.2スロットのx1レーンにダウントレインできない可能性を考え、PCIe to M.2アダプター(Startech PEX4M2E1)をQNAPのPCIe x4スロットに挿入。lspciで表示されません!赤いランプは点灯しているので、電源は入っています。
- Startechアダプターが正常か確認するため、NVMeドライブを挿入。QNAPで問題なく動作し(x2 PCIeレーンが使用されていることを確認)、アダプターの問題ではありません。
- 最後に、Startech(Hailo-8付き)をWindows PCに移動。問題なく動作します!
dmesgには関連する情報はありませんが、カーネルドライバーがロードされていることも確認できません。Hailoによると、-LAE版と-FAE版のチップとカーネルドライバーは同じとのことです。
仮に-LAE版と-FAE版で何か違いがあったとしても、デバイスはバス上で列挙され、lspciで表示されるはずです。(busybox版と、Entwareインストール後のpciutlsのフルlspciの両方を使用)
起動時に認識を妨げるような特別な設定はないと思います:
[~] # cat /proc/cmdline
consoleblank=0 console=ttyS0,115200n8 intel_iommu=on,igfx_off i915.enable_hd_vgaarb=1 iommu=pt i915.disable_power_well=0 i915.enable_rc6=0 i915.enable_guc=2 memmap=2M$0x8000000 ramoops.mem_address=0x8000000 ramoops.mem_size=0x200000 ramoops.console_size=0x100000 usbcore.autosuspend=-1 zswap.enabled=1 zswap.compressor=lz4 BOOT_IMAGE=/boot/bzImage root=/dev/ram0 rw
iommuの設定はVMで利用可能にするために重要かもしれませんが、カードの列挙を妨げるものではないはずです…
何かBIOSで切り替えられる項目など、試す価値のある設定はありますか?
B+MキーまたはMキーのHailo-8を動作させたことがある方はいらっしゃいますか?
