Freenas on ESXI - AHCI Passthrough - Intel C220 Lynx Point Controller

trogg

Cadet
Joined
Aug 1, 2020
Messages
3
Hi there.

I have installed freenas with success on a few baremetal HP Micro servers in the past but am having issues passing though my AHCI controller from ESXI to Freenas on a new rig.

Freenas sees the disks when installed on the machine in bare metal but not through ESXI.

System:
- Supermicro X10SDV-8C-TLNF4 motherboard
- Intel Xeon D-1541 processor
- Onboard 6ch Sata Intel C220 Lynx Point AHCI Controller (set to AHCI mode)
- 4x WD4000FYYZ Sata drives for Freenas
- 1TB M.2 NVMe wds100t3x0c-00sjgo SSD in the M2 slot running ESXI and Virtual images
- 32gb ECC ram
- Supermicro CSE-721TQ-250B 4 bay case


I have tried Freenas 11.3U4 on ESXI 7.0 and ESXI 6.7U3.

The Lynx point AHCI Controller shows up as passthrough capable in both versions of ESXI (although I have read that ESXI 7 no longer has drivers for the Lynx Point AHCI)

ESXI shows:

0000:00:1f.2 SATA controller: Intel Corporation Lynx Point AHCI Controller [vmhba0]

ESXI:
Code:
[root@esxi:~] lspci
0000:00:00.0 Host bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DMI2 [PCIe RP[0000:00:00.0]]
0000:00:01.0 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 1 [PCIe RP[0000:00:01.0]]
0000:00:02.0 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 2 [PCIe RP[0000:00:02.0]]
0000:00:02.2 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 2 [PCIe RP[0000:00:02.2]]
0000:00:03.0 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 3 [PCIe RP[0000:00:03.0]]
0000:00:03.2 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 3 [PCIe RP[0000:00:03.2]]
0000:00:05.0 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Map/VTd_Misc/System Management
0000:00:05.1 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO Hot Plug
0000:00:05.2 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO RAS/Control Status/Global Errors
0000:00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI
0000:00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1
0000:00:16.1 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #2
0000:00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2
0000:00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 [PCIe RP[0000:00:1c.0]]
0000:00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 [PCIe RP[0000:00:1c.4]]
0000:00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1
0000:00:1f.0 ISA bridge: Intel Corporation C224 Series Chipset Family Server Standard SKU LPC Controller
0000:00:1f.2 SATA controller: Intel Corporation Lynx Point AHCI Controller [vmhba0]
0000:00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller
0000:00:1f.6 Signal processing controller: Intel Corporation 8 Series Chipset Family Thermal Management Controller
0000:01:00.0 Non-Volatile memory controller: Sandisk Corp Device 5006 [vmhba1]
0000:07:00.0 PCI bridge: ASPEED Technology, Inc. AST1150 PCI-to-PCI Bridge
0000:08:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family
... shortened to fit in 3000 characters


but we don't see any disks or the AHCI PCI device in Freenas on ESXI 7.0 or ESXI 6.7U3 when we enable passthrough.

Virtual Freenas:
Code:
root@freenas[~]# pciconf -lv
hostb0@pci0:0:0:0:      class=0x060000 card=0x197615ad chip=0x71908086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '440BX/ZX/DX - 82443BX/ZX/DX Host bridge'
    class      = bridge
    subclass   = HOST-PCI
pcib1@pci0:0:1:0:       class=0x060400 card=0x00000000 chip=0x71918086 rev=0x01hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '440BX/ZX/DX - 82443BX/ZX/DX AGP bridge'
    class      = bridge
    subclass   = PCI-PCI
isab0@pci0:0:7:0:       class=0x060100 card=0x197615ad chip=0x71108086 rev=0x08hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82371AB/EB/MB PIIX4 ISA'
    class      = bridge
    subclass   = PCI-ISA
atapci0@pci0:0:7:1:     class=0x01018a card=0x197615ad chip=0x71118086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82371AB/EB/MB PIIX4 IDE'
    class      = mass storage
    subclass   = ATA
none0@pci0:0:7:3:       class=0x068000 card=0x197615ad chip=0x71138086 rev=0x08hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82371AB/EB/MB PIIX4 ACPI'
    class      = bridge
ahci0@pci0:2:3:0:       class=0x010601 card=0x07e015ad chip=0x07e015ad rev=0x00hdr=0x00
    vendor     = 'VMware'
    device     = 'SATA AHCI controller'
    class      = mass storage
    subclass   = SATA
mpt0@pci0:3:0:0:        class=0x010700 card=0x197615ad chip=0x00541000 rev=0x01hdr=0x00
    vendor     = 'Broadcom / LSI'
    device     = 'SAS1068 PCI-X Fusion-MPT SAS'
    class      = mass storage
    subclass   = SAS
... vmware devices removed to fit in 3000 characters


Freenas 11.3U4 on baremetal shows:
ahci0@pci0:0:31:2: class=0x010601 card=0x086d15d9 chip=0x8c028086 rev=0x05hdr=0x00 vendor = 'Intel Corporation' device = '8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]' class = mass storage subclass = SATA

