沒有有線網路卡的筆記本如何在PVE下All in one?—NAS + Linux +win下載機

彧先生發表於2024-03-14

沒有有線網路卡的筆記本在PVE下All in one | NAS + Linux + Win下載機 (保姆級未完成版)


目錄:

1、前言
2、PVE的安裝
3、PVE聯網前的準備工作
4、PVE使用無線網路卡進行聯網
5、PVE無線網路卡的橋接
6、PVE下建立虛擬機器:NAS + Linux + Win下載機

1、前言

  十年前的舊筆記本,吃灰許久。在海鮮市場看了一下價值也不大,索性利用一下吧。之前弄了臺J4125小主機做了all in one,買回來才發現不是剛需,吃了我家幾度電便在海鮮市場出掉了。因為最近有NAS的需求,所以想在搞一臺,便宜的吧效能不行 貴的吧買不起,於是鎖定了這檯筆記本。因為這個筆記本是低壓U,應該也不會太耗電吧,過一陣買一個功率儀測一下。

  因為沒有軟路由的需求,我也沒有安裝op、愛快,所以我這裡就不寫這一部分了。還有就是這篇部落格的主要篇幅是寫關於 如何讓PVE使用無線網路卡進行聯網 和 無線網路卡的橋接。so,如果你的裝置有有線網路卡 其實沒必要往下看了 這隻會浪費你的時間。大多數人都是用是有線網路卡進行連線的,非常突出的優勢:穩定。所以這篇部落格可能能幫助到一小部分:裝置沒有有線網路卡 又或者像我的電腦一樣有有線網路卡 但是tmd網口壞了 問了十多家店都沒有這個口。有簡單的方法就是買個USB有線網路卡 ,有的網路卡可能需要裝一下驅動,這種方法要比弄無線網路卡簡單多,穩定性呢,這個我還真不好說,因為我之前買過一個有線網路卡,當時是win系統使用,經常性的斷聯,當然也有可能是我usb網路卡質量的原因。

  我搞這些東西一直是信奉兩個準則:穩定和簡單。但是這個搞這個無線網路卡確實是這幾個可行性方案裡最麻煩的,也不是最穩定的。直接買個有有線網路卡的裝置、用usb有線網路卡,minipice有線網路卡...... 這些都要比無線網路卡要簡單,穩定性的話真不好說(主機板自帶的有線網路卡最穩定),因為我用了幾天這個無線也確實還行。大家也可以試試這幾個方案。那我為啥還選擇這個無線網路卡呢,這個確實是我經過多方面綜合考量來做的決定,一是路由器的網口告急,家裡的TV、機頂盒、閘道器都在用;二是,這個十來年的老筆記本放在電視櫃上總是顯得格格不入。所以呢,現階段選擇了它。後面我可能也會測測usb網路卡、minipice有線網路卡。

  


  參考:

  電腦只有無線網路卡,pve如何聯網 - 知乎 (zhihu.com)

  Proxmox VE(PVE)連線WiFi及一些配置_proxmox連線wifi-CSDN部落格

  PVE 使用無線網路卡 - 簡書 (jianshu.com)

  Proxmox(pve)使用無線網路卡WIFI6-AX210教程 - 嗶哩嗶哩 (bilibili.com)

  proxmox使用ax210連線無線網路 - 嗶哩嗶哩 (bilibili.com)

  proxmox虛擬機器使用NAT網路 - 嗶哩嗶哩 (bilibili.com)

  Proxmox VE同時配置NAT共享IP和獨立IP虛擬機器 - 知乎 (zhihu.com)

  網路配置 - Proxmox VE

  pve下使用無線網路卡做橋接的另一種解決方案:四地址模式-軟路由,x86系統,openwrt(x86),Router OS 等-恩山無線論壇 (right.com.cn)

  PVE聯網及更換國內源 - 今天的努力 - 部落格園 (cnblogs.com)

  Proxmox VE(PVE)開啟硬體直通(網路卡+硬碟)_pve直通網路卡-CSDN部落格

  [proxmox ve小技巧]把網路卡都直通出去也能管理PVE的方法 - 嗶哩嗶哩 (bilibili.com)

  Proxmox(pve)叢集(8)建立虛擬機器 - 知乎 (zhihu.com)

  Proxmox VE(PVE)開啟IOMMU功能實現硬體直通及直通錯誤解決_no iommu detected, please activate it.see document-CSDN部落格

  ProxmoxVE NAS/AIO實戰- PCIe直通(Ryzen/A卡獨顯直通+SATA控制器直通) - 知乎 (zhihu.com)

  Proxmox VE(PVE)直通顯示卡 踩坑經驗 - 企鵝大大的部落格 (qiedd.com)

  intel 虛擬化 VT-d VT-x VT-c 有什麼區別,各是什麼意思,有什麼作用 - rebeca8 - 部落格園 (cnblogs.com)

  PVE硬體直通之強制IOMMU分組_pve iommu分組-CSDN部落格

  佛西部落格 - PVE開啟硬體直通功能 (buduanwang.vip)

  PCI直通 - Proxmox VE

  Proxmox VE 中文手冊 v7.3 — Promxox VE 中文文件 7.1 文件 (pve-doc-cn.readthedocs.io)

  感謝這些朋友前期的探索和無私分享,為我們後來者提供了非常大的幫助和便利。感謝 感恩!!!


2、PVE的安裝

  2.1 下載PVE映象

    PVE官網下載映象:ISO - Proxmox Virtual Environment

    選擇你要安裝的版本,我安裝的是7.4,因為我的筆記本安裝8.x有點問題,索性直接安裝7.x版本。

      

    後續想要升級更新版本,官網有教程:Downloads - Proxmox VE

      

    2.2 映象寫入隨身碟

      推薦一個非常好用的寫盤軟體 balenaetcher 官網下載地址:balenaEtcher - Flash OS images to SD cards & USB drives

      這個步驟 就不寫了

      PS:如果你經常裝機、製作啟動盤推薦一個非常好用的啟動盤製作工具 ventoy 官網:Ventoy

         簡單來說,Ventoy是一個製作可啟動隨身碟的開源工具。
         有了Ventoy無需反覆地格式化隨身碟,你只需要把 ISO/WIM/IMG/等型別的檔案直接複製到隨身碟裡面就可以啟動了,無需其他操作。     

    2.3 安裝PVE

      2.3.1 開機選擇u盤啟動

      2.3.2 安裝PVE

      · 2.3.2.1-A

      

      · 2.3.2.2-B

      

      · 2.3.2.3-C

      

      · 2.3.2.4-D

      

      · 2.3.2.5-E

      

      · 2.3.2.6-F

      管理介面:選擇你要使用的網路卡

      主機名:xxx.xxx的域名格式

      IP地址(CIDR):

      閘道器:

      DNS伺服器:114.114.114.114

      

      · 2.3.2.7-G

      

      2.3.3 安裝成功

        安裝成功後自動重啟,會顯示登入的IP地址和埠,可以透過 https://+IP地址+8006 進行登入管理,

        但是現在你是用無線網路卡進行連線,此時並沒有聯網,所以進不去管理介面,

        現在我們可以透過PVE主機進行設定聯網,之後才可以透過同一區域網的另一裝置來進入登入管理介面

        使用者名稱:root 密碼:安裝介面 2.3.2.5-E 設定的密碼

        

        · 至此安裝完成


