# PCIe Pass 經驗
>參考 http://doc.ihuaj.com/1291968#_171
---
## BIOS 設定
- BIOS 虛擬化
- intel 虛擬化
- VT-D 開啟:IO 虛擬化
- ASPM 開啟:Active State Power Management
---
## 直通相關設定
---
1. 開啟 iommu
修改 grub 設定
```shell
$ vi /etc/default/grub
```
```coffeescript=
# RUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb:off"
```
---
檢查內容
- 有輸出為正常
- 無輸出代表硬體不支持或為開啟
```shell
$ update-grub
$ dmesg | grep -e DMAR -e IOMMU
```
---
2. 修改 VFIO 設定
```shell
$ vi /etc/modules
```
- 加入以下 modules 到 kernel
```json=
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
```
---
3. 禁止啟動驅動
```shell
echo "blacklist radeon" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nvidia" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nvidiafb" >> /etc/modprobe.d/blacklist.conf
echo "blacklist i2c_nvidia_gpu" >> /etc/modprobe.d/blacklist.conf
echo "blacklist snd_hda_intel" >> /etc/modprobe.d/blacklist.conf
echo "blacklist snd_hda_codec_hdmi" >> /etc/modprobe.d/blacklist.conf
echo "blacklist i915" >> /etc/modprobe.d/blacklist.conf
update-initramfs -u
```
---
## Windows
---
- SeaBIOS 配置

---
- OVMF 配置

---
**Other considerations**
When passing through a GPU, the best compatibility is reached when using q35 as machine type, OVMF (EFI for VMs) instead of SeaBIOS and PCIe instead of PCI. Note that if you want to use OVMF for GPU passthrough, the GPU needs to have an EFI capable ROM, otherwise use SeaBIOS instead.
---
- 記得載入 [VirtIO](https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.185-1/virtio-win.iso) 驅動光碟 iso

---
- 調整 Option -> Boot Order

---
- 把顯卡 Pass 進去(可用 ``lspci | grep VGA`` 查看)

> 若有 function number 建議分開傳入
---
### REF
https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
https://pve.proxmox.com/wiki/PCI(e)_Passthrough
{"metaMigratedAt":"2023-06-15T09:31:13.853Z","metaMigratedFrom":"Content","title":"PCIe Pass 經驗","breaks":true,"contributors":"[{\"id\":\"7852a99d-c463-4348-8b6b-b749d5026301\",\"add\":2578,\"del\":483}]"}