which sounds right as Lynx Point is the codename for the c220 chipset.

Freenas 11.3U4 Baremetal:
Code:
root@freenas[~]# pciconf -lv
none0@pci0:255:11:0:    class=0x088000 card=0x6f818086 chip=0x6f818086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link 0/1'
    class      = base peripheral
none1@pci0:255:11:1:    class=0x110100 card=0x6f368086 chip=0x6f368086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link 0/1'
    class      = dasp
    subclass   = performance counters
none2@pci0:255:11:2:    class=0x110100 card=0x6f378086 chip=0x6f378086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link 0/1'
    class      = dasp
    subclass   = performance counters
none3@pci0:255:11:3:    class=0x088000 card=0x00000000 chip=0x6f768086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link Debug'
    class      = base peripheral
none4@pci0:255:12:0:    class=0x088000 card=0x6fe08086 chip=0x6fe08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none5@pci0:255:12:1:    class=0x088000 card=0x6fe18086 chip=0x6fe18086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none6@pci0:255:12:2:    class=0x088000 card=0x6fe28086 chip=0x6fe28086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none7@pci0:255:12:3:    class=0x088000 card=0x6fe38086 chip=0x6fe38086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none8@pci0:255:12:4:    class=0x088000 card=0x6fe48086 chip=0x6fe48086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none9@pci0:255:12:5:    class=0x088000 card=0x6fe58086 chip=0x6fe58086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none10@pci0:255:12:6:   class=0x088000 card=0x6fe68086 chip=0x6fe68086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none11@pci0:255:12:7:   class=0x088000 card=0x6fe78086 chip=0x6fe78086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none12@pci0:255:15:0:   class=0x088000 card=0x6ff88086 chip=0x6ff88086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none13@pci0:255:15:4:   class=0x088000 card=0x6fe08086 chip=0x6ffc8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none14@pci0:255:15:5:   class=0x088000 card=0x6fe08086 chip=0x6ffd8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none15@pci0:255:15:6:   class=0x088000 card=0x6fe08086 chip=0x6ffe8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none16@pci0:255:16:0:   class=0x088000 card=0x6f1d8086 chip=0x6f1d8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R2PCIe Agent'
    class      = base peripheral
none17@pci0:255:16:1:   class=0x110100 card=0x6f348086 chip=0x6f348086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R2PCIe Agent'
    class      = dasp
    subclass   = performance counters
none18@pci0:255:16:5:   class=0x088000 card=0x6f1e8086 chip=0x6f1e8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Ubox'
    class      = base peripheral
none19@pci0:255:16:6:   class=0x110100 card=0x6f7d8086 chip=0x6f7d8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Ubox'
    class      = dasp
    subclass   = performance counters