3、PVE聯網前的準備工作

  3.1 檢視網路卡的名稱

    命令:ip a

    一般來說en開頭的是有線網路卡,wl開頭的是無線網路卡。OK,現在我們記住無線網路卡的名稱:wlp2s0

    不要記我的,記你自己的,不同的裝置是不一樣的

    如果下面有顯示你的網路卡則代表驅動成功,否則需要安裝你的網路卡驅動

ip a

            

  3.2 安裝無線工具

    要使PVE能進行無線網連線那麼我們需要安裝兩個工具,才能使PVE的無線網路卡進行聯網

    · WiFi掃描工具:wireless-tools

    · WiFi認證工具:wpasupplicant

    ------------------------------------------------------------------------------------------

    · 如果你的裝置有有線網路卡,那麼可以直接插有線進行安裝

    · 如果你有安卓或鴻蒙裝置,則可以透過手機的USB網路共享,使PVE聯網,進行線上安裝

    · 如果以上都無法用,那麼你可以選擇離線安裝,只需要一個隨身碟

    · 如果以上都無法用,那麼還有一個非常好的方法,利用隨身WiFi,如果你手上有的話     

    3.2.1 透過有線網路或者USB共享網路,進行線上安裝無線工具

      A. 先把你的有線網路插上 或者把手機用資料線連上電腦,且把手機的USB網路共享開啟

      C. 此時檢視一下電腦有沒有識別出來你的有線網路卡或者是手機開啟的USB網路卡(usb0)

        還記得,我說利用隨身WiFi吧,和這個步驟一樣,只是要換一下網路卡名稱

          

      D. 上圖我這裡已經識別到了usb0,但是此時還不能上網,還需要配置一下,開啟這個檔案   

nano /etc/network/interfaces

      使用手機的USB共享網路時,直接插電腦上是不會自動配置的,需要在 /etc/network/interfaces 中新增 :     

auto usb0
iface usb0 inet dhcp

      

      E. 輸入 reboot 重啟 PVE     

reboot

      F. 重啟後 輸入 ip a 看一下usb0網路卡有沒有IP地址 如果有 ping www.baidu.com 看一下通不通。     

ip a
ping www.baidu.com

      G. ping通了 恭喜你 PVE宿主機已經成功聯網,現在讓我們來更新一下。但是現在的是官方源,有點慢,也不是不能用。

       我沒有換,這時你可以選擇用和裝置在同一區域網下的另一裝置來進行登入web介面來操作了,我選擇了等待20分鐘哈哈哈,我也把國內源放在這,自己選擇 

# 更新證書,避免無法使用https協議
sudo apt install apt-transport-https ca-certificates

# 替換國內源,檔案地址:/etc/apt/sources.list 可先將其備份
cp /etc/apt/sources.list /etc/apt/sources.list.bak
檔案替換內容:
# 預設註釋了原始碼映象以提高 apt update 速度,如有需要可自行取消註釋
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free

deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

# 替換PVE軟體源
檔案地址:/etc/apt/sources.list.d/pve-enterprise.list
備份命令:cp /etc/apt/sources.list.d/pve-enterprise.list /etc/apt/sources.list.d/pve-enterprise.list.bak

替換內容:
deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian bullseye pve-no-subscription     
#不換源直接跳到這一步
# 更新一下
apt-get update

      H. 下一步,可以安裝兩個WiFi工具了    

apt-get install wpasupplicant wireless-tools

      I. 恭喜安裝成功,下一步可以開始設定連線WiFi了,可以直接跳到

    3.2.2 離線安裝無線工具

      如果你的裝置沒有有線網口,不能使用USB共享網路,手上沒有可用的隨身WiFi,再選擇使用這種方法,因為它相對麻煩

      首先 你要準備一個u盤,另一個可以上此網站且可以連線隨身碟的裝置

      A. 確定PVE的Debian版本       

cat /etc/debian_version

      

      B. 根據Debian版本來進行下載下載離線安裝包和依賴並複製到隨身碟的根目錄,把隨身碟插到裝置上

        線上下載:Packages for Linux and Unix - pkgs.org阿里巴巴開源映象站-OPSX映象站-阿里雲開發者社群 (aliyun.com)

       

      C. 檢查PVE裝置有沒有識別你的u盤

fdisk -l

      

      D. 建立一個目錄用於掛載u盤      

mkdir /usb

      E. 把隨身碟 /dev/sdc1 掛載到 /usb 目錄下 ,你的u盤可能是/dev/sdb1,根據3.2.2-C的圖,系統識別出來的名稱。

mount /dev/sdc1 /usb

      F. 進入隨身碟目錄,可檢視隨身碟裡檔案

cd /usb

      G. 開始安裝,先安裝依賴(l開頭的是依賴),後安裝工具

dpkg -i xxx+Tab補全

      H. 都安裝成功後,解除安裝u盤,無線工具安裝成功,reboot重啟一下。下面簡單配置一下就可以使PVE宿主機聯網了

cd
umount /dev/sdc1
reboot

     


4、PVE使用無線網路卡進行聯網

  4.1 配置網路檔案

    A. 掃描WiFi,如果出現:Interface doesn't support scanning : Network is down 要開啟一下網路卡:ifup 網路卡名稱

iwlist wlp2s0 scanning

    

    B. 獲取wifi連線的密碼的密文

wpa_passphrase WiFi的SSID WiFi密碼

    

    C. 配置網路檔案

nano /etc/network/interfaces

     兩種聯網方式,一、指定靜態ip;二、dhcp自動分配ip。因為後面還得進行橋接配置,所以我就選擇比較簡單的dhcp方式