none20@pci0:255:16:7:   class=0x088000 card=0x6f1f8086 chip=0x6f1f8086 rev=0x02hdr=0x00`
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Ubox'
    class      = base peripheral
none21@pci0:255:18:0:   class=0x088000 card=0x6fa08086 chip=0x6fa08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Home Agent 0'
    class      = base peripheral
none22@pci0:255:18:1:   class=0x110100 card=0x6f308086 chip=0x6f308086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Home Agent 0'
    class      = dasp
    subclass   = performance counters
none23@pci0:255:19:0:   class=0x088000 card=0x6fa88086 chip=0x6fa88086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Target Address/Thermal/RAS'
    class      = base peripheral
none24@pci0:255:19:1:   class=0x088000 card=0x6f718086 chip=0x6f718086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Target Address/Thermal/RAS'
    class      = base peripheral
none25@pci0:255:19:2:   class=0x088000 card=0x6faa8086 chip=0x6faa8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none26@pci0:255:19:3:   class=0x088000 card=0x6fab8086 chip=0x6fab8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none27@pci0:255:19:4:   class=0x088000 card=0x6fac8086 chip=0x6fac8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none28@pci0:255:19:5:   class=0x088000 card=0x6fad8086 chip=0x6fad8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none29@pci0:255:19:6:   class=0x088000 card=0x00000000 chip=0x6fae8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Broadcast'
    class      = base peripheral
none30@pci0:255:19:7:   class=0x088000 card=0x00000000 chip=0x6faf8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Global Broadcast'
    class      = base peripheral
none31@pci0:255:20:0:   class=0x088000 card=0x6fb08086 chip=0x6fb08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 0 Thermal Control'
    class      = base peripheral
none32@pci0:255:20:1:   class=0x088000 card=0x6fb18086 chip=0x6fb18086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 1 Thermal Control'
    class      = base peripheral
none33@pci0:255:20:2:   class=0x088000 card=0x6fb28086 chip=0x6fb28086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 0 Error'
    class      = base peripheral
none34@pci0:255:20:3:   class=0x088000 card=0x6fb38086 chip=0x6fb38086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 1 Error'
    class      = base peripheral
none35@pci0:255:20:4:   class=0x088000 card=0x00000000 chip=0x6fbc8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none36@pci0:255:20:5:   class=0x088000 card=0x00000000 chip=0x6fbd8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none37@pci0:255:20:6:   class=0x088000 card=0x00000000 chip=0x6fbe8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none38@pci0:255:20:7:   class=0x088000 card=0x00000000 chip=0x6fbf8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none39@pci0:255:21:0:   class=0x088000 card=0x6fb48086 chip=0x6fb48086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 2 Thermal Control'
    class      = base peripheral
none40@pci0:255:21:1:   class=0x088000 card=0x6fb58086 chip=0x6fb58086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 3 Thermal Control'
    class      = base peripheral
none41@pci0:255:21:2:   class=0x088000 card=0x6fb68086 chip=0x6fb68086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 2 Error'
    class      = base peripheral
none42@pci0:255:21:3:   class=0x088000 card=0x6fb78086 chip=0x6fb78086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 3 Error'
    class      = base peripheral
none43@pci0:255:30:0:   class=0x088000 card=0x6f988086 chip=0x6f988086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none44@pci0:255:30:1:   class=0x088000 card=0x6f998086 chip=0x6f998086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none45@pci0:255:30:2:   class=0x088000 card=0x6f9a8086 chip=0x6f9a8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none46@pci0:255:30:3:   class=0x088000 card=0x6fc08086 chip=0x6fc08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none47@pci0:255:30:4:   class=0x088000 card=0x6f9c8086 chip=0x6f9c8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none48@pci0:255:31:0:   class=0x088000 card=0x00000000 chip=0x6f888086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none49@pci0:255:31:2:   class=0x088000 card=0x00000000 chip=0x6f8a8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
hostb0@pci0:0:0:0:      class=0x060000 card=0x086d15d9 chip=0x6f008086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DMI2'
    class      = bridge
    subclass   = HOST-PCI
pcib2@pci0:0:1:0:       class=0x060400 card=0x086d15d9 chip=0x6f028086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port1'
    class      = bridge
    subclass   = PCI-PCI
pcib3@pci0:0:2:0:       class=0x060400 card=0x086d15d9 chip=0x6f048086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port2'
    class      = bridge
    subclass   = PCI-PCI
pcib4@pci0:0:2:2:       class=0x060400 card=0x086d15d9 chip=0x6f068086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port2'
    class      = bridge
    subclass   = PCI-PCI
pcib5@pci0:0:3:0:       class=0x060400 card=0x086d15d9 chip=0x6f088086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port3'
    class      = bridge
    subclass   = PCI-PCI
pcib6@pci0:0:3:2:       class=0x060400 card=0x086d15d9 chip=0x6f0a8086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port3'
    class      = bridge
    subclass   = PCI-PCI
none50@pci0:0:5:0:      class=0x088000 card=0x086d15d9 chip=0x6f288086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Map/VTd_Misc/System Management'
    class      = base peripheral
none51@pci0:0:5:1:      class=0x088000 card=0x086d15d9 chip=0x6f298086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO Hot Plug'
    class      = base peripheral
none52@pci0:0:5:2:      class=0x088000 card=0x086d15d9 chip=0x6f2a8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO RAS/Control Status/Global Errors'
    class      = base peripheral
xhci0@pci0:0:20:0:      class=0x0c0330 card=0x086d15d9 chip=0x8c318086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family USB xHCI'
    class      = serial bus
    subclass   = USB
none53@pci0:0:22:0:     class=0x078000 card=0x086d15d9 chip=0x8c3a8086 rev=0x04hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family MEI Controller'
    class      = simple comms
none54@pci0:0:22:1:     class=0x078000 card=0x086d15d9 chip=0x8c3b8086 rev=0x04hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family MEI Controller'
    class      = simple comms
ehci0@pci0:0:26:0:      class=0x0c0320 card=0x086d15d9 chip=0x8c2d8086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family USB EHCI'
    class      = serial bus
    subclass   = USB
pcib7@pci0:0:28:0:      class=0x060400 card=0x086d15d9 chip=0x8c108086 rev=0xd5hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family PCI Express Root Port'
    class      = bridge
    subclass   = PCI-PCI
pcib8@pci0:0:28:4:      class=0x060400 card=0x086d15d9 chip=0x8c188086 rev=0xd5hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family PCI Express Root Port'
    class      = bridge
    subclass   = PCI-PCI
ehci1@pci0:0:29:0:      class=0x0c0320 card=0x086d15d9 chip=0x8c268086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family USB EHCI'
    class      = serial bus
    subclass   = USB
isab0@pci0:0:31:0:      class=0x060100 card=0x086d15d9 chip=0x8c548086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'C224 Series Chipset Family Server Standard SKU LPC Controller'
    class      = bridge
    subclass   = PCI-ISA
ahci0@pci0:0:31:2:      class=0x010601 card=0x086d15d9 chip=0x8c028086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]'
    class      = mass storage
    subclass   = SATA
none55@pci0:0:31:3:     class=0x0c0500 card=0x086d15d9 chip=0x8c228086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family SMBus Controller'
    class      = serial bus
    subclass   = SMBus
none56@pci0:0:31:6:     class=0x118000 card=0x086d15d9 chip=0x8c248086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series Chipset Family Thermal Management Controller'
    class      = dasp
nvme0@pci0:1:0:0:       class=0x010802 card=0x500615b7 chip=0x500615b7 rev=0x00hdr=0x00
    vendor     = 'Sandisk Corp'
    class      = mass storage
    subclass   = NVM
none57@pci0:2:0:0:      class=0x088000 card=0x086d15d9 chip=0x6f508086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 0'
    class      = base peripheral
none58@pci0:2:0:1:      class=0x088000 card=0x086d15d9 chip=0x6f518086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 1'
    class      = base peripheral
none59@pci0:2:0:2:      class=0x088000 card=0x086d15d9 chip=0x6f528086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 2'
    class      = base peripheral
none60@pci0:2:0:3:      class=0x088000 card=0x086d15d9 chip=0x6f538086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 3'
    class      = base peripheral
ix0@pci0:3:0:0: class=0x020000 card=0x15ad15d9 chip=0x15ad8086 rev=0x00 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Connection X552/X557-AT 10GBASE-T'
    class      = network
    subclass   = ethernet
ix1@pci0:3:0:1: class=0x020000 card=0x15ad15d9 chip=0x15ad8086 rev=0x00 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Connection X552/X557-AT 10GBASE-T'
    class      = network
    subclass   = ethernet
igb0@pci0:6:0:0:        class=0x020000 card=0x152115d9 chip=0x15218086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'I350 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
igb1@pci0:6:0:1:        class=0x020000 card=0x152115d9 chip=0x15218086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'I350 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
pcib9@pci0:7:0:0:       class=0x060400 card=0x086d15d9 chip=0x11501a03 rev=0x03hdr=0x01
    vendor     = 'ASPEED Technology, Inc.'
    device     = 'AST1150 PCI-to-PCI Bridge'
    class      = bridge
    subclass   = PCI-PCI


I Realise this is possibly more of a virtualisation problem than a Freenas problem, but having gone through many forum posts It seems that it's mainly Freenas users who are passing AHCI controllers through from ESXI so hopefully someone here can help shed some light on what I am doing wrong here. Maybe others have had success with similar hardware and different software versions? Maybe I am missing a firmware update somewhere?

Also, yes, I realise that virtualising is a great way to mess up a Freenas pool but I plan to replicate the data accross multiple machines or maybe across physically removable pools in a larger baremetal server (hmmm.... maybe a question for another day)

Many thanks in advance
 

Spearfoot

He of the long foot
Moderator
Joined
May 13, 2015
Messages
2,478
Hi there.

I have installed freenas with success on a few baremetal HP Micro servers in the past but am having issues passing though my AHCI controller from ESXI to Freenas on a new rig.

Freenas sees the disks when installed on the machine in bare metal but not through ESXI.

System:
- Supermicro X10SDV-8C-TLNF4 motherboard
- Intel Xeon D-1541 processor
- Onboard 6ch Sata Intel C220 Lynx Point AHCI Controller (set to AHCI mode)
- 4x WD4000FYYZ Sata drives for Freenas
- 1TB M.2 NVMe wds100t3x0c-00sjgo SSD in the M2 slot running ESXI and Virtual images
- 32gb ECC ram
- Supermicro CSE-721TQ-250B 4 bay case


I have tried Freenas 11.3U4 on ESXI 7.0 and ESXI 6.7U3.

The Lynx point AHCI Controller shows up as passthrough capable in both versions of ESXI (although I have read that ESXI 7 no longer has drivers for the Lynx Point AHCI)

ESXI shows:

0000:00:1f.2 SATA controller: Intel Corporation Lynx Point AHCI Controller [vmhba0]

ESXI:
Code:
[root@esxi:~] lspci
0000:00:00.0 Host bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DMI2 [PCIe RP[0000:00:00.0]]
0000:00:01.0 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 1 [PCIe RP[0000:00:01.0]]
0000:00:02.0 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 2 [PCIe RP[0000:00:02.0]]
0000:00:02.2 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 2 [PCIe RP[0000:00:02.2]]
0000:00:03.0 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 3 [PCIe RP[0000:00:03.0]]
0000:00:03.2 PCI bridge: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port 3 [PCIe RP[0000:00:03.2]]
0000:00:05.0 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Map/VTd_Misc/System Management
0000:00:05.1 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO Hot Plug
0000:00:05.2 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO RAS/Control Status/Global Errors
0000:00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI
0000:00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1
0000:00:16.1 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #2
0000:00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2
0000:00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 [PCIe RP[0000:00:1c.0]]
0000:00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 [PCIe RP[0000:00:1c.4]]
0000:00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1
0000:00:1f.0 ISA bridge: Intel Corporation C224 Series Chipset Family Server Standard SKU LPC Controller
0000:00:1f.2 SATA controller: Intel Corporation Lynx Point AHCI Controller [vmhba0]
0000:00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller
0000:00:1f.6 Signal processing controller: Intel Corporation 8 Series Chipset Family Thermal Management Controller
0000:01:00.0 Non-Volatile memory controller: Sandisk Corp Device 5006 [vmhba1]
0000:07:00.0 PCI bridge: ASPEED Technology, Inc. AST1150 PCI-to-PCI Bridge
0000:08:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family
... shortened to fit in 3000 characters


but we don't see any disks or the AHCI PCI device in Freenas on ESXI 7.0 or ESXI 6.7U3 when we enable passthrough.

Virtual Freenas:
Code:
root@freenas[~]# pciconf -lv
hostb0@pci0:0:0:0:      class=0x060000 card=0x197615ad chip=0x71908086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '440BX/ZX/DX - 82443BX/ZX/DX Host bridge'
    class      = bridge
    subclass   = HOST-PCI
pcib1@pci0:0:1:0:       class=0x060400 card=0x00000000 chip=0x71918086 rev=0x01hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '440BX/ZX/DX - 82443BX/ZX/DX AGP bridge'
    class      = bridge
    subclass   = PCI-PCI
isab0@pci0:0:7:0:       class=0x060100 card=0x197615ad chip=0x71108086 rev=0x08hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82371AB/EB/MB PIIX4 ISA'
    class      = bridge
    subclass   = PCI-ISA
atapci0@pci0:0:7:1:     class=0x01018a card=0x197615ad chip=0x71118086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82371AB/EB/MB PIIX4 IDE'
    class      = mass storage
    subclass   = ATA
none0@pci0:0:7:3:       class=0x068000 card=0x197615ad chip=0x71138086 rev=0x08hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82371AB/EB/MB PIIX4 ACPI'
    class      = bridge
ahci0@pci0:2:3:0:       class=0x010601 card=0x07e015ad chip=0x07e015ad rev=0x00hdr=0x00
    vendor     = 'VMware'
    device     = 'SATA AHCI controller'
    class      = mass storage
    subclass   = SATA
mpt0@pci0:3:0:0:        class=0x010700 card=0x197615ad chip=0x00541000 rev=0x01hdr=0x00
    vendor     = 'Broadcom / LSI'
    device     = 'SAS1068 PCI-X Fusion-MPT SAS'
    class      = mass storage
    subclass   = SAS
... vmware devices removed to fit in 3000 characters


Freenas 11.3U4 on baremetal shows:
ahci0@pci0:0:31:2: class=0x010601 card=0x086d15d9 chip=0x8c028086 rev=0x05hdr=0x00 vendor = 'Intel Corporation' device = '8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]' class = mass storage subclass = SATA

which sounds right as Lynx Point is the codename for the c220 chipset.

Freenas 11.3U4 Baremetal:
Code:
root@freenas[~]# pciconf -lv
none0@pci0:255:11:0:    class=0x088000 card=0x6f818086 chip=0x6f818086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link 0/1'
    class      = base peripheral
none1@pci0:255:11:1:    class=0x110100 card=0x6f368086 chip=0x6f368086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link 0/1'
    class      = dasp
    subclass   = performance counters
none2@pci0:255:11:2:    class=0x110100 card=0x6f378086 chip=0x6f378086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link 0/1'
    class      = dasp
    subclass   = performance counters
none3@pci0:255:11:3:    class=0x088000 card=0x00000000 chip=0x6f768086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R3 QPI Link Debug'
    class      = base peripheral
none4@pci0:255:12:0:    class=0x088000 card=0x6fe08086 chip=0x6fe08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none5@pci0:255:12:1:    class=0x088000 card=0x6fe18086 chip=0x6fe18086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none6@pci0:255:12:2:    class=0x088000 card=0x6fe28086 chip=0x6fe28086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none7@pci0:255:12:3:    class=0x088000 card=0x6fe38086 chip=0x6fe38086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none8@pci0:255:12:4:    class=0x088000 card=0x6fe48086 chip=0x6fe48086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none9@pci0:255:12:5:    class=0x088000 card=0x6fe58086 chip=0x6fe58086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none10@pci0:255:12:6:   class=0x088000 card=0x6fe68086 chip=0x6fe68086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none11@pci0:255:12:7:   class=0x088000 card=0x6fe78086 chip=0x6fe78086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none12@pci0:255:15:0:   class=0x088000 card=0x6ff88086 chip=0x6ff88086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none13@pci0:255:15:4:   class=0x088000 card=0x6fe08086 chip=0x6ffc8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none14@pci0:255:15:5:   class=0x088000 card=0x6fe08086 chip=0x6ffd8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none15@pci0:255:15:6:   class=0x088000 card=0x6fe08086 chip=0x6ffe8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Caching Agent'
    class      = base peripheral
none16@pci0:255:16:0:   class=0x088000 card=0x6f1d8086 chip=0x6f1d8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R2PCIe Agent'
    class      = base peripheral
none17@pci0:255:16:1:   class=0x110100 card=0x6f348086 chip=0x6f348086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D R2PCIe Agent'
    class      = dasp
    subclass   = performance counters
none18@pci0:255:16:5:   class=0x088000 card=0x6f1e8086 chip=0x6f1e8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Ubox'
    class      = base peripheral
none19@pci0:255:16:6:   class=0x110100 card=0x6f7d8086 chip=0x6f7d8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Ubox'
    class      = dasp
    subclass   = performance counters
none20@pci0:255:16:7:   class=0x088000 card=0x6f1f8086 chip=0x6f1f8086 rev=0x02hdr=0x00`
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Ubox'
    class      = base peripheral