# 指定靜態ip
auto wlp2s0 iface wlp2s0 inet static address
192.168.1.3/24 gateway 192.168.1.1 wpa-ssid xxxxxx wpa-psk xxxxxxxxxxxxx # dhcp自動分配ip
auto wlp2s0 iface wlp2s0 inet dhcp wpa-ssid xxxxxx wpa-psk xxxxxxxxxxxxxx

    因為PVE不支援無線網路卡的橋接,所以要關閉虛擬網路卡橋接無線網路卡,否則無法進行聯網。

    如果你的電腦只有無線網路卡,或者在安裝的時候你選擇了無線網路卡,那麼預設生成的配置就會使用無線網路卡來作為橋接的網路卡

auto vmbr0
iface vmbr0 inet static
        address 192.168.100.2/24
        gateway 192.168.100.1
        bridge-ports enp3s0  #enp3s0是虛擬網路卡橋接的網路卡,如果是你的無線網路卡,你需要改成none,即:bridge-ports none
bridge-stp off bridge-fd 0

    如果你之前設定了USB網路共享,記得刪除它。

    至此,網路配置完成。reboot重啟裝置。

    

    ping www.baidu.com 看看通不通,恭喜你。

    如果不通 可能需要你來啟動一下無線網路卡:

    ifup 網路卡名稱 ——開啟網路卡 (ifdown 網路卡名稱——關閉網路卡 )

  4.2 使用同一區域網的其他裝置來管理PVE裝置

    A. 檢視PVE的IP地址,ip a

ip a

    

    B. 登入PVE的web管理頁面

    使用同一區域網的另一裝置進入

    https:// + 你的ip地址 + :8006/

    

    