none21@pci0:255:18:0:   class=0x088000 card=0x6fa08086 chip=0x6fa08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Home Agent 0'
    class      = base peripheral
none22@pci0:255:18:1:   class=0x110100 card=0x6f308086 chip=0x6f308086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Home Agent 0'
    class      = dasp
    subclass   = performance counters
none23@pci0:255:19:0:   class=0x088000 card=0x6fa88086 chip=0x6fa88086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Target Address/Thermal/RAS'
    class      = base peripheral
none24@pci0:255:19:1:   class=0x088000 card=0x6f718086 chip=0x6f718086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Target Address/Thermal/RAS'
    class      = base peripheral
none25@pci0:255:19:2:   class=0x088000 card=0x6faa8086 chip=0x6faa8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none26@pci0:255:19:3:   class=0x088000 card=0x6fab8086 chip=0x6fab8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none27@pci0:255:19:4:   class=0x088000 card=0x6fac8086 chip=0x6fac8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none28@pci0:255:19:5:   class=0x088000 card=0x6fad8086 chip=0x6fad8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel Target Address Decoder'
    class      = base peripheral
none29@pci0:255:19:6:   class=0x088000 card=0x00000000 chip=0x6fae8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Broadcast'
    class      = base peripheral
none30@pci0:255:19:7:   class=0x088000 card=0x00000000 chip=0x6faf8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Global Broadcast'
    class      = base peripheral
none31@pci0:255:20:0:   class=0x088000 card=0x6fb08086 chip=0x6fb08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 0 Thermal Control'
    class      = base peripheral
none32@pci0:255:20:1:   class=0x088000 card=0x6fb18086 chip=0x6fb18086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 1 Thermal Control'
    class      = base peripheral
none33@pci0:255:20:2:   class=0x088000 card=0x6fb28086 chip=0x6fb28086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 0 Error'
    class      = base peripheral
none34@pci0:255:20:3:   class=0x088000 card=0x6fb38086 chip=0x6fb38086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 1 Error'
    class      = base peripheral
none35@pci0:255:20:4:   class=0x088000 card=0x00000000 chip=0x6fbc8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none36@pci0:255:20:5:   class=0x088000 card=0x00000000 chip=0x6fbd8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none37@pci0:255:20:6:   class=0x088000 card=0x00000000 chip=0x6fbe8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none38@pci0:255:20:7:   class=0x088000 card=0x00000000 chip=0x6fbf8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DDRIO Channel 0/1 Interface'
    class      = base peripheral
none39@pci0:255:21:0:   class=0x088000 card=0x6fb48086 chip=0x6fb48086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 2 Thermal Control'
    class      = base peripheral
none40@pci0:255:21:1:   class=0x088000 card=0x6fb58086 chip=0x6fb58086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 3 Thermal Control'
    class      = base peripheral