5、PVE只有無線網路卡實現橋接

  5.1 目前的方案

    A. 使用NAT網路。在pve中使用一個虛擬網口作為閘道器,透過設定ipv4轉發將所有請求到這個虛擬網口的流量轉發到無線網路卡上,從而實現pve中使用無線網路卡為虛擬機器提供網路 PVE 使用無線網路卡 - 簡書 (jianshu.com)

    虛擬機器對pve的上級裝置(路由器)不可見,因為所有流量都是透過ipv4轉發到無線網路卡上的,對路由器而言流量就像是來自pve本身,而非虛擬機器,因此外部裝置(比如路由器,或另一臺電腦)想訪問虛擬機器就得手動在pve中設定路由表

    虛擬機器內需要做額外的IP設定才能實現轉發,或PVE同時需要作為dhcp-server

    B. 使用用win去橋接。將所有網路裝置全部直通給一個精簡版的win,使用用win去橋接

    非必要使用win,單獨為了橋接開一個win,佔用裝置資源

    C. 四地址模式。透過在資料包包含一個額外的MAC地址欄位,使得無線網路卡可以知道資料包是為橋接的其他裝置而傳送的,解決了無線網路無法直接作為橋接埠的問題 pve下使用無線網路卡做橋接的另一種解決方案:四地址模式-軟路由,x86系統,openwrt(x86),Router OS 等-恩山無線論壇 (right.com.cn)

    你的無線網路卡和無線接入點必須得支援四地址模式

    iw list命令,輸出資訊找到"Supported interface modes"部分,如果有 "AP/VLAN"或"mesh point",那麼你的無線網路卡應該支援四地址模式。

    5.1節參考文章:pve下使用無線網路卡做橋接的另一種解決方案:四地址模式-軟路由,x86系統,openwrt(x86),Router OS 等-恩山無線論壇 (right.com.cn)

    

  5.2 虛擬機器橋接配置

    因為本來就有用win來做下載機的打算,所以對於我來說不算佔用裝置資源,我選擇5.1-B的方案

    另外兩個方案,我有掛大佬的配置連結,根據自己的需求,選擇適合自己的方式

    5.1.1 Win10虛擬機器的安裝

    A. 在web管理介面,上傳Win10的映象

    

    B. 建立虛擬機器

    

    C. 選擇IOS映象,選擇客戶機作業系統,如果是Linux的系統客戶機作業系統那裡,保持預設就好。

    

    D. 系統配置

     顯示卡:根據自己的需求進行選擇,我這裡沒有對顯示卡的特殊需求,故選擇預設即可

     機型:按需選擇     

      i440fx:一箇舊的主機板模擬型別,它模擬的是 Intel 440FX 主機板,該主機板用於早期的 x86 架構計算機。i440fx 是一種較為傳統和相容性較高的選擇,適用於需要與老舊作業系統或特定硬體環境相容的情況。然而,i440fx 在一些高階特性方面可能有一些限制,並且不支援某些現代技術。

      q35:一種更現代的主機板模擬型別,它模擬的是 Intel Q35 Express 晶片組,該晶片組用於較新的 x86 架構計算機。q35 提供了更多的功能和先進的虛擬化特性,如 PCI Express 裝置的直通、高階電源管理等。它在效能和功能方面相對較好,適用於大多數現代虛擬化場景。

     SCSI控制器:按需選擇

      virtIO SCSI:virtIO SCSI 是一種在虛擬化環境中常用的高效能虛擬儲存控制器。它透過使用 QEMU 的 virtIO 驅動程式和 SCSI 協議實現,提供了較低的虛擬化開銷和更好的效能。virtIO SCSI 可以與虛擬機器中的客戶作業系統進行直接通訊,提供快速、可靠的儲存訪問。

      virtIO SCSI Single:virtIO SCSI Single 是 virtIO SCSI 控制器的一個變種,它只有一個佇列。相比於普通的 virtIO SCSI,它在一些場景中可能會有較低的效能,但對於某些特定的用例或舊版本的作業系統可能更適用。

      MegaRAID SAS 8708EM2:MegaRAID SAS 8708EM2 是一款物理儲存控制器,用於管理和控制 SATA 和 SAS 硬碟驅動器。它是 LSI Logic(現在是 Broadcom)生產的硬體 RAID 控制器,支援多種 RAID 級別和高階功能,如熱插拔、快取和資料保護。

      LSI 53C810:LSI 53C810 是一款舊版的 SCSI 控制器,用於連線和管理 SCSI 裝置。它是古老的硬體裝置,通常在過去用於連線磁碟驅動器、磁帶機等 SCSI 裝置。

      LSI 53C895A:LSI 53C895A 是一款先進的 SCSI 控制器,也用於連線和管理 SCSI 裝置。它提供更高的效能和更多的功能,支援廣泛的 SCSI 裝置和高階特性。

     

    E. 磁碟

    匯流排/裝置:

     IDE(Integrated Drive Electronics)是一種較舊的介面標準,用於將儲存裝置(例如硬碟和光碟機)連線到計算機。它已經被較新的標準如SATA所取代。

     SATA(Serial Advanced Technology Attachment)是一種現代的介面標準,用於將儲存裝置連線到計算機。相比IDE,它提供更快的資料傳輸速度和更好的效能。

     VirtIO block是一種虛擬化介面,可以使虛擬機器有效地訪問儲存裝置。它為執行在虛擬機器中的客戶作業系統與超級監視程式或主機系統的儲存子系統之間提供了標準化的通訊方式。

     SCSI(Small Computer System Interface)是一組標準,定義了計算機和外部裝置(包括儲存裝置)之間的通訊方式。SCSI最初設計用於將多個裝置連線到單個匯流排,但隨著時間的推移,它不斷髮展,幷包括支援不同傳輸速度和技術的各種版本和協議。

    快取:

     無快取(No cache):資料直接讀寫到磁碟,沒有使用任何快取。這種方式可以保證資料的永續性和一致性,但讀寫效能較低。

     Direct sync(直接同步):資料先被寫入快取,然後同步寫入磁碟。在資料同步完成之前,系統會阻塞等待磁碟操作完成的確認訊號。這種方式可以提高寫入效能,但仍保證了資料的永續性和一致性。

     Write through(寫透):資料先被寫入快取,然後立即被寫入磁碟。寫入快取和寫入磁碟是同時進行的,不需要等待磁碟操作的確認。這種方式可以提高寫入效能,但對於讀取操作,仍需要從磁碟中獲取資料,可能降低讀取效能。

     Write back(寫回):資料首先被寫入快取,然後根據一定的策略非同步寫入磁碟。在此期間,應用程式可以繼續執行其他操作,而不需要等待磁碟操作完成的確認。這種方式可以顯著提高寫入效能,但存在資料丟失的風險,因為在資料寫入磁碟之前發生系統崩潰或斷電時,快取中的資料會丟失。

     Writeback(不安全的寫回):與"Write back"相似,但沒有提供有效的機制來保護資料免受系統崩潰或斷電的影響。這種方式的優勢是更高的寫入效能,但風險更大,可能導致資料丟失或不一致。因此,它通常用於對資料完整性要求較低、但需要更高效能的應用場景。

    非同步IO:

     io_uring是一個Linux核心提供的非同步I/O框架,它可以實現高效的非阻塞I/O操作。透過使用io_uring,應用程式可以在發起I/O請求後繼續執行其他任務,而無需等待I/O操作完成,從而提高了系統的併發性和吞吐量。

     Native通常指的是原生執行緒(native threads)。原生執行緒是由作業系統直接支援和管理的執行緒,與特定的程式語言或庫無關。使用原生執行緒可以充分利用作業系統提供的多執行緒排程和同步機制,但也可能會面臨執行緒建立、銷燬和上下文切換等開銷較大的問題。

     Threads(執行緒)是一種輕量級的執行單元,可以在應用程式中併發執行不同的任務。執行緒可以是原生執行緒,也可以是由程式語言或庫提供的抽象層實現的使用者級執行緒。使用者級執行緒使用協作式排程而不是作業系統的排程機制,並且其建立和切換的開銷較小,但在某些情況下可能受到系統資源限制或阻塞呼叫的影響。

    

    F. CPU、記憶體

    根據自己的CPU和客戶機的大概使用資源來填寫合適的

    

    

    G. 網路

    模型:

     Intel E1000:這是一種基於軟體模擬的虛擬網路介面卡,模擬了Intel 82545EM Gigabit Ethernet控制器。E1000廣泛用於許多虛擬化平臺,效能穩定且相容性良好。

     VirtIO半虛擬化:VirtIO是一種半虛擬化技術,透過在虛擬機器和宿主機之間共享驅動程式和裝置模型來提供高效能和低延遲的網路通訊。VirtIO網路介面卡需要使用相應的VirtIO驅動程式來實現。

     Realtek RTL8139:這是一種基於軟體模擬的虛擬網路介面卡,模擬了Realtek RTL8139 Fast Ethernet控制器。RTL8139適用於一些虛擬化平臺,但效能可能相對較低。

     VMware VMXNET3:這是VMware開發的高效能虛擬網路介面卡,專門為VMware虛擬化環境最佳化。VMXNET3提供了高速資料傳輸、低CPU利用率和更好的網路效能,適用於在VMware虛擬機器上執行的場景。

    

    H. 完成安裝

    5.1.2 配置橋接

    md 卡在直通了,

    我在英特爾官網:英特爾® 產品規格高階搜尋 (intel.com) 確認了,這個cpu型號的支援,

    還在win下用英特爾的官方軟體檢測了支援,英特爾® 處理器標識實用程式 - Windows* 版本 (intel.cn)

    

    

    檔案也進行了配置

/etc/default/grub

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
GRUB_CMDLINE_LINUX=""


update-grub /etc/modules vfio vfio_iommu_type1 vfio_pci vfio_virqfd
update-initramfs -u -k all reboot
   

    根據官網步驟:https://pve.proxmox.com/wiki/PCI_Passthrough 和其他網友的步驟來進行驗證

root@pve:~# dmesg | grep -e DMAR -e IOMMU
[    0.048212] DMAR: IOMMU enabled
root@pve:~# dmesg | grep 'remapping'
[    0.137483] x2apic: IRQ remapping doesn't support X2APIC mode
root@pve:~# 

# 貌似,問題出在了 dmesg | grep 'remapping'
# 按照官網的說法:

如果你看到以下一行:

  • AMD-Vi: Interrupt remapping enabled
  • DMAR-IR: Enabled IRQ remapping in x2apic mode ('x2apic' can be different on old CPUs, but should still work)DMAR-IR: Enabled IRQ remapping in x2apic mode ('x2apic' 在老的 CPU 上可能有所不同,但仍然可以工作)

   那麼支援重對映。

然而,我的則輸出:x2apic: IRQ remapping doesn't support X2APIC mode

那麼我便開始嘗試,官網給出的解決方案:

  If your system doesn't support interrupt remapping, you can allow unsafe interrupts with:如果你的系統不支援中斷重對映,你可以使用以下命令來允許不安全的中斷:

    echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf

然而輸出結果仍是:

root@pve:~# dmesg | grep -e DMAR -e IOMMU
[ 0.048333] DMAR: IOMMU enabled
root@pve:~# dmesg | grep 'remapping'
[ 0.137838] x2apic: IRQ remapping doesn't support X2APIC mode
root@pve:~#

-------------------------------------------------------------------------

我去問了gpt,他給我的回答:

  gtp:

  根據您提供的dmesg輸出,可以看到系統中的IOMMU已經被啟用。這表明您的Proxmox Virtual Environment主機已經啟用了IOMMU硬體虛擬化支援,這是硬體直通功能的前提之一。

  關於"IRQ remapping doesn't support X2APIC mode"的訊息,這個訊息通常是由於系統檢測到x2APIC模式下的IRQ重對映不受支援而引起的。x2APIC是一種高階的APIC(高階可程式設計中斷控制器)模式,通常用於提高效能和擴充套件性。這個訊息本身並不一定表示問題,只是系統提示IRQ重對映在x2APIC模式下不支援。

  在大多數情況下,這個訊息並不會導致硬體直通功能的問題。如果您在配置硬體直通或在使用虛擬機器時遇到效能或穩定性問題,可以考慮將系統切換回傳統的APIC模式,以檢視是否有改善。

  如果您有任何其他關於硬體直通或Proxmox Virtual Environment的問題,歡迎繼續提問,我會盡力幫助您解決問題。

  我:

  如何切換:考慮將系統切換回傳統的APIC模式

  gpt: 

  要將系統切換回傳統的APIC模式,您可以在系統引導時透過核心引數來指定。下面是一般步驟:

  1. **編輯GRUB配置**:
  - 開啟終端並編輯GRUB配置檔案。通常,GRUB配置檔案位於`/etc/default/grub`。
  - 找到`GRUB_CMDLINE_LINUX`行,這裡列出了核心啟動引數。
  - 在引號內新增`nox2apic`引數。確保在其他引數之間用空格分隔。

  2. **更新GRUB配置**:
  - 儲存更改後,執行以下命令更新GRUB配置:`sudo update-grub`。

  3. **重啟系統**:
  - 重新啟動您的系統,以使更改生效。

  在系統重新啟動後,系統將以傳統的APIC模式啟動,而不是x2APIC模式。這可能會對硬體直通的效能或穩定性產生影響,具體影響可能因系統和硬體配置而異。如果您在切換回傳統APIC模式後遇到任何問題,請記得可以隨時再次編輯GRUB配置檔案並刪除`nox2apic`引數來恢復預設設定。

  請在執行此操作之前確保您瞭解正在進行的更改,並根據您的具體情況謹慎操作。如果您需要更多幫助或有其他問題,請隨時告訴我。

輸出結果:

root@pve:~# dmesg | grep -e DMAR -e IOMMU
[ 0.047596] DMAR: IOMMU enabled
root@pve:~# dmesg | grep 'remapping'
root@pve:~#

是的,x2apic: IRQ remapping doesn't support X2APIC mode ,這行輸出沒有了。我把這個資訊反饋給gpt,然後他並沒給我有用的可行方案。

目前看來,我的IOMMU已經啟用,除了,DMAR: IOMMU enabled,沒有任何輸出資訊。是不是還沒有進行分組呢?

官網給出的下一個步驟:

Verify IOMMU isolation 驗證 IOMMU 隔離

For working PCI passthrough, you need a dedicated IOMMU group for all PCI devices you want to assign to a VM.對於PCI直通,您需要一個專用的IOMMU組,用於所有您希望分配給VM的PCI裝置。

root@pve:~# find /sys/kernel/iommu_groups/ -type l
root@pve:~#

這將列出每個IOMMU組中的裝置。如果每個組中只有一個裝置,則表示IOMMU沒有正確進行分組

沒有任何輸出資訊,

To have separate IOMMU groups, your processor needs to have support for a feature called ACS (Access Control Services). Make sure you enable the corresponding setting in your BIOS for this.

要擁有獨立的 IOMMU 組,您的處理器需要支援一個稱為 ACS (訪問控制服務)的特性。請確保您在 BIOS 中啟用了相應的設定。

If you don't have dedicated IOMMU groups, you can try moving the card to another PCI slot.

如果您沒有專用的 IOMMU 組,您可以嘗試將該卡移動到另一個 PCI 插槽。

Should that not work, you can try using Alex Williamson's ACS override patch. However, this should be seen as a last option and is not without risks.

如果這不起作用,您可以嘗試使用 Alex Williamson 的 ACS 覆蓋補丁。然而,這應該被視為最後的選擇,並且不是沒有風險。

As of writing, the ACS patch is part of the Proxmox VE kernel and can be invoked via Editing the kernel command line. Addto the kernel boot command line (grub or systemd-boot) options.

在撰寫本文時,ACS補丁是Proxmox VE核心的一部分,可以透過編輯核心命令列來呼叫。

pcie_acs_override=downstream

隨後我在,/etc/default/grub中,進行了修改:

  GRUB_DEFAULT=0
  GRUB_TIMEOUT=5
  GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
  GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream video=vesafb:off vide>
  GRUB_CMDLINE_LINUX="nox2apic"

  #也嘗試了,GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream,multifunction"

 然而並不起作用。只是給我這樣的輸出資訊:

  root@pve:~# dmesg | grep -e DMAR -e IOMMU
  [ 0.000000] Warning: PCIe ACS overrides enabled; This may allow non-IOMMU protected peer-to-peer DMA
  [ 0.047964] DMAR: IOMMU enabled
  root@pve:~# dmesg | grep 'remapping'
  root@pve:~# find /sys/kernel/iommu_groups/ -type l
  root@pve:~#

檢查是否直接支援IOMMU分組,lspci -vv,如果裝置資訊中支援ACS(Access Control Services),便可直接透過設定開啟IOMMU分組。若不支援ACS,需要更新核心,關閉ACS檢查,開啟IOMMU分組,

  /* 檢查是否存在Capabilities: Access Control Services*/

  Capabilities: [2a0] Access Control Services

哪位大佬可以搞定,歡迎留言指出,我將會不勝感激。

------------------------------------------------------------------------------------------------------------------------

root@pve:~# dmesg | grep iommu
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-6.5.11-8-pve root=/dev/mapper/pve-root ro nox2apic quiet intel_iommu=on pcie_acs_override=downstream video=vesafb:off video=efifb:off
[ 0.047783] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.5.11-8-pve root=/dev/mapper/pve-root ro nox2apic quiet intel_iommu=on pcie_acs_override=downstream video=vesafb:off video=efifb:off
[ 0.569130] iommu: Default domain type: Translated
[ 0.569130] iommu: DMA domain TLB invalidation policy: lazy mode
root@pve:~#