none41@pci0:255:21:2:   class=0x088000 card=0x6fb68086 chip=0x6fb68086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 2 Error'
    class      = base peripheral
none42@pci0:255:21:3:   class=0x088000 card=0x6fb78086 chip=0x6fb78086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Memory Controller 0 -Channel 3 Error'
    class      = base peripheral
none43@pci0:255:30:0:   class=0x088000 card=0x6f988086 chip=0x6f988086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none44@pci0:255:30:1:   class=0x088000 card=0x6f998086 chip=0x6f998086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none45@pci0:255:30:2:   class=0x088000 card=0x6f9a8086 chip=0x6f9a8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none46@pci0:255:30:3:   class=0x088000 card=0x6fc08086 chip=0x6fc08086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none47@pci0:255:30:4:   class=0x088000 card=0x6f9c8086 chip=0x6f9c8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none48@pci0:255:31:0:   class=0x088000 card=0x00000000 chip=0x6f888086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
none49@pci0:255:31:2:   class=0x088000 card=0x00000000 chip=0x6f8a8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Power Control Unit'
    class      = base peripheral
hostb0@pci0:0:0:0:      class=0x060000 card=0x086d15d9 chip=0x6f008086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DMI2'
    class      = bridge
    subclass   = HOST-PCI
pcib2@pci0:0:1:0:       class=0x060400 card=0x086d15d9 chip=0x6f028086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port1'
    class      = bridge
    subclass   = PCI-PCI
pcib3@pci0:0:2:0:       class=0x060400 card=0x086d15d9 chip=0x6f048086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port2'
    class      = bridge
    subclass   = PCI-PCI
pcib4@pci0:0:2:2:       class=0x060400 card=0x086d15d9 chip=0x6f068086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port2'
    class      = bridge
    subclass   = PCI-PCI
pcib5@pci0:0:3:0:       class=0x060400 card=0x086d15d9 chip=0x6f088086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port3'
    class      = bridge
    subclass   = PCI-PCI
pcib6@pci0:0:3:2:       class=0x060400 card=0x086d15d9 chip=0x6f0a8086 rev=0x02hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D PCI Express Root Port3'
    class      = bridge
    subclass   = PCI-PCI
none50@pci0:0:5:0:      class=0x088000 card=0x086d15d9 chip=0x6f288086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Map/VTd_Misc/System Management'
    class      = base peripheral
none51@pci0:0:5:1:      class=0x088000 card=0x086d15d9 chip=0x6f298086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO Hot Plug'
    class      = base peripheral
none52@pci0:0:5:2:      class=0x088000 card=0x086d15d9 chip=0x6f2a8086 rev=0x02hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D IIO RAS/Control Status/Global Errors'
    class      = base peripheral
xhci0@pci0:0:20:0:      class=0x0c0330 card=0x086d15d9 chip=0x8c318086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family USB xHCI'
    class      = serial bus
    subclass   = USB
none53@pci0:0:22:0:     class=0x078000 card=0x086d15d9 chip=0x8c3a8086 rev=0x04hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family MEI Controller'
    class      = simple comms
none54@pci0:0:22:1:     class=0x078000 card=0x086d15d9 chip=0x8c3b8086 rev=0x04hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family MEI Controller'
    class      = simple comms
ehci0@pci0:0:26:0:      class=0x0c0320 card=0x086d15d9 chip=0x8c2d8086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family USB EHCI'
    class      = serial bus
    subclass   = USB
pcib7@pci0:0:28:0:      class=0x060400 card=0x086d15d9 chip=0x8c108086 rev=0xd5hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family PCI Express Root Port'
    class      = bridge
    subclass   = PCI-PCI
pcib8@pci0:0:28:4:      class=0x060400 card=0x086d15d9 chip=0x8c188086 rev=0xd5hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family PCI Express Root Port'
    class      = bridge
    subclass   = PCI-PCI
ehci1@pci0:0:29:0:      class=0x0c0320 card=0x086d15d9 chip=0x8c268086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family USB EHCI'
    class      = serial bus
    subclass   = USB
isab0@pci0:0:31:0:      class=0x060100 card=0x086d15d9 chip=0x8c548086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'C224 Series Chipset Family Server Standard SKU LPC Controller'
    class      = bridge
    subclass   = PCI-ISA
ahci0@pci0:0:31:2:      class=0x010601 card=0x086d15d9 chip=0x8c028086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]'
    class      = mass storage
    subclass   = SATA
none55@pci0:0:31:3:     class=0x0c0500 card=0x086d15d9 chip=0x8c228086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series/C220 Series Chipset Family SMBus Controller'
    class      = serial bus
    subclass   = SMBus
none56@pci0:0:31:6:     class=0x118000 card=0x086d15d9 chip=0x8c248086 rev=0x05hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '8 Series Chipset Family Thermal Management Controller'
    class      = dasp
nvme0@pci0:1:0:0:       class=0x010802 card=0x500615b7 chip=0x500615b7 rev=0x00hdr=0x00
    vendor     = 'Sandisk Corp'
    class      = mass storage
    subclass   = NVM
none57@pci0:2:0:0:      class=0x088000 card=0x086d15d9 chip=0x6f508086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 0'
    class      = base peripheral
none58@pci0:2:0:1:      class=0x088000 card=0x086d15d9 chip=0x6f518086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 1'
    class      = base peripheral
none59@pci0:2:0:2:      class=0x088000 card=0x086d15d9 chip=0x6f528086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 2'
    class      = base peripheral
none60@pci0:2:0:3:      class=0x088000 card=0x086d15d9 chip=0x6f538086 rev=0x00hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Xeon Processor D Family QuickData Technology Register DMA Channel 3'
    class      = base peripheral
ix0@pci0:3:0:0: class=0x020000 card=0x15ad15d9 chip=0x15ad8086 rev=0x00 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Connection X552/X557-AT 10GBASE-T'
    class      = network
    subclass   = ethernet
ix1@pci0:3:0:1: class=0x020000 card=0x15ad15d9 chip=0x15ad8086 rev=0x00 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Connection X552/X557-AT 10GBASE-T'
    class      = network
    subclass   = ethernet
igb0@pci0:6:0:0:        class=0x020000 card=0x152115d9 chip=0x15218086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'I350 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
igb1@pci0:6:0:1:        class=0x020000 card=0x152115d9 chip=0x15218086 rev=0x01hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'I350 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
pcib9@pci0:7:0:0:       class=0x060400 card=0x086d15d9 chip=0x11501a03 rev=0x03hdr=0x01
    vendor     = 'ASPEED Technology, Inc.'
    device     = 'AST1150 PCI-to-PCI Bridge'
    class      = bridge
    subclass   = PCI-PCI


I Realise this is possibly more of a virtualisation problem than a Freenas problem, but having gone through many forum posts It seems that it's mainly Freenas users who are passing AHCI controllers through from ESXI so hopefully someone here can help shed some light on what I am doing wrong here. Maybe others have had success with similar hardware and different software versions? Maybe I am missing a firmware update somewhere?