----------------------------------------------------------------------------------------------------------------------- 

root@pve:~# lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers (rev 08)
00:02.0 VGA compatible controller: Intel Corporation Skylake GT2 [HD Graphics 520] (rev 07)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #1 (rev f1)
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
01:00.0 3D controller: NVIDIA Corporation GK208BM [GeForce 920M] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GK208 HDMI/DP Audio Controller (rev a1)
02:00.0 Network controller: Intel Corporation Dual Band Wireless-AC 3165 Plus Bluetooth (rev 79)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
root@pve:~#

-----------------------------------------------------------------------------------------------------------------------

root@pve:~# lspci -k
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers (rev 08)
Subsystem: Lenovo Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers
Kernel driver in use: skl_uncore
00:02.0 VGA compatible controller: Intel Corporation Skylake GT2 [HD Graphics 520] (rev 07)
Subsystem: Lenovo Skylake GT2 [HD Graphics 520]
Kernel driver in use: i915
Kernel modules: i915
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
Subsystem: Lenovo Sunrise Point-LP USB 3.0 xHCI Controller
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
Subsystem: Lenovo Sunrise Point-LP Thermal subsystem
Kernel driver in use: intel_pch_thermal
Kernel modules: intel_pch_thermal
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
Subsystem: Lenovo Sunrise Point-LP Serial IO I2C Controller
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
Subsystem: Lenovo Sunrise Point-LP CSME HECI
Kernel driver in use: mei_me
Kernel modules: mei_me
00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21)
Subsystem: Lenovo Sunrise Point-LP SATA Controller [AHCI mode]
Kernel driver in use: ahci
Kernel modules: ahci
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #1 (rev f1)
Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Kernel driver in use: pcieport
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Kernel driver in use: pcieport
00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)
Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Kernel driver in use: pcieport
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)
Subsystem: Lenovo Sunrise Point-LP LPC Controller
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
Subsystem: Lenovo Sunrise Point-LP PMC
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
Subsystem: Lenovo Sunrise Point-LP HD Audio
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel, snd_soc_skl, snd_soc_avs, snd_sof_pci_intel_skl
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
Subsystem: Lenovo Sunrise Point-LP SMBus
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801
01:00.0 3D controller: NVIDIA Corporation GK208BM [GeForce 920M] (rev a1)
Subsystem: Lenovo GK208BM [GeForce 920M]
Kernel modules: nvidiafb, nouveau
01:00.1 Audio device: NVIDIA Corporation GK208 HDMI/DP Audio Controller (rev a1)
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
02:00.0 Network controller: Intel Corporation Dual Band Wireless-AC 3165 Plus Bluetooth (rev 79)
Subsystem: Intel Corporation Dual Band Wireless-AC 3165
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Kernel driver in use: r8169
Kernel modules: r8169
root@pve:~#

------------------------------------------------------------------------------------------------------------------------

root@pve:~# lspci -vv
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers (rev 08)
Subsystem: Lenovo Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx-
Latency: 0
Capabilities: [e0] Vendor Specific Information: Len=10 <?>
Kernel driver in use: skl_uncore

00:02.0 VGA compatible controller: Intel Corporation Skylake GT2 [HD Graphics 520] (rev 07) (prog-if 00 [VGA controller])
Subsystem: Lenovo Skylake GT2 [HD Graphics 520]
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 128
Region 0: Memory at d0000000 (64-bit, non-prefetchable) [size=16M]
Region 2: Memory at c0000000 (64-bit, prefetchable) [size=256M]
Region 4: I/O ports at e000 [size=64]
Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
Capabilities: [40] Vendor Specific Information: Len=0c <?>
Capabilities: [70] Express (v2) Root Complex Integrated Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0
ExtTag- RBE+ FLReset+
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- FLReset-
MaxPayload 128 bytes, MaxReadReq 128 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
DevCap2: Completion Timeout: Not Supported, TimeoutDis- NROPrPrP- LTR-
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- 10BitTagReq- OBFF Disabled,
AtomicOpsCtl: ReqEn-
Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee08004 Data: 0024
Capabilities: [d0] Power Management version 2
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [100 v1] Process Address Space ID (PASID)
PASIDCap: Exec+ Priv-, Max PASID Width: 14
PASIDCtl: Enable- Exec- Priv-
Capabilities: [200 v1] Address Translation Service (ATS)
ATSCap: Invalidate Queue Depth: 00
ATSCtl: Enable-, Smallest Translation Unit: 00
Capabilities: [300 v1] Page Request Interface (PRI)
PRICtl: Enable- Reset-
PRISta: RF- UPRGI- Stopped-
Page Request Capacity: 00008000, Page Request Allocation: 00000000
Kernel driver in use: i915
Kernel modules: i915

00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21) (prog-if 30 [XHCI])
Subsystem: Lenovo Sunrise Point-LP USB 3.0 xHCI Controller
Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 124
Region 0: Memory at d2300000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [70] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0-,D1-,D2-,D3hot+,D3cold+)
Status: D3 NoSoftRst+ PME-Enable+ DSel=0 DScale=0 PME-
Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit+
Address: 00000000fee08004 Data: 0023
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci

00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
Subsystem: Lenovo Sunrise Point-LP Thermal subsystem
Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Interrupt: pin C routed to IRQ 18
Region 0: Memory at d232a000 (64-bit, non-prefetchable) [size=4K]
Capabilities: [50] Power Management version 3
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
Address: 00000000 Data: 0000
Kernel driver in use: intel_pch_thermal
Kernel modules: intel_pch_thermal

00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
Subsystem: Lenovo Sunrise Point-LP Serial IO I2C Controller
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
Region 0: Memory at d232b000 (64-bit, non-prefetchable) [size=4K]
Capabilities: [80] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D3 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [90] Vendor Specific Information: Len=14 <?>
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci

00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
Subsystem: Lenovo Sunrise Point-LP CSME HECI
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 126
Region 0: Memory at d232c000 (64-bit, non-prefetchable) [size=4K]
Capabilities: [50] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [8c] MSI: Enable+ Count=1/1 Maskable- 64bit+
Address: 00000000fee01004 Data: 0023
Kernel driver in use: mei_me
Kernel modules: mei_me