Also, yes, I realise that virtualising is a great way to mess up a Freenas pool but I plan to replicate the data accross multiple machines or maybe across physically removable pools in a larger baremetal server (hmmm.... maybe a question for another day)

Many thanks in advance
Seems like it just ought to work!

I have a FreeNAS 11.2-U8-on-ESXi 6.7 system based on a SuperMicro X10SDV-TLN4F motherboard, very similar to yours. I pass through the same SATA controller, just as you're trying to do. It works fine.

What do you see on your virtualized FreeNAS system when you run pciconf -lv | grep -i ahci?

Here's what my system shows:
Code:
root@brutus:~ # pciconf -lv | grep -i ahci
ahci0@pci0:2:1:0:       class=0x010601 card=0x07e015ad chip=0x07e015ad rev=0x00 hdr=0x00
    device     = 'SATA AHCI controller'
ahci1@pci0:3:0:0:       class=0x010601 card=0x086d15d9 chip=0x8c028086 rev=0x05 hdr=0x00
    device     = '8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]'
root@brutus:~ #
So you don't see 'Lynx' on FreeNAS -- just C220, etc.

I assume you locked all of the FreeNAS virtual machine memory? I think ESXi 6.7 forces you to lock memory for VMs with pass-through devices, but I'm not sure about that.
 

trogg

Cadet
Joined
Aug 1, 2020
Messages
3
Seems like it just ought to work!

I have a FreeNAS 11.2-U8-on-ESXi 6.7 system based on a SuperMicro X10SDV-TLN4F motherboard, very similar to yours. I pass through the same SATA controller, just as you're trying to do. It works fine.

What do you see on your virtualized FreeNAS system when you run pciconf -lv | grep -i ahci?

Here's what my system shows:
Code:
root@brutus:~ # pciconf -lv | grep -i ahci
ahci0@pci0:2:1:0:       class=0x010601 card=0x07e015ad chip=0x07e015ad rev=0x00 hdr=0x00
    device     = 'SATA AHCI controller'
ahci1@pci0:3:0:0:       class=0x010601 card=0x086d15d9 chip=0x8c028086 rev=0x05 hdr=0x00
    device     = '8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]'
root@brutus:~ #
So you don't see 'Lynx' on FreeNAS -- just C220, etc.

I assume you locked all of the FreeNAS virtual machine memory? I think ESXi 6.7 forces you to lock memory for VMs with pass-through devices, but I'm not sure about that.
Hi Spearfoot. Great post on setting up freenas on ESXI by the way.

I just locked all the memory (16gb), rebooted and no change. I get the VMware AHCI controller and not the C220 AHCI when I run your grep command. Are you running the latest 6.7 build of ESXI? 6.7.0 Update 3 (Build 14320388)?

I may try installing your version of freenas in a new VM.

Thanks
 

trogg

Cadet
Joined
Aug 1, 2020
Messages
3
I have just installed
FreeNAS 11.2-U8 on
ESXI? 6.7.0 Update 3
with locked memory and I still don't see the C220 AHCI controller in freenas :(


I may try resetting the Bios settings just in case (although I have gone the bios a few times)

thanks
 

Spearfoot

He of the long foot
Moderator
Joined
May 13, 2015
Messages
2,478
I have just installed
FreeNAS 11.2-U8 on
ESXI? 6.7.0 Update 3

with locked memory and I still don't see the C220 AHCI controller in freenas :(

I may try resetting the Bios settings just in case (although I have gone the bios a few times)

thanks
Yeah, by all means check the BIOS and make sure you've installed the latest version available from SuperMicro.

Also, here is @Stux's excellent build report on setting up an All-in-One, perhaps you'll find something there that helps:
 

Spearfoot

He of the long foot
Moderator
Joined
May 13, 2015
Messages
2,478
Also, make sure your ESXi installation's XML device settings aren't dorked up. You can edit a system file and enable pass-through, if it comes down to it -- see this link:

VMware is far from infallible; at work I've had to edit XML system setup files to get VM auto-start to work correctly. It got botched somehow.
 

trogg

Cadet
Joined
Aug 1, 2020
Messages
3
Quick Update. I wrestled with ESXI for a while and could not get it working. I tried Proxmox the other day and it is a far more enjoyable process.

Proxmox seems far more configurable and a much nicer place to be. It also suppors ZFS so my ProxMox system SSD has all the ZFS goodness (virtual image snapshots and rollback etc)

I got the AHCI passthrough working nice and simply. I also passed the GPU through to windows but only after a lot of config tweaking (learnt a fair bit) I realised that I enabled Intel Virtualisation Technology but not Interrupt Remapping in the bios.

In case anyone else is having problems with Virtualisation and Passthrough then you might want to enable these settings (in amibios at least):

Advanced =>
- Intel Virtualisation Technology

Advanced => Northbridge => IIO Configuration => Intel VT for Directed I/O (VT-d) =>
- Intel VT for directed I/O (VT-d)
- ACS Control
- Interrupt Remapping

I can't remember whether these were on or off with ESXI but they definately need to be on for GPU passthrough in Proxmox.
 
Top