00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21) (prog-if 01 [AHCI 1.0])
Subsystem: Lenovo Sunrise Point-LP SATA Controller [AHCI mode]
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 123
Region 0: Memory at d2328000 (32-bit, non-prefetchable) [size=8K]
Region 1: Memory at d2331000 (32-bit, non-prefetchable) [size=256]
Region 2: I/O ports at e080 [size=8]
Region 3: I/O ports at e088 [size=4]
Region 4: I/O ports at e060 [size=32]
Region 5: Memory at d232f000 (32-bit, non-prefetchable) [size=2K]
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee04004 Data: 0023
Capabilities: [70] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [a8] SATA HBA v1.0 BAR4 Offset=00000004
Kernel driver in use: ahci
Kernel modules: ahci

00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #1 (rev f1) (prog-if 00 [Normal decode])
Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 120
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: d000-dfff [size=4K] [16-bit]
Memory behind bridge: d1000000-d20fffff [size=17M] [32-bit]
Prefetchable memory behind bridge: a0000000-b1ffffff [size=288M] [32-bit]
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [40] Express (v2) Root Port (Slot+), MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0
ExtTag- RBE+
DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 256 bytes, MaxReadReq 128 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr+ TransPend-
LnkCap: Port #1, Speed 5GT/s, Width x4, ASPM not supported
ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s, Width x4
TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt-
SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise-
Slot #0, PowerLimit 25W; Interlock- NoCompl+
SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg-
Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock-
SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock-
Changed: MRL- PresDet- LinkState+
RootCap: CRSVisible-
RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna+ CRSVisible-
RootSta: PME ReqID 0000, PMEStatus- PMEPending-
DevCap2: Completion Timeout: Range ABC, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- LN System CLS Not Supported, TPHComp- ExtTPHComp- ARIFwd+
AtomicOpsCap: Routing- 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ 10BitTagReq- OBFF Disabled, ARIFwd-
AtomicOpsCtl: ReqEn- EgressBlck-
LnkCap2: Supported Link Speeds: 2.5-5GT/s, Crosslink- Retimer- 2Retimers- DRS-
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee04004 Data: 0021
Capabilities: [90] Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Capabilities: [a0] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [100 v1] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt+ RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
RootCmd: CERptEn+ NFERptEn+ FERptEn+
RootSta: CERcvd- MultCERcvd- UERcvd- MultUERcvd-
FirstFatal- NonFatalMsg- FatalMsg- IntMsg 0
ErrorSrc: ERR_COR: 0000 ERR_FATAL/NONFATAL: 0000
Capabilities: [140 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd- EgressCtrl- DirectTrans-
ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
Kernel driver in use: pcieport

00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1) (prog-if 00 [Normal decode])
Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 121
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
I/O behind bridge: [disabled] [16-bit]
Memory behind bridge: d2200000-d22fffff [size=1M] [32-bit]
Prefetchable memory behind bridge: [disabled] [64-bit]
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [40] Express (v2) Root Port (Slot+), MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0
ExtTag- RBE+
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 128 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr+ TransPend-
LnkCap: Port #5, Speed 5GT/s, Width x1, ASPM L1, Exit Latency L1 <16us
ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1
TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt-
SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise-
Slot #4, PowerLimit 10W; Interlock- NoCompl+
SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg-
Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock-
SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock-
Changed: MRL- PresDet- LinkState+
RootCap: CRSVisible-
RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna+ CRSVisible-
RootSta: PME ReqID 0000, PMEStatus- PMEPending-
DevCap2: Completion Timeout: Range ABC, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- LN System CLS Not Supported, TPHComp- ExtTPHComp- ARIFwd+
AtomicOpsCap: Routing- 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ 10BitTagReq- OBFF Disabled, ARIFwd-
AtomicOpsCtl: ReqEn- EgressBlck-
LnkCap2: Supported Link Speeds: 2.5-5GT/s, Crosslink- Retimer- 2Retimers- DRS-
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee08004 Data: 0021
Capabilities: [90] Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Capabilities: [a0] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [100 v0] Null
Capabilities: [140 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd- EgressCtrl- DirectTrans-
ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
Capabilities: [200 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
PortCommonModeRestoreTime=40us PortTPowerOnTime=10us
L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
T_CommonMode=40us LTR1.2_Threshold=106496ns
L1SubCtl2: T_PwrOn=60us
Kernel driver in use: pcieport

00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1) (prog-if 00 [Normal decode])
Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin B routed to IRQ 122
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
I/O behind bridge: c000-cfff [size=4K] [16-bit]
Memory behind bridge: d2100000-d21fffff [size=1M] [32-bit]
Prefetchable memory behind bridge: [disabled] [64-bit]
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [40] Express (v2) Root Port (Slot+), MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0
ExtTag- RBE+
DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 128 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr+ TransPend-
LnkCap: Port #6, Speed 5GT/s, Width x1, ASPM L1, Exit Latency L1 <16us
ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1
TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt-
SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise-
Slot #5, PowerLimit 10W; Interlock- NoCompl+
SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg-
Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock-
SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock-
Changed: MRL- PresDet- LinkState+
RootCap: CRSVisible-
RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna+ CRSVisible-
RootSta: PME ReqID 0000, PMEStatus- PMEPending-
DevCap2: Completion Timeout: Range ABC, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- LN System CLS Not Supported, TPHComp- ExtTPHComp- ARIFwd+
AtomicOpsCap: Routing- 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ 10BitTagReq- OBFF Disabled, ARIFwd-
AtomicOpsCtl: ReqEn- EgressBlck-
LnkCap2: Supported Link Speeds: 2.5-5GT/s, Crosslink- Retimer- 2Retimers- DRS-
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee01004 Data: 0021
Capabilities: [90] Subsystem: Lenovo Sunrise Point-LP PCI Express Root Port
Capabilities: [a0] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [100 v1] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt+ RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
RootCmd: CERptEn+ NFERptEn+ FERptEn+
RootSta: CERcvd- MultCERcvd- UERcvd- MultUERcvd-
FirstFatal- NonFatalMsg- FatalMsg- IntMsg 0
ErrorSrc: ERR_COR: 0000 ERR_FATAL/NONFATAL: 0000
Capabilities: [140 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd- EgressCtrl- DirectTrans-
ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
Capabilities: [200 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
PortCommonModeRestoreTime=40us PortTPowerOnTime=10us
L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
T_CommonMode=150us LTR1.2_Threshold=306176ns
L1SubCtl2: T_PwrOn=150us
Kernel driver in use: pcieport

00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)
Subsystem: Lenovo Sunrise Point-LP LPC Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0

00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
Subsystem: Lenovo Sunrise Point-LP PMC
Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Region 0: Memory at d2324000 (32-bit, non-prefetchable) [disabled] [size=16K]

00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
Subsystem: Lenovo Sunrise Point-LP HD Audio
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 64
Interrupt: pin A routed to IRQ 129
Region 0: Memory at d2320000 (64-bit, non-prefetchable) [size=16K]
Region 4: Memory at d2310000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [50] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0-,D1-,D2-,D3hot+,D3cold+)
Status: D3 NoSoftRst+ PME-Enable+ DSel=0 DScale=0 PME-
Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
Address: 00000000fee01004 Data: 0024
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel, snd_soc_skl, snd_soc_avs, snd_sof_pci_intel_skl

00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
Subsystem: Lenovo Sunrise Point-LP SMBus
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 16
Region 0: Memory at d2330000 (64-bit, non-prefetchable) [size=256]
Region 4: I/O ports at efa0 [size=32]
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801

01:00.0 3D controller: NVIDIA Corporation GK208BM [GeForce 920M] (rev a1)
Subsystem: Lenovo GK208BM [GeForce 920M]
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 255
Region 0: Memory at d1000000 (32-bit, non-prefetchable) [size=16M]
Region 1: Memory at a0000000 (64-bit, prefetchable) [size=256M]
Region 3: Memory at b0000000 (64-bit, prefetchable) [size=32M]
Region 5: I/O ports at d000 [disabled] [size=128]
Expansion ROM at d2080000 [disabled] [size=512K]
Capabilities: [60] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [78] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64us
ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 25W
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
MaxPayload 256 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM L0s L1, Exit Latency L0s <512ns, L1 <4us
ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s (downgraded), Width x4 (downgraded)
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range AB, TimeoutDis+ NROPrPrP- LTR-
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp- ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- 10BitTagReq- OBFF Disabled,
AtomicOpsCtl: ReqEn-
LnkCap2: Supported Link Speeds: 2.5-8GT/s, Crosslink- Retimer- 2Retimers- DRS-
LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [100 v1] Virtual Channel
Caps: LPEVC=0 RefClk=100ns PATEntryBits=1
Arb: Fixed- WRR32- WRR64- WRR128-
Ctrl: ArbSelect=Fixed
Status: InProgress-
VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
Status: NegoPending- InProgress-
Capabilities: [128 v1] Power Budgeting <?>
Capabilities: [600 v1] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Capabilities: [900 v1] Secondary PCI Express
LnkCtl3: LnkEquIntrruptEn- PerformEqu-
LaneErrStat: 0
Kernel modules: nvidiafb, nouveau

01:00.1 Audio device: NVIDIA Corporation GK208 HDMI/DP Audio Controller (rev a1)
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin B routed to IRQ 17
Region 0: Memory at d2000000 (32-bit, non-prefetchable) [size=16K]
Capabilities: [60] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D3 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [78] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64us
ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 25W
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
MaxPayload 256 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM L0s L1, Exit Latency L0s <512ns, L1 <4us
ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s (downgraded), Width x4 (downgraded)
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range AB, TimeoutDis+ NROPrPrP- LTR-
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp- ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- 10BitTagReq- OBFF Disabled,
AtomicOpsCtl: ReqEn-
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel

02:00.0 Network controller: Intel Corporation Dual Band Wireless-AC 3165 Plus Bluetooth (rev 79)
Subsystem: Intel Corporation Dual Band Wireless-AC 3165
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 127
Region 0: Memory at d2200000 (64-bit, non-prefetchable) [size=8K]
Capabilities: [c8] Power Management version 3
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
Address: 00000000fee04004 Data: 0024
Capabilities: [40] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <512ns, L1 unlimited
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0W
DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
RlxdOrd+ ExtTag- PhantFunc- AuxPwr+ NoSnoop+ FLReset-
MaxPayload 128 bytes, MaxReadReq 128 bytes
DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr+ TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L1, Exit Latency L1 <32us
ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range B, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp- 10BitTagReq- OBFF Via WAKE#, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp- ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 16ms to 55ms, TimeoutDis- LTR+ 10BitTagReq- OBFF Disabled,
AtomicOpsCtl: ReqEn-
LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [100 v1] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
Capabilities: [140 v1] Device Serial Number 4c-34-88-ff-ff-be-e9-93
Capabilities: [14c v1] Latency Tolerance Reporting
Max snoop latency: 3145728ns
Max no snoop latency: 3145728ns
Capabilities: [154 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
PortCommonModeRestoreTime=30us PortTPowerOnTime=60us
L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
T_CommonMode=0us LTR1.2_Threshold=106496ns
L1SubCtl2: T_PwrOn=60us
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 17
Region 0: I/O ports at c000 [size=256]
Region 2: Memory at d2104000 (64-bit, non-prefetchable) [size=4K]
Region 4: Memory at d2100000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [40] Power Management version 3
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [70] Express (v2) Endpoint, MSI 01
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 10W
DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 4096 bytes
DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr+ TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us
ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp- 10BitTagReq- OBFF Via message/WAKE#, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp- ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ 10BitTagReq- OBFF Disabled,
AtomicOpsCtl: ReqEn-
LnkCap2: Supported Link Speeds: 2.5GT/s, Crosslink- Retimer- 2Retimers- DRS-
LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [b0] MSI-X: Enable+ Count=4 Masked-
Vector table: BAR=4 offset=00000000
PBA: BAR=4 offset=00000800
Capabilities: [100 v2] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
Capabilities: [140 v1] Virtual Channel
Caps: LPEVC=0 RefClk=100ns PATEntryBits=1
Arb: Fixed- WRR32- WRR64- WRR128-
Ctrl: ArbSelect=Fixed
Status: InProgress-
VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
Status: NegoPending- InProgress-
Capabilities: [160 v1] Device Serial Number 01-00-00-00-68-4c-e0-00
Capabilities: [170 v1] Latency Tolerance Reporting
Max snoop latency: 3145728ns
Max no snoop latency: 3145728ns
Capabilities: [178 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
PortCommonModeRestoreTime=150us PortTPowerOnTime=150us
L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
T_CommonMode=0us LTR1.2_Threshold=306176ns
L1SubCtl2: T_PwrOn=150us
Kernel driver in use: r8169
Kernel modules: r8169

root@pve:~#



相關文章