https://wiki.raptorcs.com/w/api.php?action=feedcontributions&user=Chatcannon&feedformat=atomRCS Wiki - User contributions [en]2024-03-28T12:36:47ZUser contributionsMediaWiki 1.33.1https://wiki.raptorcs.com/w/index.php?title=POWER9_Hardware_Compatibility_List/Memory&diff=3718POWER9 Hardware Compatibility List/Memory2022-05-15T09:11:49Z<p>Chatcannon: /* Compatible memory */ Reformat Goodram answer</p>
<hr />
<div>==Compatibility rules==<br />
<br />
The criteria for compatibility are essentially:<br />
* must be DDR4;<br />
* must be ECC;<br />
* must be registered (RDIMM);<br />
* must NOT be LRDIMM.<br />
<br />
The supported module sizes are 8GB, 16GB, 32GB, 64GB and 128GB. 4GB is expected to work (and is reported working by at least 1 user) but is not officially supported by Raptor.<br />
<br />
The supported memory speeds are 1600, 1866, 2133, 2400, 2666 MHz.<br />
<br />
Ram will be running at a potentially slower frequency (2666, 2400, or 2133) based on if there is 1, 2 or 4 DIMMs per channel<br />
<br />
{| class="wikitable"<br />
|-<br />
! Platform<br />
! Slots<br />
! Max. Capacity<br />
|-<br />
| [[Talos II]]<br />
| Up to two sockets, each of 4 channels of 2 slots each<br />
| 2TiB<br />
|-<br />
| [[Blackbird]]<br />
| Two channels, one slot each<br />
| 256GiB<br />
|}<br />
<br />
== Tested memory ==<br />
<br />
=== Compatible memory ===<br />
<br />
{| class="wikitable sortable"<br />
!colspan="6"|Module<br />
!colspan="4"|Validation<br />
|-<br />
!Manufacturer<br />
!Model<br />
!Size<br />
!Speed<br />
!Type<br />
!ECC<br />
!Stepping<br />
!Firmware<br />
!Source<br />
!Notes<br />
|-<br />
|Pacific Sun<br />
|X10723042S<br />
|8GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot cc2d45a<br />
|Official<br />
|<br />
|-<br />
|Hynix<br />
|HMA41GR7MFR4N-TF<br />
|8GB<br />
|PC4-17000R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 76f78f4<br />
|ernsteiswuerfel<br />
|<br />
|-<br />
|Hynix<br />
|HMA82GR7AFR8N-UH<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot e36ec63<br />
|Official<br />
|<br />
|-<br />
|Hynix<br />
|HMA82GR7CJR8N-VK<br />
|16GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|[[User:JeremyRand|JeremyRand]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A1G40DB0-CPB<br />
|8GB<br />
|PC4-17000<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 30dfd3b<br />
|meklort<br />
|Requires [[Talos_II/Firmware|System Package v1.02]]<br />
|-<br />
|Kingston<br />
|KTH-PL424/16G<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot cc2d45a<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA9ASF1G72PZ-2G6D1<br />
|8GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.3<br />
|Hostboot 28927a7<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA18ASF2G72PZ-2G3B1<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 28927a7<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA18ASF2G72PDZ-2G3D1<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot cc2d45a<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA18ASF2G72PDZ-2G6D1<br />
|16GB<br />
|PC4-21333<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|[[User:Smaeul|smaeul]]<br />
|<br />
|-<br />
|Micron<br />
|MTA36ASF4G72PZ-2G6D1<br />
|32GB<br />
|PC4-21333<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 6ffaeb4<br />
|[[User:cyrozap|cyrozap]]<br />
|<br />
|-<br />
|Nemix Ram<br />
|<br />
|8GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|[[User:suertreus|suertreus]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40BB1-CRC<br />
|32GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot 1e2221d<br />
|Official<br />
|<br />
|-<br />
|Samsung<br />
|M393A8K40B22-CWD<br />
|64GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|Official<br />
|tested 8 sticks/512GB@2666 total by [[User:Gyakovlev|Gyakovlev]]<br />
|-<br />
|Samsung<br />
|M393A2K40BB2-CTD<br />
|16GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 0c8fa110<br />
|meklort<br />
|Will run at 2400MT/s with [[Talos_II/Firmware|System Package v1.00]]<br />
|-<br />
|Samsung<br />
|M393A2K40CB2-CTD<br />
|16GB<br />
|PC4-21300V-R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|[[User:MarcusC|MarcusC]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40BB2-CTD8Q<br />
|32GB<br />
|PC4-21333<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2 & DD2.3<br />
|Hostboot 28927a7<br />
|luke-jr<br />
|<br />
|-<br />
|Samsung<br />
|M393A2G40EB2-CTD<br />
|16GB <br />
|PC4-21300V-R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 30dfd3b<br />
|JSharp<br />
|Tested extensively with [[Talos_II/Firmware|System Package v1.02]] but does boot on v1.00, Dual 8-Core POWER9, x8 DIMM Modules (RCS Recommended Slot Configuration) 128GiB total; also tested x4 DIMM Modules (RCS Recommended Slot Configuration) 64GiB total<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD6Q<br />
|32GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-884b60b<br />
|kev009<br />
|8 DIMMs working well<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD7Q<br />
|32GB<br />
|PC4-21300R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-3beba24<br />
|[[user:MPC7500|MPC7500]]<br />
|2*32GB in Blackbird<br />
|-<br />
|Samsung<br />
|M393A2K40BB2-CTD7Q<br />
|16GB<br />
|PC4-21300R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|[[user:Avh|Avh]]<br />
|2*16GB in TalosII<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD7Y<br />
|32GB<br />
|PC4-21300R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-3beba24<br />
|[[user:mx08|mx08]]<br />
|2*32GB in Blackbird<br />
|-<br />
|Kingston<br />
|KSM24RS8/8MAI<br />
|8GB<br />
|PC4-19200R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot d286337<br />
|ernsteiswuerfel<br />
|<br />
|-<br />
|Kingston<br />
|KVR24R17S8K4/32<br />
|8GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|1.04, PNOR d286337d<br />
|sharkcz<br />
| kit 4x 8GB, got 1 stick faulty, but 3x 8GB worked OK<br />
|-<br />
|Kingston<br />
|KVR24R17D8/16MA<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|1.04, PNOR d286337d<br />
|sharkcz<br />
|<br />
|-<br />
|Crucial<br />
|CT32G4RFD4266<br />
|32GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|<br />
|<br />
|drp<br />
|Tested in Blackbird with 2x32GB<br />
|-<br />
|Crucial<br />
|CT16G4RFD4266.36FE1<br />
|16GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|1.06<br />
|aperezbios<br />
|tested with 2x16GB<br />
|-<br />
|Crucial<br />
|CT4G4RFS8266<br />
|4GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|[[User:Robbieab|Robbieab]]<br />
|Purchased as the CT2K4G4RFS8266 8GB kit. Confirmed functional from the petitboot shell.<br />
|-<br />
|Crucial<br />
|CT8G4RFS8266<br />
|8GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|<br />
|<br />
|<br />
|CT2K8G4RFS8266 16GB kit (8GBx2). DDR4 PC4-21300 • CL=19 • Single Ranked • x8 based • Registered • ECC • DDR4-2666 • 1.2V • 1024Meg x 72. Confirmed with a working Debian GNU and Devuan GNU+Linux installation.<br />
|-<br />
|Ventura (Samsung)<br />
|D4-62JA402SV-15<br />
|16GB<br />
|PC4-17000<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|mosst<br />
|<br />
|-<br />
|Kingston<br />
|KSM26RD8/16HAI<br />
|16GB<br />
|PC4-21300R<br />
|Registered<br />
|Yes<br />
|<br />
|<br />
|[[user:Xkucf03|xkucf03]]<br />
|tested 2×16 GB in Blackbird<br />
|-<br />
|Samsung<br />
|M393A1G43EB1-CTD<br />
|8GB<br />
|PC4-19200R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|Red Hat<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD<br />
|32GB<br />
|PC4-2666<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|Red Hat<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CVF<br />
|32GB<br />
|PC4-2933<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.3<br />
|hostboot- a2ddbf3<br />
|[[User:Helen|Helen]]<br />
|4x 32GB @2666MHz in Talos II lite<br />
|-<br />
|Kingston<br />
|KSM29RD4/64MER<br />
|64GB<br />
|PC4-23400<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Self-compiled Hostboot (with PCIe patches that shouldn't matter for RAM)<br />
|[[User:JeremyRand|JeremyRand]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A8G40MB2-CTD<br />
|64GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-3beba24<br />
|[[User:Kmarek|Kmarek]]<br />
|<br />
|-<br />
|Samsung<br />
|M393AAK40B42-CWD7Y<br />
|128GB<br />
|PC4-2666<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.3<br />
|hostboot a2ddbf3<br />
|[[User:macro|macro]]<br />
|2*128GiB in Talos II<br />
|<br />
|-<br />
|Goodram (Hynix)<br />
|W-MEM2666R4Q464G<br />
|64GB<br />
|PC4-21333<br />
|Registered<br />
|yes<br />
|POWER9 DD2.3<br />
|<br />
|[[User:chatcannon|chatcannon]]<br />
|Sold as 2666 MHz, lshw reports speed as 2932 MHz<br />
|<br />
<br />
|}<br />
<br />
=== Incompatible memory ===<br />
<br />
NOTE: Memory may be removed from this table after firmware support has been added, or there may be a fundamental hardware incompatibility. If you have incompatible memory listed in the table below, you may want to bookmark and check this page from time to time to see if a firmware update has resolved the issue.<br />
<br />
{| class="wikitable sortable"<br />
!colspan="6"|Module<br />
!colspan="4"|Test Conditions<br />
|-<br />
!Manufacturer<br />
!Model<br />
!Size<br />
!Speed<br />
!Type<br />
!ECC<br />
!Stepping<br />
!Firmware<br />
!Last Test<br />
|-<br />
|Samsung<br />
|M386A8K40BMB-CRC<br />
|64GB<br />
|PC4-19200<br />
|Registered LRDIMM<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot 1e2221d<br />
|02/14/2018<br />
|-<br />
|Kingston<br />
|KSM26RS8/8HAI<br />
|8GB<br />
|PC4-26600<br />
|Registered DIMM<br />
|Yes<br />
|<br />
|<br />
|09/24/2020<br />
|-<br />
|}<br />
<br />
[[Category:Compatibility List]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=POWER9_Hardware_Compatibility_List/PCIe_Devices&diff=3717POWER9 Hardware Compatibility List/PCIe Devices2022-05-15T09:06:54Z<p>Chatcannon: /* AMD */ Starting W5500 with two screens attached now works (Kernel 5.15, firmware 20220509)</p>
<hr />
<div><!-- When adding devices, please list devices in alphabetical order within each category. --><br />
==Compatibility rules==<br />
In general, any PCIe device will work providing that an open source driver is available for your operating system. There are some exceptions:<br />
<br />
* '''Hardware bugs.''' POWER does not permit errant DMA accesses. If a device tries to access areas of host memory which it is not permitted to access, the device is shut down immediately. This is dissimilar to x86 platforms, which simply silently ignore such attempts. Some badly designed I/O devices have bugs causing them to attempt DMA accesses to random areas of host memory; these devices are unlikely to function correctly on POWER systems unless a workaround is available. Note that devices in full bypass mode may legally have access to all host memory, to avoid this and test driver IOMMU setup pass "iommu=nobypass" to the kernel at startup.<br />
* '''I/O space.''' Starting with [[POWER9]], access to the legacy PCI I/O space is no longer supported; devices or drivers which rely on this will not function. The legacy I/O space has been deprecated for as long as PCIe has existed; generally this will only affect very old PCIe devices which use PCIe to PCI bridge chips to attach old PCI devices to the bus, or genuine legacy PCI devices attached via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]]. A small subset of these devices may require legacy I/O space support.<br />
* '''Incomplete memory addressing support.''' The PCIe architecture specifies a 64-bit address space. Some I/O devices try to economize on this by only implementing e.g. 40 bits for their addressing, rendering them incapable of addressing host memory which lies above address 2<sup>40</sup>. (Firmware patches to work around this are pending.)<br />
* '''Bifurcation limits.''' Arbitrary PCIe lane bifurcation is not supported. Devices which split a PCIe slot into multiple connectors (for example, PCIe to M.2 adaptors) will not work unless they have a PCIe switch chip, although the first connector will generally work.<br />
<br />
==Troubleshooting==<br />
<br />
If a PCIe device is in a broken state due to being attached/detached from a VM, or due to a transition from Petitboot to the main OS, you may be able to fix it by issuing a hot reset. A script for performing a PCIe hot reset is at [[File:Pcie_hot_reset.sh]]. For background on PCIe resets and how a hot reset differs from the function-level reset performed by <code>echo 1 > /sys/bus/pci/devices/$dev/reset</code>, see [https://unix.stackexchange.com/a/474378 Alex Forencich's explanation on Stack Exchange].<br />
<br />
==NICs==<br />
===Working===<br />
* 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
* Broadcom [[BCM5719]]<br />
* Chelsio T520-SO-CR (dual port 10Gb/s, cxgb4 driver)<br />
* Chelsio T6225-SO-CR<br />
* DEC FDDIcontroller/PCI (DEFPA) PCI FDDI (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
** Works automatically as from Linux kernel version 5.13.<br />
** Works with Linux kernel versions before 5.13 as long as the defxx driver has been compiled with the CONFIG_DEFXX_MMIO option, which may not be the case with standard distribution kernels as the option was not on by default for historical reasons.<br>''This is because the PFI ASIC used as the PCI interface with the DEC FDDIcontroller/PCI adapter supports both port I/O and MMIO for main ASIC's (PDQ) CSR access, however [[POWER9_Hardware_Compatibility_List/PCIe_Devices#Compatibility_rules|as noted above]] the Power Systems Host Bridge 4 (PHB4) PCIe root complex used with POWER9 microprocessors does not support I/O Read or I/O Write commands required for port I/O.''<br />
* Mellanox ConnectX-6 EN 200Gb/s Adapter Card ''(supports [[CAPI]])''<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9-server-adapter/ PE210G2SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9a-server-adapter/ PE210G2SPI9A]/PE210G2SPI9B dual port 10 GbE SFP+ adapter (Chipset: [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES]) (ixgbe driver)<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9-server-adapter/ PE310G4SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9la-quad-port-10-gigabit-nic-intel-based/ PE310G4SPI9LA] quad port 10 GbE SFP+ adapter (Chipset: Two [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8724 PLX PEX 8724] switch) (ixgbe driver)<br />
* Unbranded 4-port Gigabit Ethernet adapter (Chipset: Four Realtek RTL8111F controllers behind one ASMedia ASM1184e switch) (r8169 driver, firmware optional)<br />
** The card be identified by the "NET111-V1.0" text on its PCB.<br />
* [https://www.asus.com/Networking-IoT-Servers/Wired-Networking/All-series/XG-C100F/ ASUS XG-C100F] (single port 10GbE SFP+, AQUANTIA AQtion Linux "atlantic" driver)<br />
** Driver compiled by default on PowerPC (and others) from this [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9b22fece786ed641909988da4810bfa8e5d2e592 commit].<br />
** There is proprietary firmware written into EEPROM from the factory but it does not seem to be writeable, nor does it have to be loaded by the Linux kernel.<br />
<br />
===Non-working===<br />
* Mellanox ConnectX IB QDR (mlx4 driver)<br />
<br />
==Wireless Cards==<br />
===Working===<br />
* Alfa AWUS036NHA Wireless USB Adaptor<br />
** open source firmware (ath9k_htc) [https://github.com/qca/open-ath9k-htc-firmware]<br />
* [https://ark.intel.com/content/www/us/en/ark/products/75439/intel-dual-band-wireless-ac-7260.html Intel Dual-Band Wireless-AC 7260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/86068/intel-dual-band-wireless-ac-8260.html Intel Dual-Band Wireless-AC 8260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/99445/intel-wireless-ac-9260.html Intel Dual-Band Wireless-AC 9260] (Bluetooth untested)<br />
* [https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-mini-pcie ThinkPenguin TPE-NMPCIE]<br />
** Chipset: Atheros AR9281<br />
** Linux driver: ath9k<br />
** Tested with StarTech PEX2MPEX; device is detected without trouble by Linux and NetworkManager; didn't try hooking up an antenna, so wasn't able to try connecting to networks.<br />
* TP-Link TL WN823N RTL8192EU [https://github.com/Mange/rtl8192eu-linux-driver]<br />
** remove "ARCH=$(ARCH)" on line 1710 of the makefile and it compiles fine<br />
* TP-LINK TL-WN725N V2 USB dongle<br />
** as of Linux 5.6.x, the rtl8188eu is in staging stage, so it is advised to compile the driver from [[https://github.com/lwfinger/rtl8188eu lwfinger/rtl8188eu]]<br />
* [https://www.asus.com/my/Networking-IoT-Servers/Adapters/All-series/PCE-AX3000/ Asus PCE-AX3000] Both Wi-Fi and Bluetooth worked out of the box with Ubuntu 21.10 (Bluetooth requires an additional USB connection, an [https://www.amazon.fr/gp/product/B08Q2TLWGV/ internal USB to 9-pin] cable works)<br />
<br />
==NVMe Drives==<br />
* Samsung 950 PRO (with M.2 to PCIe adapter)<br />
* Samsung 960 EVO / PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 EVO Plus (with M.2 to PCIe adapter)<br />
* Samsung 980 PRO (with M.2 to PCIe adapter)<br />
* [https://www.samsung.com/semiconductor/ssd/datacenter-ssd/MZ1LB960HAJQ/ Samsung PM983] (with [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php AOC-SHG3-4M2P] M.2 to PCIe adapter)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/series/81000/intel-ssd-dc-p3600-series.html Intel SSD DC P3600 PCIe AIC] (tested 1.6 TB)<br />
* Intel Optane 900P NVMe XPoint PCIe<br />
* Intel Optane 905P NVMe XPoint PCIe AIC<br />
* Intel Optane 905P NVMe Xpoint U.2, with included U.2 to M.2 cable plugged into an [[#PCIe_to_M.2_Adapters|ASUS Hyper M.2 X4 mini]].<br />
* WD Black PCIe (with M.2 to PCIe adapter)<br />
* MyDigitalSSD BPX 480GB (with M.2 to PCIe adapter)<br />
* Silicon Power US70 2000 GB (note that it is configured with 512 byte sectors by default and should be reformatted with nvme-cli to get better performance)<br />
<br />
Known issues:<br />
* [FIXED in stable kernels 4.19 and 5.4] [https://bugzilla.kernel.org/show_bug.cgi?id=202665 IOMMU related errors when performing discard on some NVMe devices] (mainly NVMe SSDs). Current workaround is booting with the kernel parameter ''iommu=soft'', see the [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=530436c45ef2e446c12538a400e465929a0b3ade patch]<br />
<br />
==PCIe to M.2 Adapters==<br />
===Working===<br />
* [https://www.asus.com/us/Motherboard-Accessories/HYPER_M2_X4_MINI_CARD/ ASUS Hyper M.2 X4 mini], PCIe X4 to M.2.<br />
* [http://ableconn.com/products_2.php?gid=62 Ableconn PEXM2-SSD M.2 NGFF PCIe SSD to PCI Express 4.0 x4 Host Adapter Card (M.2 to PCIe adapter)]<br />
* [https://www.addonics.com/products/ad2m2nvmpx8.php Addonics AD2M2NVMPX8] Dual NVMe PCIe adapter 2x M.2 PCIe to PCIe x8<br />
* [https://www.delock.com/produkte/G_89370/merkmale.html Delock PCI Express x4 Card > 1 x internal NVMe M.2 Key M 80 mm - Low Profile Form Factor; Item No. 89370]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=9SIA4RE5AU2769 JEYI SK4 M.2 NVMe(M Key) SSD to PCI-E 3.0 x4 Adapter Converter Card]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=N82E16815124167 SYBA SI-PEX40110 M.2 PCI-e To PCI-e 3.0 x4]<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=1052 SYBA SI-PEX40152 PCIe 3.1 x16 to 4 x M.2 (M-Key) Adapter Card]<br />
* [https://highpoint-tech.com/USA_new/series-ssd7101a-1-overview.htm HighPoint SSD7101A-1] 4x M.2 PCIe to PCIe 3.0 x16 (based on PLX PEX8747 PCIe switch)<br />
** Works without special drivers as a PCIe switch. NVMEs are detected and work just fine. Petitboot is able to boot attached NVMEs with no problems. Tested in FreeBSD. -- [[User:Bdragon|Bdragon]] ([[User talk:Bdragon|talk]])<br />
* [https://highpoint-tech.com/USA_new/series-ssd7102-overview.htm HighPoint SSD7102] 4x M.2 PCIe to PCIe 3.0 x16 (with PCIe switch)<br />
* [https://estore-highpoint-tech.com/products/highpoint-ssd7505-pcie-4-0-x16-4-channel-u-2-nvme-raid-controller HighPoint SSD7505] PCIe 4.0 x16 4-Port M.2 NVMe RAID Controller<br />
* [https://highpoint-tech.com/USA_new/series-ssd7540-overview.htm HighPoint SSD7540] PCIe 4.0 x16 8-Port M.2 NVMe RAID Controller<br />
** Tested with Samsung 980 Pro 2TB<br />
** Beware of LUKS encryption performance not catching up with such speedy bandwidths yet.<br />
* [https://raidsonic.de/en/standards/searchresults.php?we_objectID=5456 Raidsonic Icy Box PCIe extension card for one M.2 NVMe SSD (IB-PCI214M2-HSL)]:<br />
** Tested with a Samsung 970 EVO Plus NVMe M.2 with 2 TB<br />
** Bootable and no special driver installation required<br />
** Has a passive cooling system for the SSD (about 20 degree Celsius cooler than without)<br />
** Supports PCIe 3.0 x4 with up to 32 GBit/s according to the manual<br />
** Seems to support PCIe 4.0 x4 with up to 64 GBit/s according to the current [https://www.raidsonic.de/products/accessories/ac_controller/IB-PCI214M2-HSL/pdf/datasheet_IB-PCI214M2-HSL_e.pdf data sheet] (probably due to the fact that it is only a routing device without any own logic)<br />
* [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php Supermicro AOC-SHG3-4M2P] 4x M.2 PCIe to PCIe 3.0 x8 (using a PEX 8734 PCIe 3.0 (8.0GT/s) Switch). Draws 10 watts in idle. Requires one additional 4-pin 12V connector.<br />
* [https://www.akasa.com.tw/update.php?tpl=product/product.detail.tpl&no=181&type=Enclosures&type_sub=SSD%20Accessories&model=AK-PCCM2P-01 Akasa AK-PCCM2P-01] PCIe Gen3 x4 to M.2 2230/2242/2260/2280/22110. Tested with Samsung 970 EVO Plus 500GB.<br />
* [https://www.startech.com/en-us/cards-adapters/pexm2sat32n1 StarTech 3-Port M.2 SSD (NGFF) Adapter Card] 1 x PCIe (NVMe) M.2, 2 x SATA III M.2 - PCIe 3.0. Only tested the NVMe port with Samsung 970 EVO Plus 500GB.<br />
<br />
===Partially working===<br />
* [https://www.amazon.com/gp/product/B074WV4ZN4 Aplicata Quad M.2 NVMe SSD PCIe x16 Adapter] (no PCIe switch; only lowest slot works)<br />
<br />
==PCIe to U.2 Adapters==<br />
===Working===<br />
* [https://highpoint-tech.com/USA_new/series-ssd7120-overview.htm High Point SSD7120] PCIe 3.0 x16 to 4x U.2 NVMe ports (Dedicated PCIe 3.0 x4 per port, with PCIe switch) tested by [[User:Gyakovlev|Gyakovlev]] ([[User talk:Gyakovlev|talk]])<br />
** Tested with [https://www.icydock.com/goods.php?id=255 Icy Dock ToughArmor MB699VP-B] 4xU2 enclosure. Neither above controller nor enclosure ships with cables, 4x SAS HD SFF-8643 cables required to connect drives.<br />
** 4x Optane 905P work fine with this combo.<br />
* [https://www.highpoint-tech.com/ssd7580a-overview High Point SSD7580A] U.2 NVMe RAID controller (PCIe 4.0 x16, allows eight U.2 NVMe PCIe 4.0 SSDs to be connected)<br />
** Tested with [https://semiconductor.samsung.com/ssd/datacenter-ssd/pm9a3/ Samsung PM9A3]<br />
** Neither controller nor disks ship with cables (so for U.2, for example, requires a [https://estore-highpoint-tech.com/products/ts8i-8639-060 SFF-8654 to SFF-8639] for each pair of disks)<br />
<br />
==PCIe to MiniPCIe Adapters==<br />
=== Working ===<br />
* [https://www.startech.com/Cards-Adapters/Slot-Extension/PCI-Express-to-Mini-PCI-Express-Card-Adapter~PEX2MPEX StarTech PEX2MPEX] ([https://www.newegg.com/startech-com-model-pex2mpex-pci-express-to-mini-pci-express/p/N82E16815158307?Item=N82E16815158307&Description=mini%20PCIe&cm_re=mini_PCIe-_-15-158-307-_-Product NewEgg])<br />
** Tested with ThinkPenguin TPE-NMPCIE.<br />
** Particularly of interest as a lot of the ASPEED and SiliconMotion GPU's have a MiniPCIe form factor.<br />
<br />
==SAS/SATA Storage Controllers ==<br />
===Working===<br />
* IOCrest SI-PEX40062 (Chipset: Marvell 88SE9235, PCI id 1B4B:9235)<br />
** Marvell 88SE9230 chipset also confirmed to work<br />
* Kouwell PE-115H (Chipset: Marvell 88SE9130, PCI id 1b4b:9130)<br />
* LSI 9300/9200 SAS HBAs<br />
** May require updating to IT firmware on a x86 machine<br />
* [[PM8068]]-based SAS HBAs <br />
* Supermicro AOC-SLG3-4E2P 4-port OCuLink adapter<br />
* Jmicron JMB 363 SATA PCIe card. SATA ports work with Petitboot.<br />
* MegaRAID 9460-8i<br />
* [http://www.iocrest.com/index.php?id=2070 IOCrest IO-M2F585-5I] (Chipset: JMicron JMB585, PCI IDs: 197b:0585)<br />
* Unbranded JMicron JMB363 SATA/IDE controller card, with one eSATA, one internal SATA, and one IDE (PATA) connector (Chipset: JMicron JMB363, PCI IDs: 197b:2363)<br />
** SATA ports work in Petitboot.<br />
** The IDE/PATA port doesn't work since it exclusively uses PCI I/O space access, which the [[POWER9]] does not support. Because of this, PCI function 1, which is used for the IDE/PATA functionality, is not exposed by Linux and so will not appear in the output of lspci.<br />
<br />
===Non-working===<br />
* AXAGON PCES-SA2 (ASMedia chipset)<br />
* SuperMicro AOC-SASLP-MV8 (mvsas driver)<br />
* MegaRAID 9341-8i - probably a bug in the firmware<br />
* Unbranded ASMedia ASM1166 SATA controller cards with six SATA connectors (Chipset: ASMedia ASM1166, PCI IDs: 1b21:1166)<br />
** Cards appear to be sold under different brands and with slightly different PCB layouts, but they can be identified by the following markings on their PCBs:<br />
*** "PCE6SAT-A01" and "VER006S"<br />
*** "PCI-E 3.0 TO SATA.6GB - 6Port" and "SU-SA3026"<br />
** Causes a PHB endpoint freeze during [[Skiboot]]'s initialization of the PCI Express device, so the issues this chip is having can't be worked around with just a kernel patch.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 642L] (Chipset: Marvell 88SE9235)<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 644L] (Chipset: Marvell 88SE9235)<br />
<br />
== Optical Drives ==<br />
<br />
* [https://www.asus.com/us/Optical-Drives-Storage/BW16D1HT/HelpDesk_Download/ Asus BW-16D1HT Retail] (Blu Ray Writer with SATA interface):<br />
** Partially working (reading BDs works, writing not yet tested). [https://forums.raptorcs.com/index.php/topic,40.0.html Sometimes not recognized during boot phase with ATA timeouts] causing all SATA devices to be disabled<br />
<br />
<br />
== Graphics Cards ==<br />
<br />
No display? Check out the [[Troubleshooting/GPU|GPU Troubleshooting]] page.<br />
<br />
=== AMD ===<br />
<br />
All AMD GPUs currently have DMA issues (limited to 32-bit, which can cause crashes) due to missing Linux kernel support for DMA windows between 33 and 63 bits in length. The root cause is GPU vendors (and occasionally some non-GPU vendors) cutting costs and only including 40-bit capable (Intel-style) DMA controllers. A compatibility mode is expected to be included in Linux 5.4 and above that will resolve this issue.<br />
<br />
* AMD Radeon HD 5570 - Archaic (1GB VRAM, PCI 2.1) but much faster than the AST. This card (ASUS EAH5570 Silent) is passively cooled.<br />
* AMD Radeon HD 5850 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 6450 - Works with default settings (kernel: radeon, X: modesetting or radeon), tested in BE mode<br />
* AMD Radeon HD 6850 - Disable AST VGA with jumper. 32 bit.<br />
* AMD Radeon HD 7850 - Disabled onboard VGA. Using amdgpu is highly unstable, radeon driver is usable but has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 7950 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon R5 220<br />
* AMD Radeon R5 230 - Works in BE mode (use <code>Option "AccelMethod" "EXA"</code> for Xorg)<br />
* AMD Radeon R7 240<br />
* AMD Radeon R9 290X<br />
* AMD Radeon R9 Nano - Must disable onboard VGA first. Works perfectly with Linux 5.6.x to 5.12.x with 4K Pages. It is confirmed working 5.6.x and 5.10.6 (or newer) with 64K Pages (occasionally crash under heavy load for example Blender rendering). Unfortunately 5.7.x, 5.8.x, 5.9.x, 5.11.1 -> 5.11.11 and 5.12.x with 64K pages are known to crash. For 5.7.x (64K pages), you could workaround the crash by adding `amdgpu.dc=0` to grub config.<br />
* Sapphire GPRO 8200 (Polaris10 core) - Disable AST VGA with jumper, disabling in grub is not enough. Same form factor as WX7100, a single-slot RX 470 with 8GB of RAM and 4 DP outputs.<br />
* AMD Radeon RX 480<br />
* AMD Radeon RX 550 - Works with caveats (below) for particular card tested.<br />
** Card tested was Gigabyte GV-RX550D5-2GD in a Blackbird with Ubuntu 19.10, 5.3.0-24 and amdgpu with onboard VGA disabled by jumper. Suspect with tweaking would work without needing to disable VGA. Alas would lock up every day or two, to the point I replaced with a Sapphire RX580. Based on conversations w/Raptor suspect this was an issue with the model card I had rather than the RX550 itself.<br />
* AMD Radeon RX 560X<br />
* AMD Radeon RX 580 – Works with the amdgpu firmware from Ubuntu 19.04 and disabled onboard VGA<br />
** You may also need a kernel parameter like <code>vga=797</code> if xinit complains about VESA[https://en.wikipedia.org/wiki/VESA_BIOS_Extensions]<br />
** The Sapphire NITRO+ Radeon RX 580 8GB card is a tight fit on the Blackbird planar if you're using the 2nd PCIe slot as it a bit wider than two slots (and is documented as such). Solved by removing the adapter plate for the PCIe-M2 adapter card being used and allowing it to sit in slot untethered.<br />
* AMD Radeon RX Vega 56 - Works with Debian Buster with amdgpu. Requires patches to work, somewhat unstable but usable. Cannot use AST Integrated VGA and AMDGPU at the same time without causing conflict. Not tested at this moment for use in petitboot or firmware. <br />
* AMD Radeon RX Vega 64 - Works with Fedora 32 with Linux kernel 5.5.0's amdgpu. The card does _NOT_ display in bootloader because vega10 firmwares failed to load correctly.<br />
* AMD Radeon Pro WX4100 (Polaris11 core) - May need at least linux 4.16 in order to get Xorg to work.<br />
* AMD Radeon Pro WX5100<br />
* AMD Radeon Pro WX7100 (Polaris10 core) - Available pre-installed on Talos II workstation, server, and desktop configurations.<br />
* AMD Radeon RX 5700 (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output. <br />
* AMD Radeon RX 5700 XT (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output.<br />
* AMD Radeon Pro W5500 (Navi 14) - "amdgpu" driver works with 4k kernel but not 64k. "fbdev" driver works with both page sizes.<br />
* AMD Radeon RX 6800 - see RX 6900 XT<br />
* AMD Radeon RX 6800 XT - see RX 6900 XT<br />
* AMD Radeon RX 6900 XT (Big Navi, Navi 21) - Not working with current 5.12 (in either 4K or 64K page sizes) - [https://gitlab.freedesktop.org/drm/amd/-/issues/1519 bug ticket] <br />
<br />
The core name is important when storing the firmware into the BOOTKERNFW partition in PNOR for use by skiroot.<br />
<br />
=== DisplayLink ===<br />
<br />
* [https://www.climaxdigital.co.uk/CUH195-USB-2-to-DVI-VGA-or-HDMI-Adaptor-1080p-full-hd ClimaxDigital CUH195 USB 2.0 Graphic Adapter] - Based on DisplayLink DL-3500 chipset. Works in the main OS; not tested with Petitboot but is likely to work there too.<br />
* [https://www.evga.com/support/manuals/files/100-U2-UV12-A1.pdf EVGA 100-U2-UV12-A1 UV Plus USB VGA Adapter] - Petitboot shows up without loading firmware. Not tested in OS.<br />
<br />
=== NVIDIA ===<br />
* NVIDIA Corporation G96 [GeForce 9500 GT] (rev a1) - Works in petitboot if onboard VGA is disabled. Currently has issues with only using 32-bit DMA. No firmware needed.<br />
* NVIDIA RTX 2070 - usable for compute, but not 3D acceleration; integrated by Raptor as part of the Talos II PowerAI Development System configuration<br />
<br />
=== Other ===<br />
* [[AST2500|ASPEED AST2500]]. Works in both the main OS (LE mode) and Petitboot. BE mode partially works (doesn't crash, but colors are wrong unless you apply a patch that is harmful to performance). On Linux 5.6+, [https://forums.raptorcs.com/index.php/topic,31.0.html 1920x1200 resolution is broken]. <code>ast</code> Linux driver.<br />
<br />
=== Non-working ===<br />
<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=244 ASPEED AST1300]. Older revision of the AST2510 (AST1300 is 4th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. [https://github.com/open-power/skiboot/issues/257 Open issue with Skiboot for getting it fixed.] Known suppliers of AST1300 devices are:<br />
** [https://www.gigabyte.com/Enterprise/Accessory/GC-IVA-rev-10 Gigabyte GC-IVA 9CIVANR-00] -- Resold by:<br />
*** [https://www.lambda-tek.com/Gigabyte-9CIVANR-00~sh/B42184346&viewOverview=y#product-view LambdaTek]<br />
*** [https://sg-computers.com/en/video-card/gigabyte-gc-iva-video-card-detail SG-Computers]<br />
** [https://iei.rs/IGCME-1300-R10 IEI Integration Corp IGCME-1300-R10] ([https://iei.rs/image/cache/data/IGCME-1300_20131105.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0D332000196276623429/IGCME-1300%20QIG%20V1.01_20120531.pdf Quick Installation Guide]) -- Resold by:<br />
*** [http://archivecaslytosk.onion/QZROL eBay example 1]<br />
*** [https://www.ebay.com/p/1383304505 eBay example 2]<br />
*** [https://web.archive.org/web/20171003045507/http://neutronusa.com/prod.cfm/1525210/ NeutronUSA] (Warning: non-TLS link!)<br />
*** [https://forums.servethehome.com/index.php?threads/fs-us-ny-intel-x540-t2-minipcie-vga-slim-120mm-fans.26880/ ServeTheHome]<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=455 ASPEED AST2510]. It's the GPU component of the [[AST2500]] without the BMC component. VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). Might be useful for users who want to add additional VGA displays beyond the single VGA display supported by the built-in AST2500, with similar freedom and performance properties as the AST2500. <code>ast</code> Linux driver. Known suppliers of AST2510 devices are:<br />
** [https://www.aewin.com/products/r478/ AEWIN Technologies R478]<br />
** [https://www.aewin.com/products/r492b/ AEWIN Technologies R492B]<br />
*** Distributed as add-on for these servers:<br />
**** [https://www.aewin.com/products/scb-1921a/ SCB-1921A]<br />
**** [https://www.aewin.com/zh-hans/products/scb-1925/ SCB-1925] ([https://www.aewin.com/wp-content/uploads/2019/11/SCB-1925.pdf datasheet])<br />
**** [https://www.aewin.com/zh-hant/products/scb-1935a/ SCB-1935A] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
**** [https://www.aewin.com/products/scb-1935b/ SCB-1935B] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
** [https://www.asrockrack.com/general/productdetail.asp?Model=TOMMY ASRock Rack Tommy]<br />
*** [https://download.asrock.com/Manual/QIG/TOMMY.pdf Manual]<br />
*** Resold by [https://www.newegg.com/asrock-rack-tommy-other/p/N82E16816775074 NewEgg].<br />
** [https://www.win-ent.com/1U-Rackmount-Platforms/pl-81280 WIN Enterprises IP-492B]<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=377 ASPEED AST1400]. Older revision of the AST2510 (AST1400 is 5th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. Known suppliers of AST1400 devices are:<br />
** [https://iei.rs/IGCME-1300-R11 IEI Integration Corp IGCME-1300-R11] ([https://iei.rs/image/cache/data/IGCME-1300_MPCIE-USB3.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0F233000410888189307/IGCME-1300%20QIG%20V1.10_20150819.pdf Quick Installation Guide]) -- Resold by:<br />
*** [https://eu.mouser.com/ProductDetail/IEI/IGCME-1300-R11?qs=wd5RIQLrsJgucg6W4Ojybw%3D%3D Mouser]<br />
*** [https://www.amazon.com/IEI-Technology-IGCME-1300-R11-Adapter-AST1400/dp/B07WRVK8DR Amazon]<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/IGCME-1300/IGCME-1300.htm Kacer]<br />
*** [https://www.alibaba.com/product-detail/IEI-IGCME-1300-R11-PCIe-Mini_60839628812.html Alibaba]<br />
*** [https://www.icpamerica.com/igcme-1300-add-on-card/ ICP America]<br />
* SiliconMotion SM750. Chipset is VGA + DVI (dual display) 1920x1440, but some devices may not support the full chipset resolution; appears to have 2D acceleration (not just framebuffer). Appears to be fixed-function silicon (no firmware). PCIe interface. <code>sm750fb</code> Linux driver is in staging. [https://gitlab.com/sudipm/sm750/tree/sm750 <code>sm750</code> Linux driver] is not yet merged to mainline. <code>sm750</code> Linux driver has some weird license text, but [https://github.com/torvalds/linux/commit/81e0da703fdba1ee126868bf8350592c79cdba13 according to Greg Kroah-Hartman] it sounds like the authors intend it to be GPLv2; would be useful to double-check with Greg/Sudip/Teddy whether Silicon Motion's statement to Greg applies to Sudip's <code>sm750</code> or if it only applies to mainline's <code>sm750fb</code>. Known suppliers:<br />
** [https://www.asrockrack.com/general/productdetail.asp?Model=M2_VGA ASRock Rack M2_VGA]. Resold by:<br />
*** [https://www.newegg.com/asrock-rack-m2-vga-interface-module/p/N82E16816775029 NewEgg]<br />
** [https://www.cervoz.com/product.php?id=c39eb02c-014a-1000-a04b-001851f77c0c Cervoz MEC-DIS-M002]. VGA + DVI (dual display) 1280x1024 @ 60Hz. Mini-PCIe form factor. Resold by:<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/MEC-DIS-M002/MD02.html Kacer]<br />
*** [https://www.texim-europe.com/product/MEC-DIS-M002 Texim Europe]<br />
*** [https://www.bvm.co.uk/products/1053-Mini-PCI-Express-DVI-VGA-Module-MEC-DIS-M002/ BVM]<br />
*** [https://web.archive.org/web/20200704052513/https://nerugged.com/product/mec-dis-m002-mpcie-dvi-vga-controller/ New England Rugged]<br />
** [https://web.archive.org/web/20200707045733/http://www.smartnre.com/en/product/Fastwel_VIM552_3U_CPCI_Graphics_Module.html Fastwel VIM552] (Warning: non-TLS link!)<br />
** [https://www.memorydepot.com/detail/EMPV-1201-C1.html Innodisk EMPV-1201-C1]<br />
** [https://www.memorydepot.com/detail/EMPV-1202-C1.html Innodisk EMPV-1202-C1]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1760 SUNIX VGA0419]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1766 SUNIX VGA0429]. Resold by:<br />
*** [https://www.dc3.co.za/computer-store/sc-svga0429/ DC3 Distribution]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1817 SUNIX VGA0449M]<br />
** [https://www.vadatech.com/product.php?product=368 VadaTech AMC348]<br />
** [https://www.vadatech.com/product.php?product=151 VadaTech AMC349]<br />
** [https://www.versalogic.com/product/video-expansion-module/ VersaLogic VL-MPEe-V5]<br />
* DisplayLink<br />
** DL-125<br />
*** [https://archive.plugable.com/products/uga-125/ Plugable UGA-125]<br />
** DL-165<br />
*** [https://www.diamondmm.com/product/diamond-bvu165-usb-external-video-display-adapter/ Diamond Multimedia BVU165]<br />
**** Resold by [https://www.amazon.com/Diamond-BVU165-USB-HDMI-Adapter/dp/B00C2RAO3M Amazon].<br />
*** [https://www.diamondmm.com/product/bvu165lt-diamond-bvu165lt-usb-external-video-display-adapter/ Diamond Multimedia BVU165LT]<br />
**** Resold by [https://www.amazon.com/Diamond-Multimedia-Graphics-1920x1080-1600x1200/dp/B00BN5FI8K Amazon].<br />
*** [https://plugable.com/products/uga-165 Plugable UGA-165]<br />
*** [https://plugable.com/products/usb-vga-165 Plugable USB-VGA-165]<br />
**** Resold by [https://www.amazon.com/Plugable-Graphics-Multiple-1920x1080-Chromebooks/dp/B004D0QC0A Amazon]<br />
*** [https://archive.plugable.com/products/usb2-hdmi-165/ Plugable USB2-HDMI-165]<br />
**** Resold by [https://www.amazon.com/Plugable-USB2-HDMI-165-Adapter-DisplayLink-DL-165/dp/B004QPY4NY Amazon].<br />
*** [https://www.siig.com/products/it-products/video-display/display-adapters/usb-2-0/usb-2-0-to-vga-pro.html SIIG JU-VG0012-S1]<br />
**** Resold by [https://www.amazon.com/SIIG-USB-2-0-Adapter-JU-VG0012-S1/dp/B0048744GM Amazon].<br />
*** [https://www.startech.com/en-us/audio-video-products/usb2dvimm6 StarTech USB2DVIMM6]<br />
**** 1680x1050.<br />
**** Resold by [https://www.newegg.com/startech-com-usb2dvimm6/p/N82E16815158183 NewEgg].<br />
** DL-195<br />
*** [https://www.amazon.com/Accell-Male-DVI-I-Female-Adapter/dp/B005RUSWHQ Accell J130B-001B]<br />
*** [https://www.accellww.com/collections/adapters/products/ultraav-usb-2-0-to-hdmi-adapter Accell J131B-001B UltraAV]<br />
**** Resold by [https://www.amazon.com/Accell-J131B-001B-UltraAV-DisplayLink-Processor/dp/B005RUSWI0 Amazon].<br />
*** [https://www.diamondmm.com/product/diamond-bvu195-usb-external-video-display-adapter/ Diamond Multimedia BVU195]<br />
**** Resold by [https://www.amazon.com/Diamond-Multimedia-BVU195-2048x1152-1920x1080/dp/B002GHBW4S Amazon].<br />
*** [https://archive.plugable.com/products/uga-2k-a/ Plugable UGA-2K-A]<br />
**** Resold by [https://www.amazon.com/Plugable-Multiple-2048x1152-1920x1080-DisplayLink/dp/B00BBDFMK8 Amazon]<br />
*** [https://www.sabrent.com/product/UGA-2K-195/multi-display-usb-2-0-dvivga-hdmi-adapter-link-6-additional-displays/ Sabrent UGA-2K-195]<br />
**** Resold by [https://www.amazon.com/UGA-2K-195-Multiple-2048x1152-1920x1080-DisplayLink/dp/B00ABNLEWO Amazon].<br />
*** [https://www.sabrent.com/product/USB-2011/usb-2-0-to-vgadvihdmi-adapter-for-multiple-monitors/ Sabrent USB-2011]<br />
**** Resold by [https://www.amazon.com/Multiple-2048x1152-1920x1200-DisplayLink-USB-2011/dp/B002SB61W0 Amazon].<br />
*** [https://www.sabrent.com/product/USB-DH88/usb-2-0-vgadvihdmi-adapter-multiple-monitors-2048x11521920x1080-displaylink-dl-195-chipset/ Sabrent USB-DH88]<br />
**** Resold by [https://www.amazon.com/Sabrent-USB-DH88-2048x1152-1920x1080-DisplayLink/dp/B001B7H39W Amazon].<br />
*** [https://www.sabrent.com/product/USB-HRHD/video-audio-usb-2-0-hdmi-dvi-adapter-multiple-monitors-2048x1152-1920x1200-displaylink-dl-195-chipset/ Sabrent USB-HRHD]<br />
**** Resold by [https://www.amazon.com/Sabrent-2048x1152-1920x1200-DisplayLink-USB-HRHD/dp/B008S08ADI Amazon].<br />
*** [https://www.siig.com/products/it-products/video-display/display-adapters/usb-2-0/usb-2-0-to-dvi-vga-pro.html SIIG JU-DV0112-S1]<br />
**** Resold by [https://www.amazon.com/SIIG-Multi-Monitor-Converter-Windows-1080p/dp/B004WKRRY6 Amazon].<br />
*** [https://www.startech.com/en-us/audio-video-products/usb2dvipro2 StarTech USB2DVIPRO2]<br />
**** 1920x1200.<br />
**** Resold by [https://www.newegg.com/startech-com-usb2dvipro2/p/N82E16812400361 NewEgg].<br />
*** [https://www.startech.com/en-us/audio-video-products/usb2vgapro2 StarTech USB2VGAPRO2]<br />
**** 1920x1200.<br />
**** Resold by [https://www.newegg.com/startech-com-usb2vgapro2/p/N82E16812400368 NewEgg].<br />
** DL-3500<br />
*** [https://www.climaxdigital.co.uk/epages/BT3449.sf/en_GB/?ObjectPath=/Shops/BT3449/Products/111216 ClimaxDigital CUH350]<br />
**** ClimaxDigital claims 1920x1200; DisplayLink chipset docs claim 2560x1600.<br />
* PowerVR<br />
** [https://hothardware.com/news/powervr-innosilicon-fantasy-one-gpu-certified-for-chinas-tongxin-uos Innosilicon Fantasy One]<br />
** [https://www.geeks3d.com/20220401/new-chinese-gpu-maker-moore-threads-unveils-the-mtt-s60-graphics-card-with-vulkan-opengl-and-direct3d-support/ Moore Threads MTT S60]<br />
<br />
== Sound Cards ==<br />
<br />
===Working===<br />
* Creative Sound Blaster Audigy FX SB1570 PCIe 5.1 Sound Card<br />
* Creative Sound Blaster X-Fi Xtreme Fidelity PCIe Audio Sound Card (SB0880)<br />
* Creative [https://us.creative.com/p/sound-blaster/sound-blasterx-ae-5-plus Sound BlasterX AE-5 Plus] worked out of the box with Ubuntu 21.10 (the audio config needs changing to use the stereo output otherwise the default is the S/PDIF)<br />
* AMD Radeon HD 5850 and 7950 (HDMI audio)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=156&p_name=+USB+Stereo+Audio+Adapter&pc_id=9&pc_name=Adapters&pt_id=3&pt_name=Audio+%2B++Video#tab-1 VANTEC NBA-120U (USB)]<br />
* Sabrent USB External Stereo Sound Adapter (AU-MMSA)<br />
* [https://mackie.com/products/onyx-blackjack Mackie Onyx Blackjack (USB) Recording Interface]<br />
* RME HDSPe AIO (FreeBSD tested)<br />
* Leveraged Sabrent Bluetooth 4.0 USB adapter (model BT-UB40) to connect to wireless Bluetooth headphones, specifically Bose Quiet Comfort 35.<br />
* Bluetooth audio from an [https://www.asus.com/my/Networking-IoT-Servers/Adapters/All-series/PCE-AX3000/ Asus PCE-AX3000] connecting to various devices, with the media keys also working to control playback<br />
<br />
===Non-working===<br />
* ASUS Xonar SE - Contains ASMedia USB host controller with errant DMA access flaw<br />
* Creative Sound Blaster Audigy PCIe RX 7.1 - unable to enable emu10k1 driver on little-endian power9 kernel as driver requires ZONE_DMA<br />
<br />
==USB Host Controllers==<br />
===Working===<br />
* Insignia USB 3.0 PCI-e NS-PCCUP53 V1.0 (Chipset: NEC D720202)<br />
* AGAXO PCEU-23R (Chipset: Renesas uPD720202, PCI id 1912:0015)<br />
* Terminus Technology Inc. FE 2.1 7-port Hub<br />
* [https://www.sonnettech.com/product/legacyproducts/allegroprousb3pcie.html Sonnet Allegro Pro USB 3.0 PCIe USB3-PRO-4PM-E] (Chipset: Four [http://www.frescologic.com/product/single/fl1100ex/ Fresco Logic FL1100EX] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8608 PLX PEX 8608] switch)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=125&p_name=+4-Port+SuperSpeed+USB+3.0+PCIe+Host+Card+w%2F+Internal+20-Pin+Connector&pc_id=16&pc_name=USB&pt_id=4&pt_name=Add-on+Cards Vantec UGT-PC345 4 Port USB 3.0 PCIe w/ Internal 20 pin] (Chipset: Renesas uDP720201)<br />
* [https://www.amazon.com/gp/product/B07H4HJNJC] (monster card with 8 ports of USB 3.0) four Renesas uPD720202 chips behind ASMedia 1806, card can be found under different brands but can be identified by the look. [http://sedna-shop.com/index.php?route=product/product&path=59_74&product_id=138 This should be the same card]<br />
* En-Labs PCI-e to 4 Ports USB 3.1 GEN 1 (5Gbps) (USB Type-C +USB Type A w/ Internal 19Pin USB 3.0 Dual Port) PCI Express Card (Chipset: ASMedia ASM1042A)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE3U1T-A31" and "VER 006S" markings on the PCB.<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=818 IOCrest SI-PEX20189] (Chipset: ASMedia ASM1142)<br />
** Requires kernel version 4.14.194, 4.19.139, 5.4.58, 5.7.15, 5.8.1, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [http://ableconn.com/products_2.php?gid=121 Ableconn PU31-2C-2] (Chipset: ASMedia ASM2142)<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* Semoic USB 3.1 to Type-C 2 Port Expansion Card (Chipset: ASMedia ASM3142, same PCI IDs as ASM2142)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE2TYC-A31", "VER006", "USB 3.1 Type-C 2-Port Card", and "PCE-E 4X" markings on the PCB.<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [https://www.orico.cc/us/product/detail/7192.html ORICO PE20-1C] (Chipset: ASMedia ASM3242)<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
<br />
===Non-working===<br />
In general, USB3 host controllers based on ASMedia chipsets are known to be problematic, due to ASMedia hardware or firmware bugs causing errant DMA accesses to invalid regions of host memory.<br />
<br />
* AXAGON PCEU-43V - chipset Via VL805 - PCI id 1106:3483<br />
* StarTech PEXUSB314A2V - 2x ASM1142 host controllers and a PCIe switch<br />
** This card completely fails to be detected.<br />
* QNINE USB 3.1 Gen2 (Type-A and Type-C) - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* Rosewill RC-509 - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1022A-Series.htm HighPoint RocketU 1022A] (Chipset: ASMedia ASM1042)<br />
** Skiboot reports that the PCIe link is unstable when the card is connected directly, but it seems to work when the card is plugged in via a PCIe switch.<br />
** This chip seems somewhat unreliable, since USB reads can fail after only a few tens of gigabytes have been transferred.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1144A-Series.htm HighPoint RocketU 1144A] (Chipset: Chipset: Four ASMedia ASM1042 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
** Skiboot sometimes times out when scanning for the ASM1042 controllers attached to the PEX 8609 ("Timeout waiting for downstream link"), resulting in some of the ports effectively being disabled until the next boot.<br />
** The ASM1042 controller seems somewhat unreliable.<br />
*** Lots of resets on USB 3.<br />
*** Long reads from a single USB hard drive can sometimes result in I/O errors.<br />
*** Incompatible with some USB hard drives.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=54 SEDNA - PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC)<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=99 SEDNA - PCIe 4 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://www.startech.com/Cards-Adapters/USB-3.0/Cards/7-port-pci-express-usb-3-card~PEXUSB3S7 StarTech PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://highpoint-tech.com/USA_new/series-ru1344a-overview.htm High Point RocketU 1344A 4-Port USB 3.1 PCI-Express 3.0 x 4 HBA] (Chipset: Two ASMedia ASM3142 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8714 PLX PEX 8714] switch)<br />
* [https://highpoint-tech.com/USA_new/series-ru1144d-overview.htm High Point RocketU 1144D 4-Port USB 3.0 PCI-Express 2.0 x 4 HBA] (Chipset: Four ASMedia ASM1042A controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
* [https://www.sonnettech.com/product/allegro-usbc-pcie.html Sonnet Allegro USB-C PCIe Card USB3C-2PM-E] (Chipset: ASMedia ASM1142/ASM3142 (cards shipped before April 2020 use the ASM1142 controller))<br />
* [https://www.sonnettech.com/product/allegro-usbc-4port-pcie.html Sonnet Allegro USB-C 4-Port PCIe Card USB3C-4PM-E] (Chipset: Two ASMedia ASM1142/ASM3142 controllers (cards shipped before January 2020 use ASM1142 controllers) behind one [https://www.diodes.com/part/view/PI7C9X2G308GP Pericom PI7C9X2G308GP] switch)<br />
* [https://www.gigabyte.com/Motherboard/GC-USB-32-GEN2X2 Gigabyte GC-USB 3.2 GEN2X2] (Chipset: ASMedia ASM3242)<br />
<br />
==TV Tuners==<br />
* [https://hauppauge.com/pages/products/data_quadhd.html Hauppauge WinTV-quadHD] (Chipset: Four Silicon Labs Si2157 tuners, four LG LG3306A demodulators, and two Conexant CX23888 PCIe interface chips behind one [https://www.diodes.com/part/view/PI7C9X2G304EL Pericom PI7C9X2G304EL] PCIe switch)<br />
* Hauppauge WinTV HVR-850 (2040:7240) - ATSC - using Kaffeine<br />
<br />
==Firewire Host Controllers==<br />
===Working===<br />
<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=119 Syba SY-PEX30016] (Chipset: TI XIO2213B)<br />
** Requires [https://marc.info/?l=linux1394-devel&m=157207806405627&q=mbox this patch] to work on kernels with a 64k page size.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
<br />
* [http://www.dawicontrol.com/index.php?cmd=proddet&id=media Dawicontrol DC-FW800] (Chipset: TI XIO2213B)<br />
* [https://www.delock.de/produkte/G_89210/merkmale.html?setLanguage=en DeLOCK 3x FireWire 800, Item No. 89210] (Chipset: TI XIO2213B)<br />
* [https://www.digitus.info/en/products/computer-components/computer-peripherals/serial-parallel-adapter/ds-30203-2/ DIGITUS Firewire 800 (1394b) PCIe Card] (Chipset: TI XIO2213B)<br />
* [https://www.exsys.de/index.php?page=product&info=127 Exsys EX-16415] (Chipset: TI XIO2213)<br />
* [https://www.exsys.de/index.php?page=product&info=366 Exsys EX-16512E] (Chipset: TI)<br />
* [http://www.ioi.com.tw/products/proddetail.aspx?CatID=106&DeviceID=3021&HostID=2009&ProdID=1060100 IOI Technology FWB-PCIE1X11A] (Chipset: TI XIO2213B)<br />
[[Category:Compatibility List]]<br />
<br />
==Video Capture Cards==<br />
* [https://www.avermedia.com/professional/product/ce310b/overview AVerMedia CE310B] (Chipset: Conexant CX23888)<br />
** Requires kernel version 4.19.106, 5.4.22, 5.5.6, or later.<br />
<br />
==Serial Port Adapter Cards==<br />
===Working===<br />
* EXSYS EX-44072 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44073 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44171 PCI-Express 1x Serial RS-232 / 1x Parallel Multi I/O Card (Chipset: Oxford OXPCIe952)<br />
** ''The UARTs implemented with the Oxford Semiconductor OXPCIe952 PCIe ASIC can be strapped for either native or legacy operation. The EXSYS boards configure it for the native mode and therefore work with the PHB4 just fine.<br>NB the PC parallel port is always a legacy PCIe device and therefore cannot work with the PHB4.''<br />
<br />
==PCIe/PCI Expansion==<br />
===Working===<br />
* [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/490/pcie-adapter-card-for-ex-1010/1031/1032/1041/1042 EXSYS EX-1095 PCIe Adapter card for EX-1010/1031/1032/1041/1042]<br />
** [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/1144/expansion-box-with-4-x-pci-slots-38cm-length-220w-power-supply EXSYS EX-1031 Quad PCI-Slot Expansion Box] (Chipset: TI XIO2000A)<br />
*** 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]<br />
*** DEC FDDIcontroller/PCI (DEFPA) PCI FDDI [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=POWER9_Hardware_Compatibility_List/Memory&diff=3585POWER9 Hardware Compatibility List/Memory2021-11-12T19:13:43Z<p>Chatcannon: /* Compatible memory */ Goodram W-MEM2666R4Q464G</p>
<hr />
<div>==Compatibility rules==<br />
<br />
The criteria for compatibility are essentially:<br />
* must be DDR4;<br />
* must be ECC;<br />
* must be registered (RDIMM);<br />
* must NOT be LRDIMM.<br />
<br />
The supported module sizes are 8GB, 16GB, 32GB, 64GB and 128GB. 4GB is expected to work (and is reported working by at least 1 user) but is not officially supported by Raptor.<br />
<br />
The supported memory speeds are 1600, 1866, 2133, 2400, 2666 MHz.<br />
<br />
Ram will be running at a potentially slower frequency (2666, 2400, or 2133) based on if there is 1, 2 or 4 DIMMs per channel<br />
<br />
{| class="wikitable"<br />
|-<br />
! Platform<br />
! Slots<br />
! Max. Capacity<br />
|-<br />
| [[Talos II]]<br />
| Up to two sockets, each of 4 channels of 2 slots each<br />
| 2TiB<br />
|-<br />
| [[Blackbird]]<br />
| Two channels, one slot each<br />
| 256GiB<br />
|}<br />
<br />
== Tested memory ==<br />
<br />
=== Compatible memory ===<br />
<br />
{| class="wikitable sortable"<br />
!colspan="6"|Module<br />
!colspan="4"|Validation<br />
|-<br />
!Manufacturer<br />
!Model<br />
!Size<br />
!Speed<br />
!Type<br />
!ECC<br />
!Stepping<br />
!Firmware<br />
!Source<br />
!Notes<br />
|-<br />
|Pacific Sun<br />
|X10723042S<br />
|8GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot cc2d45a<br />
|Official<br />
|<br />
|-<br />
|Hynix<br />
|HMA41GR7MFR4N-TF<br />
|8GB<br />
|PC4-17000R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 76f78f4<br />
|ernsteiswuerfel<br />
|<br />
|-<br />
|Hynix<br />
|HMA82GR7AFR8N-UH<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot e36ec63<br />
|Official<br />
|<br />
|-<br />
|Hynix<br />
|HMA82GR7CJR8N-VK<br />
|16GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|[[User:JeremyRand|JeremyRand]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A1G40DB0-CPB<br />
|8GB<br />
|PC4-17000<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 30dfd3b<br />
|meklort<br />
|Requires [[Talos_II/Firmware|System Package v1.02]]<br />
|-<br />
|Kingston<br />
|KTH-PL424/16G<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot cc2d45a<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA9ASF1G72PZ-2G6D1<br />
|8GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.3<br />
|Hostboot 28927a7<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA18ASF2G72PZ-2G3B1<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 28927a7<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA18ASF2G72PDZ-2G3D1<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot cc2d45a<br />
|Official<br />
|<br />
|-<br />
|Micron<br />
|MTA18ASF2G72PDZ-2G6D1<br />
|16GB<br />
|PC4-21333<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|[[User:Smaeul|smaeul]]<br />
|<br />
|-<br />
|Micron<br />
|MTA36ASF4G72PZ-2G6D1<br />
|32GB<br />
|PC4-21333<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 6ffaeb4<br />
|[[User:cyrozap|cyrozap]]<br />
|<br />
|-<br />
|Nemix Ram<br />
|<br />
|8GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|[[User:suertreus|suertreus]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40BB1-CRC<br />
|32GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot 1e2221d<br />
|Official<br />
|<br />
|-<br />
|Samsung<br />
|M393A8K40B22-CWD<br />
|64GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|Official<br />
|tested 8 sticks/512GB@2666 total by [[User:Gyakovlev|Gyakovlev]]<br />
|-<br />
|Samsung<br />
|M393A2K40BB2-CTD<br />
|16GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 0c8fa110<br />
|meklort<br />
|Will run at 2400MT/s with [[Talos_II/Firmware|System Package v1.00]]<br />
|-<br />
|Samsung<br />
|M393A2K40CB2-CTD<br />
|16GB<br />
|PC4-21300V-R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 884b60b<br />
|[[User:MarcusC|MarcusC]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40BB2-CTD8Q<br />
|32GB<br />
|PC4-21333<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2 & DD2.3<br />
|Hostboot 28927a7<br />
|luke-jr<br />
|<br />
|-<br />
|Samsung<br />
|M393A2G40EB2-CTD<br />
|16GB <br />
|PC4-21300V-R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot 30dfd3b<br />
|JSharp<br />
|Tested extensively with [[Talos_II/Firmware|System Package v1.02]] but does boot on v1.00, Dual 8-Core POWER9, x8 DIMM Modules (RCS Recommended Slot Configuration) 128GiB total; also tested x4 DIMM Modules (RCS Recommended Slot Configuration) 64GiB total<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD6Q<br />
|32GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-884b60b<br />
|kev009<br />
|8 DIMMs working well<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD7Q<br />
|32GB<br />
|PC4-21300R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-3beba24<br />
|[[user:MPC7500|MPC7500]]<br />
|2*32GB in Blackbird<br />
|-<br />
|Samsung<br />
|M393A2K40BB2-CTD7Q<br />
|16GB<br />
|PC4-21300R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|[[user:Avh|Avh]]<br />
|2*16GB in TalosII<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD7Y<br />
|32GB<br />
|PC4-21300R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-3beba24<br />
|[[user:mx08|mx08]]<br />
|2*32GB in Blackbird<br />
|-<br />
|Kingston<br />
|KSM24RS8/8MAI<br />
|8GB<br />
|PC4-19200R<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Hostboot d286337<br />
|ernsteiswuerfel<br />
|<br />
|-<br />
|Kingston<br />
|KVR24R17S8K4/32<br />
|8GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|1.04, PNOR d286337d<br />
|sharkcz<br />
| kit 4x 8GB, got 1 stick faulty, but 3x 8GB worked OK<br />
|-<br />
|Kingston<br />
|KVR24R17D8/16MA<br />
|16GB<br />
|PC4-19200<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|1.04, PNOR d286337d<br />
|sharkcz<br />
|<br />
|-<br />
|Crucial<br />
|CT32G4RFD4266<br />
|32GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|<br />
|<br />
|drp<br />
|Tested in Blackbird with 2x32GB<br />
|-<br />
|Crucial<br />
|CT16G4RFD4266.36FE1<br />
|16GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|1.06<br />
|aperezbios<br />
|tested with 2x16GB<br />
|-<br />
|Crucial<br />
|CT4G4RFS8266<br />
|4GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|[[User:Robbieab|Robbieab]]<br />
|Purchased as the CT2K4G4RFS8266 8GB kit. Confirmed functional from the petitboot shell.<br />
|-<br />
|Crucial<br />
|CT8G4RFS8266<br />
|8GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|<br />
|<br />
|<br />
|CT2K8G4RFS8266 16GB kit (8GBx2). DDR4 PC4-21300 • CL=19 • Single Ranked • x8 based • Registered • ECC • DDR4-2666 • 1.2V • 1024Meg x 72. Confirmed with a working Debian GNU and Devuan GNU+Linux installation.<br />
|-<br />
|Ventura (Samsung)<br />
|D4-62JA402SV-15<br />
|16GB<br />
|PC4-17000<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|mosst<br />
|<br />
|-<br />
|Kingston<br />
|KSM26RD8/16HAI<br />
|16GB<br />
|PC4-2666<br />
|Registered<br />
|Yes<br />
|<br />
|<br />
|[[user:Xkucf03|xkucf03]]<br />
|tested 2×16 GB in Blackbird<br />
|-<br />
|Samsung<br />
|M393A1G43EB1-CTD<br />
|8GB<br />
|PC4-2666<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|Red Hat<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CTD<br />
|32GB<br />
|PC4-2666<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|<br />
|Red Hat<br />
|<br />
|-<br />
|Samsung<br />
|M393A4K40CB2-CVF<br />
|32GB<br />
|PC4-2933<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.3<br />
|hostboot- a2ddbf3<br />
|[[User:Helen|Helen]]<br />
|4x 32GB @2666MHz in Talos II lite<br />
|-<br />
|Kingston<br />
|KSM29RD4/64MER<br />
|64GB<br />
|PC4-23400<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|Self-compiled Hostboot (with PCIe patches that shouldn't matter for RAM)<br />
|[[User:JeremyRand|JeremyRand]]<br />
|<br />
|-<br />
|Samsung<br />
|M393A8G40MB2-CTD<br />
|64GB<br />
|PC4-21300<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.2<br />
|hostboot-3beba24<br />
|[[User:Kmarek|Kmarek]]<br />
|<br />
|-<br />
|Samsung<br />
|M393AAK40B42-CWD7Y<br />
|128GB<br />
|PC4-2666<br />
|Registered<br />
|Yes<br />
|POWER9 DD2.3<br />
|hostboot a2ddbf3<br />
|[[User:macro|macro]]<br />
|2*128GiB in Talos II<br />
|<br />
|-<br />
|Goodram<br />
|W-MEM2666R4Q464G<br />
|64GB<br />
|PC4-21333<br />
|Registered<br />
|yes<br />
|POWER9 DD2.3<br />
|<br />
|[[User:chatcannon|chatcannon]]<br />
|lshw reports vendor as Hynix, speed as 2932 MHz<br />
|<br />
<br />
|}<br />
<br />
=== Incompatible memory ===<br />
<br />
NOTE: Memory may be removed from this table after firmware support has been added, or there may be a fundamental hardware incompatibility. If you have incompatible memory listed in the table below, you may want to bookmark and check this page from time to time to see if a firmware update has resolved the issue.<br />
<br />
{| class="wikitable sortable"<br />
!colspan="6"|Module<br />
!colspan="4"|Test Conditions<br />
|-<br />
!Manufacturer<br />
!Model<br />
!Size<br />
!Speed<br />
!Type<br />
!ECC<br />
!Stepping<br />
!Firmware<br />
!Last Test<br />
|-<br />
|Samsung<br />
|M386A8K40BMB-CRC<br />
|64GB<br />
|PC4-19200<br />
|Registered LRDIMM<br />
|Yes<br />
|POWER9 DD2.1<br />
|Hostboot 1e2221d<br />
|02/14/2018<br />
|-<br />
|Kingston<br />
|KSM26RS8/8HAI<br />
|8GB<br />
|PC4-26600<br />
|Registered DIMM<br />
|Yes<br />
|<br />
|<br />
|09/24/2020<br />
|-<br />
|}<br />
<br />
[[Category:Compatibility List]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=Virtualization&diff=3584Virtualization2021-11-08T18:41:28Z<p>Chatcannon: /* Running 64k guests on 4k hosts */ Add reference to describe libvirt XML section</p>
<hr />
<div><br />
<br />
===Running 64k guests on 4k hosts===<br />
When trying to start a VM on a host running with 4k pages, you might see the following error message:<br />
<br />
<nowiki>qemu-system-ppc64: Can't support 64 kiB guest pages with 4 kiB host pages with this KVM implementation</nowiki><br />
<br />
There is an easy workaround for this. If running QEMU directly, add the argument <code>-machine pseries,cap-hpt-max-page-size=4096</code>. If running QEMU via libvirt, add the following section<ref>https://gitlab.com/libvirt/libvirt/-/issues/227#note_705948269</ref> to the guest's libvirt XML (via <code>virsh edit [guest name]</code> or the XML tab in virt-manager):<br />
<nowiki><br />
<features><br />
<hpt><br />
<maxpagesize unit='KiB'>4</maxpagesize><br />
</hpt><br />
</features></nowiki><br />
<br />
==Further Information==<br />
<br />
* [https://docs.voidlinux-ppc.org/configuration/virtualization.html VoidLinux PPC documentation on Virtualization]<br />
* [https://wiki.qemu.org/Documentation/Platforms/POWER QEMU documentation about POWER guests]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=Virtualization&diff=3583Virtualization2021-11-08T18:40:35Z<p>Chatcannon: Add links to more documentation</p>
<hr />
<div><br />
<br />
===Running 64k guests on 4k hosts===<br />
When trying to start a VM on a host running with 4k pages, you might see the following error message:<br />
<br />
<nowiki>qemu-system-ppc64: Can't support 64 kiB guest pages with 4 kiB host pages with this KVM implementation</nowiki><br />
<br />
There is an easy workaround for this. If running QEMU directly, add the argument <code>-machine pseries,cap-hpt-max-page-size=4096</code>. If running QEMU via libvirt, add the following section to the guest's libvirt XML (via <code>virsh edit [guest name]</code> or the XML tab in virt-manager):<br />
<nowiki><br />
<features><br />
<hpt><br />
<maxpagesize unit='KiB'>4</maxpagesize><br />
</hpt><br />
</features></nowiki><br />
<br />
==Further Information==<br />
<br />
* [https://docs.voidlinux-ppc.org/configuration/virtualization.html VoidLinux PPC documentation on Virtualization]<br />
* [https://wiki.qemu.org/Documentation/Platforms/POWER QEMU documentation about POWER guests]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=Virtualization&diff=3582Virtualization2021-11-08T18:31:22Z<p>Chatcannon: Tip for running 64k guests on a 4k host</p>
<hr />
<div><br />
<br />
===Running 64k guests on 4k hosts===<br />
When trying to start a VM on a host running with 4k pages, you might see the following error message:<br />
<br />
<nowiki>qemu-system-ppc64: Can't support 64 kiB guest pages with 4 kiB host pages with this KVM implementation</nowiki><br />
<br />
There is an easy workaround for this. If running QEMU directly, add the argument <code>-machine pseries,cap-hpt-max-page-size=4096</code>. If running QEMU via libvirt, add the following section to the guest's libvirt XML (via <code>virsh edit [guest name]</code> or the XML tab in virt-manager):<br />
<nowiki><br />
<features><br />
<hpt><br />
<maxpagesize unit='KiB'>4</maxpagesize><br />
</hpt><br />
</features></nowiki></div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=Troubleshooting/GPU&diff=3581Troubleshooting/GPU2021-11-08T18:19:52Z<p>Chatcannon: /* Step 2: Create Xorg Configuration Snippet */ Configuration using OutputClass</p>
<hr />
<div>[[Category:Troubleshooting]]<br />
<br />
== Background ==<br />
<br />
Because OpenPOWER systems do not have a legacy graphics interface to fall back to, and as a result rely heavily on the running operating system and its drivers to handle display tasks, a few rough edges are exposed. This page attempts to document the current status of these rough edges and suggested workarounds pending actual fixes.<br />
<br />
== Common Issues ==<br />
<br />
=== Bootloader does not show up on monitor(s) attached to a discrete GPU ===<br />
<br />
Most modern discrete GPUs require firmware. As Talos™ II is aimed at a security-conscious audience, we do not currently include GPU firmware in the production firmware images. Instructions are available in the [[:File:T2P9D01 users guide version 1 0.pdf|Users Guide]] to add firmware for your GPU to the PNOR if needed. Note that any added firmware may be able to access and modify data associated with the affected device(s); we strongly recommend you perform a security risk analysis before loading any firmware, and select open firmware where/if it is available.<br />
<br />
If you are using a GPU that does not require firmware, or have already added any needed firmware files to the host PNOR, please ensure that the on-board VGA disable jumper (J10109) is capped. The bootloader output will preferentially show up on the on-board VGA port if it remains enabled.<br />
<br />
Alternatively, you either use a serial console or VGA monitor / adapter to interact with the bootloader.<br />
<br />
=== My AMD GPU works in petitboot but not the subsequent Linux OS ===<br />
<br />
Older versions of the amdgpu driver (Linux 4.15 and below) have a bug where the connected outputs will not re-initialize after a kexec() while the driver is loaded. Kernel 4.16 and above does not appear to have this problem.<br />
<br />
If you need to use kernel 4.15 or below, you can work around this issue by either:<br />
* Enabling and using the VGA video output to access the bootloader (petitboot) -or-<br />
* using a serial connection to control petitboot, and running the following commands prior to selecting an operating system via the petitboot menu:<br />
<nowiki>echo 0 > /sys/class/vtconsole/vtcon1/bind<br />
rmmod amdgpu</nowiki><br />
<br />
=== I want Petitboot via AST but the subsequent Linux OS console on a discrete GPU ===<br />
<br />
If you don't want to put GPU firmware in the PNOR but still want Linux tty on the discrete graphics, you'll find that you'll always get output on the AST first no matter what. Blacklisting the <code>ast</code> module from loading is not sufficient on its own, you will need two kernel boot arguments:<br />
<br />
<nowiki>modprobe.blacklist=ast video=offb:off</nowiki><br />
<br />
For example on Ubuntu, this can be accomplished by changing <code>GRUB_CMDLINE_LINUX</code> in <code>/etc/default/grub</code> accordingly, like<br />
<br />
<nowiki>GRUB_CMDLINE_LINUX="modprobe.blacklist=ast video=offb:off"</nowiki><br />
<br />
and then running <code>update-grub</code>.<br />
<br />
===== Tell GDM to ignore a GPU =====<br />
<br />
An alternative is to tell gdm (other login manager likely will also work) to ignore the ASPEED first you need to know the PCI bus information for the ASPEED GPU:<br />
<br />
<nowiki>root@talos:~# lspci | grep VGA<br />
0000:01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] (rev c7)<br />
0005:02:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 41)</nowiki><br />
<br />
Here we want to ignore the ASPEED GPU (you can use same trick if you want to ignore other GPU for compute for instance) create a file in /etc/udev/rules.d/ (72-gdm-ignore-gpus.rules for instance) with the following content:<br />
<br />
<nowiki>TAG-="seat", ENV{ID_FOR_SEAT}=="drm-pci-0005_02_00_0"<br />
TAG-="seat", ENV{ID_FOR_SEAT}=="graphics-pci-0005_02_00_0"</nowiki><br />
<br />
Don't forget to use proper PCI bus information (here 0005_00_00_0 from lspci)<br />
<br />
With this method you can keep the ASPEED GPU for a console GPU while having a graphic session on discret GPU. It can also be use if you want to ignore a GPU for graphic for instance to dedicate a GPU to GPU compute.<br />
<br />
=== Xorg will not start / crashes when a discrete GPU is installed ===<br />
<br />
Installing more than one GPU into an OpenPOWER system (for instance, when adding a discrete GPU) exposes all GPUs directly to the operating system -- there is no concept of a "primary" GPU like there is on x86. Xorg does not handle this gracefully, tending to crash during autoconfiguration. [https://bugs.freedesktop.org/show_bug.cgi?id=94166 At least one bug report has been filed] but fixing the root cause of this issue (incorrect Xorg drivers binding to underlying DRM devices) does not seem to be an Xorg priority. Furthermore, Xorg does not properly handle domains during autoconfiguration per [https://bugs.freedesktop.org/show_bug.cgi?id=98524#c2 another bug report on a similar issue]. Community effort in getting proper fixes into Xorg would be very useful, as the Xorg developers may want to see that more than one or two systems are impacted by these bugs before working on resolving them.<br />
<br />
Two workarounds are available:<br />
<br />
==== Workaround 1: Disable on-board VGA====<br />
Disable the on-board VGA output via the VGA disable jumper, J10109. See the [[:File:T2P9D01 users guide version 1 0.pdf|Users Guide]] for additional information.<br />
<br />
==== Workaround 2: Select desired GPU at runtime ====<br />
<br />
The workaround to keep both devices active, or to retain the ability to switch in the active operating system, is fairly simple, and consists of explicitly assigning Xorg drivers for each installed GPU. For this example we'll show how to fix Xorg on Debian with an AMD WX7100 discrete GPU installed.<br />
<br />
===== Step 1: Locate Bus Numbers =====<br />
<nowiki>root@talos:~# lspci | grep VGA<br />
0000:01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon Pro WX 7100]<br />
0005:02:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 41)</nowiki><br />
<br />
Note the numbers to the left of the "VGA compatible controller" string. Each of these numbers is the PCI d:B:D.F<ref group="note">PCI Domain:Bus:Device.Function</ref> number of the GPU, and is unique to the slot(s) you have your GPU(s) installed in. As a result of this slot dependence, bus IDs may differ from those shown in this example; always use your bus IDs when following the steps below. This slot dependence means that if you move your GPU to a different slot you will need to update the bus ID associated with that GPU.<br />
<br />
===== Step 2: Create Xorg Configuration Snippet =====<br />
<nowiki>root@talos:~# mkdir -p /etc/X11/xorg.conf.d</nowiki><br />
<br />
Create and open <code>/etc/X11/xorg.conf.d/21-gpu-driver.conf</code> for editing, then adjust the following template with your GPU information. Pay close attention to the BusID and Driver fields, as they must match your installed GPU(s). Note that Xorg uses decimal numbering, not hexadecimal like <code>lspci</code>, so you will need to convert the numbers within the colons of the lspci output to decimal in order to constrict a valid Xorg BusID. Furthermore, xorg doesn't use leading zeroes like <code>lspci</code> does; these must be stripped off when assembling the Xorg BusID. Finally, Xorg expects to see a BusID assembled as "PCI:B@d:D:F" (note Bus and Domain are swapped), and should not be assembled not using the format shown by <code>lspci</code>.<br />
<br />
<nowiki># AST2500<br />
Section "Device"<br />
Identifier "GPU0"<br />
Driver "modesetting"<br />
BusID "PCI:2@5:0:0"<br />
VendorName "ASpeed Corporation"<br />
EndSection<br />
<br />
# WX7100<br />
Section "Device"<br />
Identifier "GPU1"<br />
Driver "modesetting" # or amdgpu if you have xf86-video-amdgpu installed<br />
BusID "PCI:1@0:0:0"<br />
VendorName "AMD Corporation"<br />
EndSection<br />
<br />
# this is absolutely necessary, it tells xorg which GPU to use for the screen<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "GPU1"<br />
EndSection</nowiki><br />
<br />
Save and exit the configuration snippet file, then restart Xorg. Your GPUs should now function as intended. If Xorg still does not start, make sure that the appropriate kernel driver (such as <code>amdgpu</code> for the example above, keep in mind that the Xorg driver and the kernel driver are separate and distinct) has been loaded:<br />
<br />
<nowiki>root@talos:~# modprobe amdgpu</nowiki><br />
<br />
You can use the generic modesetting Xorg driver for AMD GPUs, or you can use amdgpu from xf86-video-amdgpu. The generic modesetting driver has been reported to work perfectly fine on a Talos with various GPUs, so there is likely no practical reason to use the driver-specific DDX.<br />
<br />
===== Alternative Xorg configuration using OutputClass and PrimaryGPU =====<br />
<br />
As an alternative to specifying the association between Screen and Device, you can use an <code>OutputClass</code> section to tell X that the discrete GPU should be used as the primary GPU.<br />
<nowiki>Section "OutputClass"<br />
Identifier "AMD discrete GPU"<br />
MatchDriver "amdgpu"<br />
Option "PrimaryGPU" "yes"<br />
EndSection</nowiki><br />
<br />
===== Step 3 (optional): Disable Integrated Video =====<br />
<br />
To disable the ASpeed VGA in the booted OS completely, you can use the <code>modprobe.blacklist=ast</code> approach on kernel command line, refer to the "I want Petitboot via AST but the subsequent Linux OS console on a discrete GPU" section above for more information. This method is universal/works on all distributions. The ASpeed VGA will still show up in <code>lspci</code> afterwards, which is normal, as you haven't disabled the hardware, just the driver.<br />
<br />
With this done, it should be possible to remove the device section in the X.Org configuration file for the onboard VGA, but you can also just leave it there if you want, regardless of whether the driver is loaded or not.<br />
<br />
There are alternative ways to blacklist the <code>ast</code> kernel driver. For example on Debian based systems, create a new file <code>/etc/modprobe.d/ast-blacklist.conf</code> and place the following line inside the new file:<br />
<br />
<nowiki>blacklist ast</nowiki><br />
<br />
You may need to reboot if the <code>ast</code> DRM driver has already loaded. Alternatively, you may try to unbind and unload the <code>ast</code> driver as follows (assuming the <code>ast</code> driver is bound to vtcon0):<br />
<br />
<nowiki>root@talos:~# echo 0 > /sys/class/vtconsole/vtcon0/bind<br />
root@talos:~# rmmod ast</nowiki><br />
<br />
=== Monitor not detected in kernel 4.17+ ===<br />
Petitboot shows up fine, but there is no output for the host OS. It has been reported as [https://bugs.freedesktop.org/show_bug.cgi?id=107049 bug 107049], the workaround is to append <code>amdgpu.dc=0</code> to the kernel parameters. This is often associated with a host dmesg trace of<br />
<nowiki>[drm] Cannot find any crtc or sizes</nowiki><br />
<br />
EDIT 2019-05-02: Seems the <code>dc=0</code> workaround is not required any more, tested with 5.1-rc7<br />
<br />
=== Xorg crashes or is laggy with the AST VGA GPU ===<br />
<br />
Xorg seems to enable GLAMOR by default on many operating systems (such as Debian Buster). GLAMOR is a translation layer that converts 2D graphics operations to 3D graphics operations. This makes sense when 3D GPU acceleration is available, but when using a simple unaccelerated 2D GPU like the AST VGA GPU, the result is that 2D operations get converted to 3D operations by GLAMOR and are then converted back to 2D by llvmpipe, which introduces significant overhead.<br />
<br />
In addition, on Debian Buster, GLAMOR has been observed to crash when used in conjunction with llvmpipe.<br />
<br />
You can disable GLAMOR by saving the following text file as <code>/usr/share/X11/xorg.conf.d/00-noglamoregl.conf</code>:<br />
<br />
Section "Device"<br />
Identifier "nogpu"<br />
Driver "modesetting"<br />
Option "Accelmethod" "none"<br />
EndSection<br />
<br />
Section "Module"<br />
Disable "glamoregl"<br />
EndSection<br />
<br />
This bug was probably fixed by [https://cgit.freedesktop.org/xorg/xserver/commit/?h=server-1.20-branch&id=1e3c5d614ee33d9eac1d2cf6366feeb8341fc0f4 commit 1e3c5d614ee33d9eac1d2cf6366feeb8341fc0f4] in upstream Xorg; it is unknown how quickly the fix will make its way to GNU/Linux distributions.<br />
<br />
=== KDE is laggy with the AST VGA GPU ===<br />
<br />
KDE's default compositor uses OpenGL. This makes sense when 3D GPU acceleration is available, but when using a simple unaccelerated 2D GPU like the AST VGA GPU, the result is that 2D operations get converted to 3D operations by KDE's compositor and are then converted back to 2D by llvmpipe, which introduces significant overhead.<br />
<br />
To fix this, go to <code>System Settings</code> → <code>Hardware</code> → <code>Display and Monitor</code> → <code>Compositor</code>, and select <code>XRender</code> as the <code>Rendering backend</code>. You'll probably also want to select <code>Smooth (slower)</code> as the <code>Scale method</code> (it's still much faster than OpenGL, and it looks quite a bit better).<br />
<br />
=== Wayland (GNOME) freeze after boot with the AST VGA GPU ===<br />
<br />
If you get a grey screen with the mouse pointer frozen, you have to boot the rescue installer (from the install media). Open the file <code>/etc/gdm/custom.conf</code> and uncomment <code>WaylandEnable=false</code>.<br />
<br />
=== Display stuck at default low resolution with AST HDMI GPU ===<br />
<br />
As of 05/24/2019 upstream Linux kernels do not have driver support for the [[IT66121FN|IT66121FN HDMI transceiver]]. This is being actively worked by Raptor Computing Systems and the larger ppc64el community. Until support is added, you will need to force the correct resolution in Xorg. The general process for discovering bus IDs etc. is detailed above in the AMD GPU section; you will need to extend the result with custom modelines as shown below:<br />
<br />
<nowiki># AST2500<br />
Section "Device"<br />
Identifier "GPU0"<br />
Driver "modesetting"<br />
BusID "PCI:2@5:0:0"<br />
VendorName "ASpeed Corporation"<br />
EndSection<br />
<br />
# configure as appropriate for your monitor -- a standard 1080p screen is assumed below<br />
Section "Monitor"<br />
Identifier "Monitor0"<br />
# Comment the following two lines with a leading # if you want to enable the 1920 x 1200 resolution too<br />
HorizSync 30.0-70.0<br />
VertRefresh 50.0-70.0<br />
Modeline "1920x1080" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync<br />
# 1920x1200 59.88 Hz (CVT 2.30MA) hsync: 74.56 kHz; pclk: 193.25 MHz<br />
Modeline "1920x1200" 193.25 1920 2056 2256 2592 1200 1203 1209 1245 -hsync +vsync<br />
EndSection<br />
<br />
# this is absolutely necessary, it tells xorg which GPU to use for the screen<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Monitor "Monitor0"<br />
Device "GPU0"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Depth 24<br />
# Prefers by default the full HD resolution but you can switch to 1920 x 1200 in your Linux desktop then.<br />
# If you swap the two modeline identifier below 1920 x 1200 will become the preferred resolution.<br />
# You also have to comment the HorizSync and VertRefresh lines above since they limit your monitor to full HD!<br />
Modes "1920x1080" "1920x1200"<br />
EndSubSection<br />
EndSection</nowiki><br />
<br />
'''Note:''' You can get a new Modeline string in the console with the <tt>cvt</tt> command, eg. <tt>cvt 1920 1200 60</tt> for a resolution of 1920 x 1200 with 60 Hz.<br />
<br />
=== AMDGPU driver crashes after firmware update ===<br />
The GPU only allows loading one firmware after an ASIC reset, so the firmware used by the skiroot kernel and the host kernel must be the same. See FreeDesktop.org bug [https://bugs.freedesktop.org/show_bug.cgi?id=108585 108585] for more details.<br />
<br />
Note: This is theoretically fixed in kernel 5.1, see [https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/gpu/drm/amd/amdgpu/amdgpu.h?h=linux-5.1.y&id=444018893abfde1df86be9d4be3e0c84832397dd this commit]. Needs confirmation.<br />
<br />
=== Boots to a blank screen & blinking text cursor after blacklisting AST (Debian) ===<br />
<br />
There appears to be an oversight in Debian wherein when the ''firmware-amd-graphics'' package is installed the initramfs is not updated automatically to include the amdgpu module and the GPU firmware.<br />
<br />
* Make sure amdgpu is loaded in your initramfs. For Debian/Ubuntu, add amdgpu to initramfs modules and run update-initramfs.<br />
<br />
<nowiki>vi /etc/initramfs-tools/modules</nowiki><br />
<br />
(and append "amdgpu" to the last line) then run:<br />
<br />
<nowiki>update-initramfs -u</nowiki><br />
<br />
* Append "console=tty0" to your kernel boot parameters. On ppc64 distribution kernels particularly the default is "console-hvc0".<br />
<br />
<nowiki>vi /etc/default/grub</nowiki><br />
<br />
(and append "console=tty0" to GRUB_CMDLINE_LINUX) then run:<br />
<br />
<nowiki>update-grub</nowiki><br />
<br />
Your whole GRUB argument line should look like: GRUB_CMDLINE_LINUX="modprobe.blacklist=ast video=offb:off console=tty0". Ascertain that the J10109 jumper is set to disable.<br />
<br />
== Notes ==<br />
<br />
<references group="note"/><br />
[[Category:Guides]]<br />
<br />
== See also ==<br />
* [[Add GPU Firmware To BOOTKERNFW]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=Troubleshooting/GPU&diff=3580Troubleshooting/GPU2021-11-08T18:13:32Z<p>Chatcannon: /* Xorg will not start / crashes when a discrete GPU is installed */ Add -p to mkdir</p>
<hr />
<div>[[Category:Troubleshooting]]<br />
<br />
== Background ==<br />
<br />
Because OpenPOWER systems do not have a legacy graphics interface to fall back to, and as a result rely heavily on the running operating system and its drivers to handle display tasks, a few rough edges are exposed. This page attempts to document the current status of these rough edges and suggested workarounds pending actual fixes.<br />
<br />
== Common Issues ==<br />
<br />
=== Bootloader does not show up on monitor(s) attached to a discrete GPU ===<br />
<br />
Most modern discrete GPUs require firmware. As Talos™ II is aimed at a security-conscious audience, we do not currently include GPU firmware in the production firmware images. Instructions are available in the [[:File:T2P9D01 users guide version 1 0.pdf|Users Guide]] to add firmware for your GPU to the PNOR if needed. Note that any added firmware may be able to access and modify data associated with the affected device(s); we strongly recommend you perform a security risk analysis before loading any firmware, and select open firmware where/if it is available.<br />
<br />
If you are using a GPU that does not require firmware, or have already added any needed firmware files to the host PNOR, please ensure that the on-board VGA disable jumper (J10109) is capped. The bootloader output will preferentially show up on the on-board VGA port if it remains enabled.<br />
<br />
Alternatively, you either use a serial console or VGA monitor / adapter to interact with the bootloader.<br />
<br />
=== My AMD GPU works in petitboot but not the subsequent Linux OS ===<br />
<br />
Older versions of the amdgpu driver (Linux 4.15 and below) have a bug where the connected outputs will not re-initialize after a kexec() while the driver is loaded. Kernel 4.16 and above does not appear to have this problem.<br />
<br />
If you need to use kernel 4.15 or below, you can work around this issue by either:<br />
* Enabling and using the VGA video output to access the bootloader (petitboot) -or-<br />
* using a serial connection to control petitboot, and running the following commands prior to selecting an operating system via the petitboot menu:<br />
<nowiki>echo 0 > /sys/class/vtconsole/vtcon1/bind<br />
rmmod amdgpu</nowiki><br />
<br />
=== I want Petitboot via AST but the subsequent Linux OS console on a discrete GPU ===<br />
<br />
If you don't want to put GPU firmware in the PNOR but still want Linux tty on the discrete graphics, you'll find that you'll always get output on the AST first no matter what. Blacklisting the <code>ast</code> module from loading is not sufficient on its own, you will need two kernel boot arguments:<br />
<br />
<nowiki>modprobe.blacklist=ast video=offb:off</nowiki><br />
<br />
For example on Ubuntu, this can be accomplished by changing <code>GRUB_CMDLINE_LINUX</code> in <code>/etc/default/grub</code> accordingly, like<br />
<br />
<nowiki>GRUB_CMDLINE_LINUX="modprobe.blacklist=ast video=offb:off"</nowiki><br />
<br />
and then running <code>update-grub</code>.<br />
<br />
===== Tell GDM to ignore a GPU =====<br />
<br />
An alternative is to tell gdm (other login manager likely will also work) to ignore the ASPEED first you need to know the PCI bus information for the ASPEED GPU:<br />
<br />
<nowiki>root@talos:~# lspci | grep VGA<br />
0000:01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] (rev c7)<br />
0005:02:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 41)</nowiki><br />
<br />
Here we want to ignore the ASPEED GPU (you can use same trick if you want to ignore other GPU for compute for instance) create a file in /etc/udev/rules.d/ (72-gdm-ignore-gpus.rules for instance) with the following content:<br />
<br />
<nowiki>TAG-="seat", ENV{ID_FOR_SEAT}=="drm-pci-0005_02_00_0"<br />
TAG-="seat", ENV{ID_FOR_SEAT}=="graphics-pci-0005_02_00_0"</nowiki><br />
<br />
Don't forget to use proper PCI bus information (here 0005_00_00_0 from lspci)<br />
<br />
With this method you can keep the ASPEED GPU for a console GPU while having a graphic session on discret GPU. It can also be use if you want to ignore a GPU for graphic for instance to dedicate a GPU to GPU compute.<br />
<br />
=== Xorg will not start / crashes when a discrete GPU is installed ===<br />
<br />
Installing more than one GPU into an OpenPOWER system (for instance, when adding a discrete GPU) exposes all GPUs directly to the operating system -- there is no concept of a "primary" GPU like there is on x86. Xorg does not handle this gracefully, tending to crash during autoconfiguration. [https://bugs.freedesktop.org/show_bug.cgi?id=94166 At least one bug report has been filed] but fixing the root cause of this issue (incorrect Xorg drivers binding to underlying DRM devices) does not seem to be an Xorg priority. Furthermore, Xorg does not properly handle domains during autoconfiguration per [https://bugs.freedesktop.org/show_bug.cgi?id=98524#c2 another bug report on a similar issue]. Community effort in getting proper fixes into Xorg would be very useful, as the Xorg developers may want to see that more than one or two systems are impacted by these bugs before working on resolving them.<br />
<br />
Two workarounds are available:<br />
<br />
==== Workaround 1: Disable on-board VGA====<br />
Disable the on-board VGA output via the VGA disable jumper, J10109. See the [[:File:T2P9D01 users guide version 1 0.pdf|Users Guide]] for additional information.<br />
<br />
==== Workaround 2: Select desired GPU at runtime ====<br />
<br />
The workaround to keep both devices active, or to retain the ability to switch in the active operating system, is fairly simple, and consists of explicitly assigning Xorg drivers for each installed GPU. For this example we'll show how to fix Xorg on Debian with an AMD WX7100 discrete GPU installed.<br />
<br />
===== Step 1: Locate Bus Numbers =====<br />
<nowiki>root@talos:~# lspci | grep VGA<br />
0000:01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon Pro WX 7100]<br />
0005:02:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 41)</nowiki><br />
<br />
Note the numbers to the left of the "VGA compatible controller" string. Each of these numbers is the PCI d:B:D.F<ref group="note">PCI Domain:Bus:Device.Function</ref> number of the GPU, and is unique to the slot(s) you have your GPU(s) installed in. As a result of this slot dependence, bus IDs may differ from those shown in this example; always use your bus IDs when following the steps below. This slot dependence means that if you move your GPU to a different slot you will need to update the bus ID associated with that GPU.<br />
<br />
===== Step 2: Create Xorg Configuration Snippet =====<br />
<nowiki>root@talos:~# mkdir -p /etc/X11/xorg.conf.d</nowiki><br />
<br />
Create and open <code>/etc/X11/xorg.conf.d/21-gpu-driver.conf</code> for editing, then adjust the following template with your GPU information. Pay close attention to the BusID and Driver fields, as they must match your installed GPU(s). Note that Xorg uses decimal numbering, not hexadecimal like <code>lspci</code>, so you will need to convert the numbers within the colons of the lspci output to decimal in order to constrict a valid Xorg BusID. Furthermore, xorg doesn't use leading zeroes like <code>lspci</code> does; these must be stripped off when assembling the Xorg BusID. Finally, Xorg expects to see a BusID assembled as "PCI:B@d:D:F" (note Bus and Domain are swapped), and should not be assembled not using the format shown by <code>lspci</code>.<br />
<br />
<nowiki># AST2500<br />
Section "Device"<br />
Identifier "GPU0"<br />
Driver "modesetting"<br />
BusID "PCI:2@5:0:0"<br />
VendorName "ASpeed Corporation"<br />
EndSection<br />
<br />
# WX7100<br />
Section "Device"<br />
Identifier "GPU1"<br />
Driver "modesetting" # or amdgpu if you have xf86-video-amdgpu installed<br />
BusID "PCI:1@0:0:0"<br />
VendorName "AMD Corporation"<br />
EndSection<br />
<br />
# this is absolutely necessary, it tells xorg which GPU to use for the screen<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "GPU1"<br />
EndSection</nowiki><br />
<br />
Save and exit the configuration snippet file, then restart Xorg. Your GPUs should now function as intended. If Xorg still does not start, make sure that the appropriate kernel driver (such as <code>amdgpu</code> for the example above, keep in mind that the Xorg driver and the kernel driver are separate and distinct) has been loaded:<br />
<br />
<nowiki>root@talos:~# modprobe amdgpu</nowiki><br />
<br />
You can use the generic modesetting Xorg driver for AMD GPUs, or you can use amdgpu from xf86-video-amdgpu. The generic modesetting driver has been reported to work perfectly fine on a Talos with various GPUs, so there is likely no practical reason to use the driver-specific DDX.<br />
<br />
===== Step 3 (optional): Disable Integrated Video =====<br />
<br />
To disable the ASpeed VGA in the booted OS completely, you can use the <code>modprobe.blacklist=ast</code> approach on kernel command line, refer to the "I want Petitboot via AST but the subsequent Linux OS console on a discrete GPU" section above for more information. This method is universal/works on all distributions. The ASpeed VGA will still show up in <code>lspci</code> afterwards, which is normal, as you haven't disabled the hardware, just the driver.<br />
<br />
With this done, it should be possible to remove the device section in the X.Org configuration file for the onboard VGA, but you can also just leave it there if you want, regardless of whether the driver is loaded or not.<br />
<br />
There are alternative ways to blacklist the <code>ast</code> kernel driver. For example on Debian based systems, create a new file <code>/etc/modprobe.d/ast-blacklist.conf</code> and place the following line inside the new file:<br />
<br />
<nowiki>blacklist ast</nowiki><br />
<br />
You may need to reboot if the <code>ast</code> DRM driver has already loaded. Alternatively, you may try to unbind and unload the <code>ast</code> driver as follows (assuming the <code>ast</code> driver is bound to vtcon0):<br />
<br />
<nowiki>root@talos:~# echo 0 > /sys/class/vtconsole/vtcon0/bind<br />
root@talos:~# rmmod ast</nowiki><br />
<br />
=== Monitor not detected in kernel 4.17+ ===<br />
Petitboot shows up fine, but there is no output for the host OS. It has been reported as [https://bugs.freedesktop.org/show_bug.cgi?id=107049 bug 107049], the workaround is to append <code>amdgpu.dc=0</code> to the kernel parameters. This is often associated with a host dmesg trace of<br />
<nowiki>[drm] Cannot find any crtc or sizes</nowiki><br />
<br />
EDIT 2019-05-02: Seems the <code>dc=0</code> workaround is not required any more, tested with 5.1-rc7<br />
<br />
=== Xorg crashes or is laggy with the AST VGA GPU ===<br />
<br />
Xorg seems to enable GLAMOR by default on many operating systems (such as Debian Buster). GLAMOR is a translation layer that converts 2D graphics operations to 3D graphics operations. This makes sense when 3D GPU acceleration is available, but when using a simple unaccelerated 2D GPU like the AST VGA GPU, the result is that 2D operations get converted to 3D operations by GLAMOR and are then converted back to 2D by llvmpipe, which introduces significant overhead.<br />
<br />
In addition, on Debian Buster, GLAMOR has been observed to crash when used in conjunction with llvmpipe.<br />
<br />
You can disable GLAMOR by saving the following text file as <code>/usr/share/X11/xorg.conf.d/00-noglamoregl.conf</code>:<br />
<br />
Section "Device"<br />
Identifier "nogpu"<br />
Driver "modesetting"<br />
Option "Accelmethod" "none"<br />
EndSection<br />
<br />
Section "Module"<br />
Disable "glamoregl"<br />
EndSection<br />
<br />
This bug was probably fixed by [https://cgit.freedesktop.org/xorg/xserver/commit/?h=server-1.20-branch&id=1e3c5d614ee33d9eac1d2cf6366feeb8341fc0f4 commit 1e3c5d614ee33d9eac1d2cf6366feeb8341fc0f4] in upstream Xorg; it is unknown how quickly the fix will make its way to GNU/Linux distributions.<br />
<br />
=== KDE is laggy with the AST VGA GPU ===<br />
<br />
KDE's default compositor uses OpenGL. This makes sense when 3D GPU acceleration is available, but when using a simple unaccelerated 2D GPU like the AST VGA GPU, the result is that 2D operations get converted to 3D operations by KDE's compositor and are then converted back to 2D by llvmpipe, which introduces significant overhead.<br />
<br />
To fix this, go to <code>System Settings</code> → <code>Hardware</code> → <code>Display and Monitor</code> → <code>Compositor</code>, and select <code>XRender</code> as the <code>Rendering backend</code>. You'll probably also want to select <code>Smooth (slower)</code> as the <code>Scale method</code> (it's still much faster than OpenGL, and it looks quite a bit better).<br />
<br />
=== Wayland (GNOME) freeze after boot with the AST VGA GPU ===<br />
<br />
If you get a grey screen with the mouse pointer frozen, you have to boot the rescue installer (from the install media). Open the file <code>/etc/gdm/custom.conf</code> and uncomment <code>WaylandEnable=false</code>.<br />
<br />
=== Display stuck at default low resolution with AST HDMI GPU ===<br />
<br />
As of 05/24/2019 upstream Linux kernels do not have driver support for the [[IT66121FN|IT66121FN HDMI transceiver]]. This is being actively worked by Raptor Computing Systems and the larger ppc64el community. Until support is added, you will need to force the correct resolution in Xorg. The general process for discovering bus IDs etc. is detailed above in the AMD GPU section; you will need to extend the result with custom modelines as shown below:<br />
<br />
<nowiki># AST2500<br />
Section "Device"<br />
Identifier "GPU0"<br />
Driver "modesetting"<br />
BusID "PCI:2@5:0:0"<br />
VendorName "ASpeed Corporation"<br />
EndSection<br />
<br />
# configure as appropriate for your monitor -- a standard 1080p screen is assumed below<br />
Section "Monitor"<br />
Identifier "Monitor0"<br />
# Comment the following two lines with a leading # if you want to enable the 1920 x 1200 resolution too<br />
HorizSync 30.0-70.0<br />
VertRefresh 50.0-70.0<br />
Modeline "1920x1080" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync<br />
# 1920x1200 59.88 Hz (CVT 2.30MA) hsync: 74.56 kHz; pclk: 193.25 MHz<br />
Modeline "1920x1200" 193.25 1920 2056 2256 2592 1200 1203 1209 1245 -hsync +vsync<br />
EndSection<br />
<br />
# this is absolutely necessary, it tells xorg which GPU to use for the screen<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Monitor "Monitor0"<br />
Device "GPU0"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Depth 24<br />
# Prefers by default the full HD resolution but you can switch to 1920 x 1200 in your Linux desktop then.<br />
# If you swap the two modeline identifier below 1920 x 1200 will become the preferred resolution.<br />
# You also have to comment the HorizSync and VertRefresh lines above since they limit your monitor to full HD!<br />
Modes "1920x1080" "1920x1200"<br />
EndSubSection<br />
EndSection</nowiki><br />
<br />
'''Note:''' You can get a new Modeline string in the console with the <tt>cvt</tt> command, eg. <tt>cvt 1920 1200 60</tt> for a resolution of 1920 x 1200 with 60 Hz.<br />
<br />
=== AMDGPU driver crashes after firmware update ===<br />
The GPU only allows loading one firmware after an ASIC reset, so the firmware used by the skiroot kernel and the host kernel must be the same. See FreeDesktop.org bug [https://bugs.freedesktop.org/show_bug.cgi?id=108585 108585] for more details.<br />
<br />
Note: This is theoretically fixed in kernel 5.1, see [https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/gpu/drm/amd/amdgpu/amdgpu.h?h=linux-5.1.y&id=444018893abfde1df86be9d4be3e0c84832397dd this commit]. Needs confirmation.<br />
<br />
=== Boots to a blank screen & blinking text cursor after blacklisting AST (Debian) ===<br />
<br />
There appears to be an oversight in Debian wherein when the ''firmware-amd-graphics'' package is installed the initramfs is not updated automatically to include the amdgpu module and the GPU firmware.<br />
<br />
* Make sure amdgpu is loaded in your initramfs. For Debian/Ubuntu, add amdgpu to initramfs modules and run update-initramfs.<br />
<br />
<nowiki>vi /etc/initramfs-tools/modules</nowiki><br />
<br />
(and append "amdgpu" to the last line) then run:<br />
<br />
<nowiki>update-initramfs -u</nowiki><br />
<br />
* Append "console=tty0" to your kernel boot parameters. On ppc64 distribution kernels particularly the default is "console-hvc0".<br />
<br />
<nowiki>vi /etc/default/grub</nowiki><br />
<br />
(and append "console=tty0" to GRUB_CMDLINE_LINUX) then run:<br />
<br />
<nowiki>update-grub</nowiki><br />
<br />
Your whole GRUB argument line should look like: GRUB_CMDLINE_LINUX="modprobe.blacklist=ast video=offb:off console=tty0". Ascertain that the J10109 jumper is set to disable.<br />
<br />
== Notes ==<br />
<br />
<references group="note"/><br />
[[Category:Guides]]<br />
<br />
== See also ==<br />
* [[Add GPU Firmware To BOOTKERNFW]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=POWER9_Hardware_Compatibility_List/PCIe_Devices&diff=3579POWER9 Hardware Compatibility List/PCIe Devices2021-11-08T18:11:46Z<p>Chatcannon: /* AMD */ Bug with multiple screens in AMD W5500 Pro</p>
<hr />
<div><!-- When adding devices, please list devices in alphabetical order within each category. --><br />
==Compatibility rules==<br />
In general, any PCIe device will work providing that an open source driver is available for your operating system. There are some exceptions:<br />
<br />
* '''Hardware bugs.''' POWER does not permit errant DMA accesses. If a device tries to access areas of host memory which it is not permitted to access, the device is shut down immediately. This is dissimilar to x86 platforms, which simply silently ignore such attempts. Some badly designed I/O devices have bugs causing them to attempt DMA accesses to random areas of host memory; these devices are unlikely to function correctly on POWER systems unless a workaround is available. Note that devices in full bypass mode may legally have access to all host memory, to avoid this and test driver IOMMU setup pass "iommu=nobypass" to the kernel at startup.<br />
* '''I/O space.''' Starting with [[POWER9]], access to the legacy PCI I/O space is no longer supported; devices or drivers which rely on this will not function. The legacy I/O space has been deprecated for as long as PCIe has existed; generally this will only affect very old PCIe devices which use PCIe to PCI bridge chips to attach old PCI devices to the bus, or genuine legacy PCI devices attached via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]]. A small subset of these devices may require legacy I/O space support.<br />
* '''Incomplete memory addressing support.''' The PCIe architecture specifies a 64-bit address space. Some I/O devices try to economize on this by only implementing e.g. 40 bits for their addressing, rendering them incapable of addressing host memory which lies above address 2<sup>40</sup>. (Firmware patches to work around this are pending.)<br />
* '''Bifurcation limits.''' Arbitrary PCIe lane bifurcation is not supported. Devices which split a PCIe slot into multiple connectors (for example, PCIe to M.2 adaptors) will not work unless they have a PCIe switch chip, although the first connector will generally work.<br />
<br />
==Troubleshooting==<br />
<br />
If a PCIe device is in a broken state due to being attached/detached from a VM, or due to a transition from Petitboot to the main OS, you may be able to fix it by issuing a hot reset. A script for performing a PCIe hot reset is at [[File:Pcie_hot_reset.sh]]. For background on PCIe resets and how a hot reset differs from the function-level reset performed by <code>echo 1 > /sys/bus/pci/devices/$dev/reset</code>, see [https://unix.stackexchange.com/a/474378 Alex Forencich's explanation on Stack Exchange].<br />
<br />
==NICs==<br />
===Working===<br />
* 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
* Broadcom [[BCM5719]]<br />
* Chelsio T520-SO-CR (dual port 10Gb/s, cxgb4 driver)<br />
* Chelsio T6225-SO-CR<br />
* DEC FDDIcontroller/PCI (DEFPA) PCI FDDI (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
** Works automatically as from Linux kernel version 5.13.<br />
** Works with Linux kernel versions before 5.13 as long as the defxx driver has been compiled with the CONFIG_DEFXX_MMIO option, which may not be the case with standard distribution kernels as the option was not on by default for historical reasons.<br>''This is because the PFI ASIC used as the PCI interface with the DEC FDDIcontroller/PCI adapter supports both port I/O and MMIO for main ASIC's (PDQ) CSR access, however [[POWER9_Hardware_Compatibility_List/PCIe_Devices#Compatibility_rules|as noted above]] the Power Systems Host Bridge 4 (PHB4) PCIe root complex used with POWER9 microprocessors does not support I/O Read or I/O Write commands required for port I/O.''<br />
* Mellanox ConnectX-6 EN 200Gb/s Adapter Card ''(supports [[CAPI]])''<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9-server-adapter/ PE210G2SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9a-server-adapter/ PE210G2SPI9A]/PE210G2SPI9B dual port 10 GbE SFP+ adapter (Chipset: [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES]) (ixgbe driver)<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9-server-adapter/ PE310G4SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9la-quad-port-10-gigabit-nic-intel-based/ PE310G4SPI9LA] quad port 10 GbE SFP+ adapter (Chipset: Two [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8724 PLX PEX 8724] switch) (ixgbe driver)<br />
* Unbranded 4-port Gigabit Ethernet adapter (Chipset: Four Realtek RTL8111F controllers behind one ASMedia ASM1184e switch) (r8169 driver, firmware optional)<br />
** The card be identified by the "NET111-V1.0" text on its PCB.<br />
* [https://www.asus.com/Networking-IoT-Servers/Wired-Networking/All-series/XG-C100F/ ASUS XG-C100F] (single port 10GbE SFP+, AQUANTIA AQtion Linux "atlantic" driver)<br />
** Driver compiled by default on PowerPC (and others) from this [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9b22fece786ed641909988da4810bfa8e5d2e592 commit].<br />
** There is proprietary firmware written into EEPROM from the factory but it does not seem to be writeable, nor does it have to be loaded by the Linux kernel.<br />
<br />
===Non-working===<br />
* Mellanox ConnectX IB QDR (mlx4 driver)<br />
<br />
==Wireless Cards==<br />
===Working===<br />
* Alfa AWUS036NHA Wireless USB Adaptor<br />
** open source firmware (ath9k_htc) [https://github.com/qca/open-ath9k-htc-firmware]<br />
* [https://ark.intel.com/content/www/us/en/ark/products/75439/intel-dual-band-wireless-ac-7260.html Intel Dual-Band Wireless-AC 7260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/86068/intel-dual-band-wireless-ac-8260.html Intel Dual-Band Wireless-AC 8260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/99445/intel-wireless-ac-9260.html Intel Dual-Band Wireless-AC 9260] (Bluetooth untested)<br />
* [https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-mini-pcie ThinkPenguin TPE-NMPCIE]<br />
** Chipset: Atheros AR9281<br />
** Linux driver: ath9k<br />
** Tested with StarTech PEX2MPEX; device is detected without trouble by Linux and NetworkManager; didn't try hooking up an antenna, so wasn't able to try connecting to networks.<br />
* TP-Link TL WN823N RTL8192EU [https://github.com/Mange/rtl8192eu-linux-driver]<br />
** remove "ARCH=$(ARCH)" on line 1710 of the makefile and it compiles fine<br />
* TP-LINK TL-WN725N V2 USB dongle<br />
** as of Linux 5.6.x, the rtl8188eu is in staging stage, so it is advised to compile the driver from [[https://github.com/lwfinger/rtl8188eu lwfinger/rtl8188eu]]<br />
<br />
==NVMe Drives==<br />
* Samsung 950 PRO (with M.2 to PCIe adapter)<br />
* Samsung 960 EVO / PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 EVO Plus (with M.2 to PCIe adapter)<br />
* Samsung 980 PRO (with M.2 to PCIe adapter)<br />
* [https://www.samsung.com/semiconductor/ssd/datacenter-ssd/MZ1LB960HAJQ/ Samsung PM983] (with [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php AOC-SHG3-4M2P] M.2 to PCIe adapter)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/series/81000/intel-ssd-dc-p3600-series.html Intel SSD DC P3600 PCIe AIC] (tested 1.6 TB)<br />
* Intel Optane 900P NVMe XPoint PCIe<br />
* Intel Optane 905P NVMe XPoint PCIe AIC<br />
* Intel Optane 905P NVMe Xpoint U.2, with included U.2 to M.2 cable plugged into an [[#PCIe_to_M.2_Adapters|ASUS Hyper M.2 X4 mini]].<br />
* WD Black PCIe (with M.2 to PCIe adapter)<br />
* MyDigitalSSD BPX 480GB (with M.2 to PCIe adapter)<br />
* Silicon Power US70 2000 GB (note that it is configured with 512 byte sectors by default and should be reformatted with nvme-cli to get better performance)<br />
<br />
Known issues:<br />
* [FIXED in stable kernels 4.19 and 5.4] [https://bugzilla.kernel.org/show_bug.cgi?id=202665 IOMMU related errors when performing discard on some NVMe devices] (mainly NVMe SSDs). Current workaround is booting with the kernel parameter ''iommu=soft'', see the [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=530436c45ef2e446c12538a400e465929a0b3ade patch]<br />
<br />
==PCIe to M.2 Adapters==<br />
===Working===<br />
* [https://www.asus.com/us/Motherboard-Accessories/HYPER_M2_X4_MINI_CARD/ ASUS Hyper M.2 X4 mini], PCIe X4 to M.2.<br />
* [http://ableconn.com/products_2.php?gid=62 Ableconn PEXM2-SSD M.2 NGFF PCIe SSD to PCI Express 3.0 x4 Host Adapter Card (M.2 to PCIe adapter)]<br />
* [https://www.addonics.com/products/ad2m2nvmpx8.php Addonics AD2M2NVMPX8] Dual NVMe PCIe adapter 2x M.2 PCIe to PCIe x8<br />
* [https://www.delock.com/produkte/G_89370/merkmale.html Delock PCI Express x4 Card > 1 x internal NVMe M.2 Key M 80 mm - Low Profile Form Factor; Item No. 89370]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=9SIA4RE5AU2769 JEYI SK4 M.2 NVMe(M Key) SSD to PCI-E 3.0 x4 Adapter Converter Card]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=N82E16815124167 SYBA SI-PEX40110 M.2 PCI-e To PCI-e 3.0 x4]<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=1052 SYBA SI-PEX40152 PCIe 3.1 x16 to 4 x M.2 (M-Key) Adapter Card]<br />
* [https://highpoint-tech.com/USA_new/series-ssd7101a-1-overview.htm HighPoint SSD7101A-1] 4x M.2 PCIe to PCIe 3.0 x16 (based on PLX PEX8747 PCIe switch)<br />
** Works without special drivers as a PCIe switch. NVMEs are detected and work just fine. Petitboot is able to boot attached NVMEs with no problems. Tested in FreeBSD. -- [[User:Bdragon|Bdragon]] ([[User talk:Bdragon|talk]])<br />
* [https://highpoint-tech.com/USA_new/series-ssd7102-overview.htm HighPoint SSD 7102] 4x M.2 PCIe to PCIe 3.0 x16 (with PCIe switch)<br />
* [https://estore-highpoint-tech.com/products/highpoint-ssd7505-pcie-4-0-x16-4-channel-u-2-nvme-raid-controller HighPoint SSD7505] PCIe 4.0 x16 4-Port M.2 NVMe RAID Controller<br />
* [https://highpoint-tech.com/USA_new/series-ssd7540-overview.htm HighPoint SSD 7540] PCIe 4.0 x16 8-Port M.2 NVMe RAID Controller<br />
** Tested with Samsung 980 Pro 2TB<br />
** Beware of LUKS encryption performance not catching up with such speedy bandwidths yet.<br />
* [https://raidsonic.de/en/standards/searchresults.php?we_objectID=5456 Raidsonic Icy Box PCIe extension card for one M.2 NVMe SSD (IB-PCI214M2-HSL)]:<br />
** Tested with a Samsung 970 EVO Plus NVMe M.2 with 2 TB<br />
** Bootable and no special driver installation required<br />
** Has a passive cooling system for the SSD (about 20 degree Celsius cooler than without)<br />
** Supports PCIe 3.0 x4 with up to 32 GBit/s according to the manual<br />
** Seems to support PCIe 4.0 x4 with up to 64 GBit/s according to the current [https://www.raidsonic.de/products/accessories/ac_controller/IB-PCI214M2-HSL/pdf/datasheet_IB-PCI214M2-HSL_e.pdf data sheet] (probably due to the fact that it is only a routing device without any own logic)<br />
* [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php Supermicro AOC-SHG3-4M2P] 4x M.2 PCIe to PCIe 3.0 x8 (using a PEX 8734 PCIe 3.0 (8.0GT/s) Switch). Draws 10 watts in idle. Requires one additional 4-pin 12V connector.<br />
* [https://www.akasa.com.tw/update.php?tpl=product/product.detail.tpl&no=181&type=Enclosures&type_sub=SSD%20Accessories&model=AK-PCCM2P-01 Akasa AK-PCCM2P-01] PCIe Gen3 x4 to M.2 2230/2242/2260/2280/22110. Tested with Samsung 970 EVO Plus 500GB.<br />
* [https://www.startech.com/en-us/cards-adapters/pexm2sat32n1 StarTech 3-Port M.2 SSD (NGFF) Adapter Card] 1 x PCIe (NVMe) M.2, 2 x SATA III M.2 - PCIe 3.0. Only tested the NVMe port with Samsung 970 EVO Plus 500GB.<br />
<br />
===Partially working===<br />
* [https://www.amazon.com/gp/product/B074WV4ZN4 Aplicata Quad M.2 NVMe SSD PCIe x16 Adapter] (no PCIe switch; only lowest slot works)<br />
<br />
==PCIe to U.2 Adapters==<br />
===Working===<br />
* [https://highpoint-tech.com/USA_new/series-ssd7120-overview.htm High Point SSD7120] PCIe 3.0 x16 to 4x U.2 NVMe ports (Dedicated PCIe 3.0 x4 per port, with PCIe switch) tested by [[User:Gyakovlev|Gyakovlev]] ([[User talk:Gyakovlev|talk]])<br />
** Tested with [https://www.icydock.com/goods.php?id=255 Icy Dock ToughArmor MB699VP-B] 4xU2 enclosure. Neither above controller nor enclosure ships with cables, 4x SAS HD SFF-8643 cables required to connect drives.<br />
** 4x Optane 905P work fine with this combo.<br />
<br />
==PCIe to MiniPCIe Adapters==<br />
=== Working ===<br />
* [https://www.startech.com/Cards-Adapters/Slot-Extension/PCI-Express-to-Mini-PCI-Express-Card-Adapter~PEX2MPEX StarTech PEX2MPEX] ([https://www.newegg.com/startech-com-model-pex2mpex-pci-express-to-mini-pci-express/p/N82E16815158307?Item=N82E16815158307&Description=mini%20PCIe&cm_re=mini_PCIe-_-15-158-307-_-Product NewEgg])<br />
** Tested with ThinkPenguin TPE-NMPCIE.<br />
** Particularly of interest as a lot of the ASPEED and SiliconMotion GPU's have a MiniPCIe form factor.<br />
<br />
==SAS/SATA Storage Controllers ==<br />
===Working===<br />
* IOCrest SI-PEX40062 (Chipset: Marvell 88SE9235, PCI id 1B4B:9235)<br />
** Marvell 88SE9230 chipset also confirmed to work<br />
* Kouwell PE-115H (Chipset: Marvell 88SE9130, PCI id 1b4b:9130)<br />
* LSI 9300/9200 SAS HBAs<br />
** May require updating to IT firmware on a x86 machine<br />
* [[PM8068]]-based SAS HBAs <br />
* Supermicro AOC-SLG3-4E2P 4-port OCuLink adapter<br />
* Jmicron JMB 363 SATA PCIe card. SATA ports work with Petitboot.<br />
* MegaRAID 9460-8i<br />
* [http://www.iocrest.com/index.php?id=2070 IOCrest IO-M2F585-5I] (Chipset: JMicron JMB585, PCI IDs: 197b:0585)<br />
* Unbranded JMicron JMB363 SATA/IDE controller card, with one eSATA, one internal SATA, and one IDE (PATA) connector (Chipset: JMicron JMB363, PCI IDs: 197b:2363)<br />
** SATA ports work in Petitboot.<br />
** The IDE/PATA port doesn't work since it exclusively uses PCI I/O space access, which the [[POWER9]] does not support. Because of this, PCI function 1, which is used for the IDE/PATA functionality, is not exposed by Linux and so will not appear in the output of lspci.<br />
<br />
===Non-working===<br />
* AXAGON PCES-SA2 (ASMedia chipset)<br />
* SuperMicro AOC-SASLP-MV8 (mvsas driver)<br />
* MegaRAID 9341-8i - probably a bug in the firmware<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 642L] (Chipset: Marvell 88SE9235)<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 644L] (Chipset: Marvell 88SE9235)<br />
<br />
== Optical Drives ==<br />
<br />
* [https://www.asus.com/us/Optical-Drives-Storage/BW16D1HT/HelpDesk_Download/ Asus BW-16D1HT Retail] (Blu Ray Writer with SATA interface):<br />
** Partially working (reading BDs works, writing not yet tested). [https://forums.raptorcs.com/index.php/topic,40.0.html Sometimes not recognized during boot phase with ATA timeouts] causing all SATA devices to be disabled<br />
<br />
<br />
== Graphics Cards ==<br />
<br />
No display? Check out the [[Troubleshooting/GPU|GPU Troubleshooting]] page.<br />
<br />
=== AMD ===<br />
<br />
All AMD GPUs currently have DMA issues (limited to 32-bit, which can cause crashes) due to missing Linux kernel support for DMA windows between 33 and 63 bits in length. The root cause is GPU vendors (and occasionally some non-GPU vendors) cutting costs and only including 40-bit capable (Intel-style) DMA controllers. A compatibility mode is expected to be included in Linux 5.4 and above that will resolve this issue.<br />
<br />
* AMD Radeon HD 5570 - Archaic (1GB VRAM, PCI 2.1) but much faster than the AST. This card (ASUS EAH5570 Silent) is passively cooled.<br />
* AMD Radeon HD 5850 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 6450 - Works with default settings (kernel: radeon, X: modesetting or radeon), tested in BE mode<br />
* AMD Radeon HD 6850 - Disable AST VGA with jumper. 32 bit.<br />
* AMD Radeon HD 7850 - Disabled onboard VGA. Using amdgpu is highly unstable, radeon driver is usable but has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 7950 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon R5 220<br />
* AMD Radeon R5 230 - Works in BE mode (use <code>Option "AccelMethod" "EXA"</code> for Xorg)<br />
* AMD Radeon R7 240<br />
* AMD Radeon R9 290X<br />
* AMD Radeon R9 Nano - Must disable onboard VGA first. Works perfectly with Linux 5.6.x to 5.12.x with 4K Pages. It is confirmed working 5.6.x and 5.10.6 (or newer) with 64K Pages (occasionally crash under heavy load for example Blender rendering). Unfortunately 5.7.x, 5.8.x, 5.9.x, 5.11.1 -> 5.11.11 and 5.12.x with 64K pages are known to crash. For 5.7.x (64K pages), you could workaround the crash by adding `amdgpu.dc=0` to grub config.<br />
* Sapphire GPRO 8200 (Polaris10 core) - Disable AST VGA with jumper, disabling in grub is not enough. Same form factor as WX7100, a single-slot RX 470 with 8GB of RAM and 4 DP outputs.<br />
* AMD Radeon RX 480<br />
* AMD Radeon RX 550 - Works with caveats (below) for particular card tested.<br />
** Card tested was Gigabyte GV-RX550D5-2GD in a Blackbird with Ubuntu 19.10, 5.3.0-24 and amdgpu with onboard VGA disabled by jumper. Suspect with tweaking would work without needing to disable VGA. Alas would lock up every day or two, to the point I replaced with a Sapphire RX580. Based on conversations w/Raptor suspect this was an issue with the model card I had rather than the RX550 itself.<br />
* AMD Radeon RX 560X<br />
* AMD Radeon RX 580 – Works with the amdgpu firmware from Ubuntu 19.04 and disabled onboard VGA<br />
** You may also need a kernel parameter like <code>vga=797</code> if xinit complains about VESA[https://en.wikipedia.org/wiki/VESA_BIOS_Extensions]<br />
** The Sapphire NITRO+ Radeon RX 580 8GB card is a tight fit on the Blackbird planar if you're using the 2nd PCIe slot as it a bit wider than two slots (and is documented as such). Solved by removing the adapter plate for the PCIe-M2 adapter card being used and allowing it to sit in slot untethered.<br />
* AMD Radeon RX Vega 56 - Works with Debian Buster with amdgpu. Requires patches to work, somewhat unstable but usable. Cannot use AST Integrated VGA and AMDGPU at the same time without causing conflict. Not tested at this moment for use in petitboot or firmware. <br />
* AMD Radeon RX Vega 64 - Works with Fedora 32 with Linux kernel 5.5.0's amdgpu. The card does _NOT_ display in bootloader because vega10 firmwares failed to load correctly.<br />
* AMD Radeon Pro WX4100 (Polaris11 core) - May need at least linux 4.16 in order to get Xorg to work.<br />
* AMD Radeon Pro WX5100<br />
* AMD Radeon Pro WX7100 (Polaris10 core) - Available pre-installed on Talos II workstation, server, and desktop configurations.<br />
* AMD Radeon RX 5700 (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output. <br />
* AMD Radeon RX 5700 XT (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output.<br />
* AMD Radeon Pro W5500 (Navi 14) - "amdgpu" driver works with 4k kernel but not 64k. "fbdev" driver works with both page sizes. There is a bug when starting X with multiple screens attached - instead, start up with one screen plugged in and then plug the other screens in after reaching the desktop.<br />
* AMD Radeon RX 6900 XT (Navi 21) - Not working with current 5.12 (in either 4K or 64K page sizes) - [https://gitlab.freedesktop.org/drm/amd/-/issues/1519 bug ticket] <br />
<br />
The core name is important when storing the firmware into the BOOTKERNFW partition in PNOR for use by skiroot.<br />
<br />
=== NVIDIA ===<br />
* NVIDIA Corporation G96 [GeForce 9500 GT] (rev a1) - Works in petitboot if onboard VGA is disabled. Currently has issues with only using 32-bit DMA. No firmware needed.<br />
* NVIDIA RTX 2070 - usable for compute, but not 3D acceleration; integrated by Raptor as part of the Talos II PowerAI Development System configuration<br />
<br />
=== Other ===<br />
* [[AST2500|ASPEED AST2500]]. Works in both the main OS (LE mode) and Petitboot. BE mode partially works (doesn't crash, but colors are wrong unless you apply a patch that is harmful to performance). On Linux 5.6+, [https://forums.raptorcs.com/index.php/topic,31.0.html 1920x1200 resolution is broken]. <code>ast</code> Linux driver.<br />
* [https://www.climaxdigital.co.uk/CUH195-USB-2-to-DVI-VGA-or-HDMI-Adaptor-1080p-full-hd ClimaxDigital CUH195 USB 2.0 Graphic Adapter] - Based on DisplayLink DL-3500 chipset. Works in the main OS; not tested with Petitboot but is likely to work there too.<br />
* EVGA 100-U2-UV12-A1 UV Plus USB VGA Adapter - DisplayLink Based - Petitboot shows up without loading firmware. Not tested in OS.<br />
<br />
=== Non-working ===<br />
<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=244 ASPEED AST1300]. Older revision of the AST2510 (AST1300 is 4th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. [https://github.com/open-power/skiboot/issues/257 Open issue with Skiboot for getting it fixed.] Known suppliers of AST1300 devices are:<br />
** [https://iei.rs/IGCME-1300-R10 IEI Integration Corp IGCME-1300-R10] ([https://iei.rs/image/cache/data/IGCME-1300_20131105.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0D332000196276623429/IGCME-1300%20QIG%20V1.01_20120531.pdf Quick Installation Guide])-- Resold by:<br />
*** [http://archivecaslytosk.onion/QZROL eBay example 1]<br />
*** [https://www.ebay.com/p/1383304505 eBay example 2]<br />
*** [https://web.archive.org/web/20171003045507/http://neutronusa.com/prod.cfm/1525210/ NeutronUSA] (Warning: non-TLS link!)<br />
*** [https://forums.servethehome.com/index.php?threads/fs-us-ny-intel-x540-t2-minipcie-vga-slim-120mm-fans.26880/ ServeTheHome]<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=455 ASPEED AST2510]. It's the GPU component of the [[AST2500]] without the BMC component. VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). Might be useful for users who want to add additional VGA displays beyond the single VGA display supported by the built-in AST2500, with similar freedom and performance properties as the AST2500. <code>ast</code> Linux driver. Known suppliers of AST2510 devices are:<br />
** [https://www.win-ent.com/1U-Rackmount-Platforms/pl-81280 WIN Enterprises IP-492B]<br />
** AEWIN Technologies R492B<br />
*** Distributed as add-on for these servers:<br />
**** [https://www.aewin.com/products/scb-1921a/ SCB-1921A]<br />
**** [https://www.aewin.com/zh-hans/products/scb-1925/ SCB-1925] ([https://www.aewin.com/wp-content/uploads/2019/11/SCB-1925.pdf datasheet])<br />
**** [https://www.aewin.com/zh-hant/products/scb-1935a/ SCB-1935A] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
**** [https://www.aewin.com/products/scb-1935b/ SCB-1935B] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=377 ASPEED AST1400]. Older revision of the AST2510 (AST1400 is 5th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. Known suppliers of AST1400 devices are:<br />
** [https://iei.rs/IGCME-1300-R11 IEI Integration Corp IGCME-1300-R11] ([https://iei.rs/image/cache/data/IGCME-1300_MPCIE-USB3.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0F233000410888189307/IGCME-1300%20QIG%20V1.10_20150819.pdf Quick Installation Guide]) -- Resold by:<br />
*** [https://eu.mouser.com/ProductDetail/IEI/IGCME-1300-R11?qs=wd5RIQLrsJgucg6W4Ojybw%3D%3D Mouser]<br />
*** [https://www.amazon.com/IEI-Technology-IGCME-1300-R11-Adapter-AST1400/dp/B07WRVK8DR Amazon]<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/IGCME-1300/IGCME-1300.htm Kacer]<br />
*** [https://www.alibaba.com/product-detail/IEI-IGCME-1300-R11-PCIe-Mini_60839628812.html Alibaba]<br />
*** [https://www.icpamerica.com/igcme-1300-add-on-card/ ICP America]<br />
* SiliconMotion SM750. Chipset is VGA + DVI (dual display) 1920x1440, but some devices may not support the full chipset resolution; appears to have 2D acceleration (not just framebuffer). Appears to be fixed-function silicon (no firmware). PCIe interface. <code>sm750fb</code> Linux driver is in staging. [https://gitlab.com/sudipm/sm750/tree/sm750 <code>sm750</code> Linux driver] is not yet merged to mainline. <code>sm750</code> Linux driver has some weird license text, but [https://github.com/torvalds/linux/commit/81e0da703fdba1ee126868bf8350592c79cdba13 according to Greg Kroah-Hartman] it sounds like the authors intend it to be GPLv2; would be useful to double-check with Greg/Sudip/Teddy whether Silicon Motion's statement to Greg applies to Sudip's <code>sm750</code> or if it only applies to mainline's <code>sm750fb</code>. Known suppliers:<br />
** [https://www.cervoz.com/product.php?id=c39eb02c-014a-1000-a04b-001851f77c0c Cervoz MEC-DIS-M002]. VGA + DVI (dual display) 1280x1024 @ 60Hz. Mini-PCIe form factor. Resold by:<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/MEC-DIS-M002/MD02.html Kacer]<br />
*** [https://www.texim-europe.com/product/MEC-DIS-M002 Texim Europe]<br />
*** [https://www.bvm.co.uk/products/1053-Mini-PCI-Express-DVI-VGA-Module-MEC-DIS-M002/ BVM]<br />
*** [https://web.archive.org/web/20200704052513/https://nerugged.com/product/mec-dis-m002-mpcie-dvi-vga-controller/ New England Rugged]<br />
** [https://web.archive.org/web/20200707045733/http://www.smartnre.com/en/product/Fastwel_VIM552_3U_CPCI_Graphics_Module.html Fastwel VIM552] (Warning: non-TLS link!)<br />
** [https://www.memorydepot.com/detail/EMPV-1201-C1.html Innodisk EMPV-1201-C1]<br />
** [https://www.memorydepot.com/detail/EMPV-1202-C1.html Innodisk EMPV-1202-C1]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1760 SUNIX VGA0419]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1766 SUNIX VGA0429]. Resold by:<br />
*** [https://www.dc3.co.za/computer-store/sc-svga0429/ DC3 Distribution]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1817 SUNIX VGA0449M]<br />
** [https://www.vadatech.com/product.php?product=368 VadaTech AMC348]<br />
** [https://www.vadatech.com/product.php?product=151 VadaTech AMC349]<br />
** [https://www.versalogic.com/product/video-expansion-module/ VersaLogic VL-MPEe-V5]<br />
* DisplayLink<br />
** [https://www.climaxdigital.co.uk/epages/BT3449.sf/en_GB/?ObjectPath=/Shops/BT3449/Products/111216 ClimaxDigital CUH350]<br />
*** Based on DisplayLink DL-3500 chipset.<br />
*** ClimaxDigital claims 1920x1200; DisplayLink chipset docs claim 2560x1600.<br />
** [https://www.startech.com/en-us/audio-video-products/usb2dvimm6 StarTech USB2DVIMM6]<br />
*** Based on DisplayLink DL-165 chipset.<br />
*** 1680x1050.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2dvimm6/p/N82E16815158183 NewEgg].<br />
** [https://www.startech.com/en-us/audio-video-products/usb2dvipro2 StarTech USB2DVIPRO2]<br />
*** Based on DisplayLink DL-195 chipset.<br />
*** 1920x1200.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2dvipro2/p/N82E16812400361 NewEgg].<br />
** [https://www.startech.com/en-us/audio-video-products/usb2vgapro2 StarTech USB2VGAPRO2]<br />
*** Based on DisplayLink DL-195 chipset.<br />
*** 1920x1200.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2vgapro2/p/N82E16812400368 NewEgg].<br />
<br />
== Sound Cards ==<br />
<br />
===Working===<br />
* Creative Sound Blaster Audigy FX SB1570 PCIe 5.1 Sound Card<br />
* Creative Sound Blaster X-Fi Xtreme Fidelity PCIe Audio Sound Card (SB0880)<br />
* AMD Radeon HD 5850 and 7950 (HDMI audio)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=156&p_name=+USB+Stereo+Audio+Adapter&pc_id=9&pc_name=Adapters&pt_id=3&pt_name=Audio+%2B++Video#tab-1 VANTEC NBA-120U (USB)]<br />
* Sabrent USB External Stereo Sound Adapter (AU-MMSA)<br />
* [https://mackie.com/products/onyx-blackjack Mackie Onyx Blackjack (USB) Recording Interface]<br />
* RME HDSPe AIO (FreeBSD tested)<br />
* Leveraged Sabrent Bluetooth 4.0 USB adapter (model BT-UB40) to connect to wireless Bluetooth headphones, specifically Bose Quiet Comfort 35.<br />
<br />
===Non-working===<br />
* ASUS Xonar SE - Contains ASMedia USB host controller with errant DMA access flaw<br />
* Creative Sound Blaster Audigy PCIe RX 7.1 - unable to enable emu10k1 driver on little-endian power9 kernel as driver requires ZONE_DMA<br />
<br />
==USB Host Controllers==<br />
===Working===<br />
* Insignia USB 3.0 PCI-e NS-PCCUP53 V1.0 (Chipset: NEC D720202)<br />
* AGAXO PCEU-23R (Chipset: Renesas uPD720202, PCI id 1912:0015)<br />
* Terminus Technology Inc. FE 2.1 7-port Hub<br />
* [https://www.sonnettech.com/product/legacyproducts/allegroprousb3pcie.html Sonnet Allegro Pro USB 3.0 PCIe USB3-PRO-4PM-E] (Chipset: Four [http://www.frescologic.com/product/single/fl1100ex/ Fresco Logic FL1100EX] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8608 PLX PEX 8608] switch)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=125&p_name=+4-Port+SuperSpeed+USB+3.0+PCIe+Host+Card+w%2F+Internal+20-Pin+Connector&pc_id=16&pc_name=USB&pt_id=4&pt_name=Add-on+Cards Vantec UGT-PC345 4 Port USB 3.0 PCIe w/ Internal 20 pin] (Chipset: Renesas uDP720201)<br />
* [https://www.amazon.com/gp/product/B07H4HJNJC] (monster card with 8 ports of USB 3.0) four Renesas uPD720202 chips behind ASMedia 1806, card can be found under different brands but can be identified by the look. [http://sedna-shop.com/index.php?route=product/product&path=59_74&product_id=138 This should be the same card]<br />
* En-Labs PCI-e to 4 Ports USB 3.1 GEN 1 (5Gbps) (USB Type-C +USB Type A w/ Internal 19Pin USB 3.0 Dual Port) PCI Express Card (Chipset: ASMedia ASM1042A)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE3U1T-A31" and "VER 006S" markings on the PCB.<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=818 IOCrest SI-PEX20189] (Chipset: ASMedia ASM1142)<br />
** Requires kernel version 4.14.194, 4.19.139, 5.4.58, 5.7.15, 5.8.1, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [http://ableconn.com/products_2.php?gid=121 Ableconn PU31-2C-2] (Chipset: ASMedia ASM2142)<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* Semoic USB 3.1 to Type-C 2 Port Expansion Card (Chipset: ASMedia ASM3142, same PCI IDs as ASM2142)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE2TYC-A31", "VER006", "USB 3.1 Type-C 2-Port Card", and "PCE-E 4X" markings on the PCB.<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [https://www.orico.cc/us/product/detail/7192.html ORICO PE20-1C] (Chipset: ASMedia ASM3242)<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
<br />
===Non-working===<br />
In general, USB3 host controllers based on ASMedia chipsets are known to be problematic, due to ASMedia hardware or firmware bugs causing errant DMA accesses to invalid regions of host memory.<br />
<br />
* AXAGON PCEU-43V - chipset Via VL805 - PCI id 1106:3483<br />
* StarTech PEXUSB314A2V - 2x ASM1142 host controllers and a PCIe switch<br />
** This card completely fails to be detected.<br />
* QNINE USB 3.1 Gen2 (Type-A and Type-C) - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* Rosewill RC-509 - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1022A-Series.htm HighPoint RocketU 1022A] (Chipset: ASMedia ASM1042)<br />
** Skiboot reports that the PCIe link is unstable when the card is connected directly, but it seems to work when the card is plugged in via a PCIe switch.<br />
** This chip seems somewhat unreliable, since USB reads can fail after only a few tens of gigabytes have been transferred.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1144A-Series.htm HighPoint RocketU 1144A] (Chipset: Chipset: Four ASMedia ASM1042 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
** Skiboot sometimes times out when scanning for the ASM1042 controllers attached to the PEX 8609 ("Timeout waiting for downstream link"), resulting in some of the ports effectively being disabled until the next boot.<br />
** The ASM1042 controller seems somewhat unreliable.<br />
*** Lots of resets on USB 3.<br />
*** Long reads from a single USB hard drive can sometimes result in I/O errors.<br />
*** Incompatible with some USB hard drives.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=54 SEDNA - PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC)<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=99 SEDNA - PCIe 4 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://www.startech.com/Cards-Adapters/USB-3.0/Cards/7-port-pci-express-usb-3-card~PEXUSB3S7 StarTech PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://highpoint-tech.com/USA_new/series-ru1344a-overview.htm High Point RocketU 1344A 4-Port USB 3.1 PCI-Express 3.0 x 4 HBA] (Chipset: Two ASMedia ASM3142 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8714 PLX PEX 8714] switch)<br />
* [https://highpoint-tech.com/USA_new/series-ru1144d-overview.htm High Point RocketU 1144D 4-Port USB 3.0 PCI-Express 2.0 x 4 HBA] (Chipset: Four ASMedia ASM1042A controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
* [https://www.sonnettech.com/product/allegro-usbc-pcie.html Sonnet Allegro USB-C PCIe Card USB3C-2PM-E] (Chipset: ASMedia ASM1142/ASM3142 (cards shipped before April 2020 use the ASM1142 controller))<br />
* [https://www.sonnettech.com/product/allegro-usbc-4port-pcie.html Sonnet Allegro USB-C 4-Port PCIe Card USB3C-4PM-E] (Chipset: Two ASMedia ASM1142/ASM3142 controllers (cards shipped before January 2020 use ASM1142 controllers) behind one [https://www.diodes.com/part/view/PI7C9X2G308GP Pericom PI7C9X2G308GP] switch)<br />
* [https://www.gigabyte.com/Motherboard/GC-USB-32-GEN2X2 Gigabyte GC-USB 3.2 GEN2X2] (Chipset: ASMedia ASM3242)<br />
<br />
==TV Tuners==<br />
* [https://hauppauge.com/pages/products/data_quadhd.html Hauppauge WinTV-quadHD] (Chipset: Four Silicon Labs Si2157 tuners, four LG LG3306A demodulators, and two Conexant CX23888 PCIe interface chips behind one [https://www.diodes.com/part/view/PI7C9X2G304EL Pericom PI7C9X2G304EL] PCIe switch)<br />
* Hauppauge WinTV HVR-850 (2040:7240) - ATSC - using Kaffeine<br />
<br />
==Firewire Host Controllers==<br />
===Working===<br />
<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=119 Syba SY-PEX30016] (Chipset: TI XIO2213B)<br />
** Requires [https://marc.info/?l=linux1394-devel&m=157207806405627&q=mbox this patch] to work on kernels with a 64k page size.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
<br />
* [http://www.dawicontrol.com/index.php?cmd=proddet&id=media Dawicontrol DC-FW800] (Chipset: TI XIO2213B)<br />
* [https://www.delock.de/produkte/G_89210/merkmale.html?setLanguage=en DeLOCK 3x FireWire 800, Item No. 89210] (Chipset: TI XIO2213B)<br />
* [https://www.digitus.info/en/products/computer-components/computer-peripherals/serial-parallel-adapter/ds-30203-2/ DIGITUS Firewire 800 (1394b) PCIe Card] (Chipset: TI XIO2213B)<br />
* [https://www.exsys.de/index.php?page=product&info=127 Exsys EX-16415] (Chipset: TI XIO2213)<br />
* [https://www.exsys.de/index.php?page=product&info=366 Exsys EX-16512E] (Chipset: TI)<br />
* [http://www.ioi.com.tw/products/proddetail.aspx?CatID=106&DeviceID=3021&HostID=2009&ProdID=1060100 IOI Technology FWB-PCIE1X11A] (Chipset: TI XIO2213B)<br />
[[Category:Compatibility List]]<br />
<br />
==Video Capture Cards==<br />
* [https://www.avermedia.com/professional/product/ce310b/overview AVerMedia CE310B] (Chipset: Conexant CX23888)<br />
** Requires kernel version 4.19.106, 5.4.22, 5.5.6, or later.<br />
<br />
==Serial Port Adapter Cards==<br />
===Working===<br />
* EXSYS EX-44072 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44073 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44171 PCI-Express 1x Serial RS-232 / 1x Parallel Multi I/O Card (Chipset: Oxford OXPCIe952)<br />
** ''The UARTs implemented with the Oxford Semiconductor OXPCIe952 PCIe ASIC can be strapped for either native or legacy operation. The EXSYS boards configure it for the native mode and therefore work with the PHB4 just fine.<br>NB the PC parallel port is always a legacy PCIe device and therefore cannot work with the PHB4.''<br />
<br />
==PCIe/PCI Expansion==<br />
===Working===<br />
* [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/490/pcie-adapter-card-for-ex-1010/1031/1032/1041/1042 EXSYS EX-1095 PCIe Adapter card for EX-1010/1031/1032/1041/1042]<br />
** [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/1144/expansion-box-with-4-x-pci-slots-38cm-length-220w-power-supply EXSYS EX-1031 Quad PCI-Slot Expansion Box] (Chipset: TI XIO2000A)<br />
*** 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]<br />
*** DEC FDDIcontroller/PCI (DEFPA) PCI FDDI [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=POWER9_Hardware_Compatibility_List/PCIe_Devices&diff=3578POWER9 Hardware Compatibility List/PCIe Devices2021-11-08T18:09:36Z<p>Chatcannon: /* NVMe Drives */ Silicon Power US70</p>
<hr />
<div><!-- When adding devices, please list devices in alphabetical order within each category. --><br />
==Compatibility rules==<br />
In general, any PCIe device will work providing that an open source driver is available for your operating system. There are some exceptions:<br />
<br />
* '''Hardware bugs.''' POWER does not permit errant DMA accesses. If a device tries to access areas of host memory which it is not permitted to access, the device is shut down immediately. This is dissimilar to x86 platforms, which simply silently ignore such attempts. Some badly designed I/O devices have bugs causing them to attempt DMA accesses to random areas of host memory; these devices are unlikely to function correctly on POWER systems unless a workaround is available. Note that devices in full bypass mode may legally have access to all host memory, to avoid this and test driver IOMMU setup pass "iommu=nobypass" to the kernel at startup.<br />
* '''I/O space.''' Starting with [[POWER9]], access to the legacy PCI I/O space is no longer supported; devices or drivers which rely on this will not function. The legacy I/O space has been deprecated for as long as PCIe has existed; generally this will only affect very old PCIe devices which use PCIe to PCI bridge chips to attach old PCI devices to the bus, or genuine legacy PCI devices attached via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]]. A small subset of these devices may require legacy I/O space support.<br />
* '''Incomplete memory addressing support.''' The PCIe architecture specifies a 64-bit address space. Some I/O devices try to economize on this by only implementing e.g. 40 bits for their addressing, rendering them incapable of addressing host memory which lies above address 2<sup>40</sup>. (Firmware patches to work around this are pending.)<br />
* '''Bifurcation limits.''' Arbitrary PCIe lane bifurcation is not supported. Devices which split a PCIe slot into multiple connectors (for example, PCIe to M.2 adaptors) will not work unless they have a PCIe switch chip, although the first connector will generally work.<br />
<br />
==Troubleshooting==<br />
<br />
If a PCIe device is in a broken state due to being attached/detached from a VM, or due to a transition from Petitboot to the main OS, you may be able to fix it by issuing a hot reset. A script for performing a PCIe hot reset is at [[File:Pcie_hot_reset.sh]]. For background on PCIe resets and how a hot reset differs from the function-level reset performed by <code>echo 1 > /sys/bus/pci/devices/$dev/reset</code>, see [https://unix.stackexchange.com/a/474378 Alex Forencich's explanation on Stack Exchange].<br />
<br />
==NICs==<br />
===Working===<br />
* 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
* Broadcom [[BCM5719]]<br />
* Chelsio T520-SO-CR (dual port 10Gb/s, cxgb4 driver)<br />
* Chelsio T6225-SO-CR<br />
* DEC FDDIcontroller/PCI (DEFPA) PCI FDDI (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
** Works automatically as from Linux kernel version 5.13.<br />
** Works with Linux kernel versions before 5.13 as long as the defxx driver has been compiled with the CONFIG_DEFXX_MMIO option, which may not be the case with standard distribution kernels as the option was not on by default for historical reasons.<br>''This is because the PFI ASIC used as the PCI interface with the DEC FDDIcontroller/PCI adapter supports both port I/O and MMIO for main ASIC's (PDQ) CSR access, however [[POWER9_Hardware_Compatibility_List/PCIe_Devices#Compatibility_rules|as noted above]] the Power Systems Host Bridge 4 (PHB4) PCIe root complex used with POWER9 microprocessors does not support I/O Read or I/O Write commands required for port I/O.''<br />
* Mellanox ConnectX-6 EN 200Gb/s Adapter Card ''(supports [[CAPI]])''<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9-server-adapter/ PE210G2SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9a-server-adapter/ PE210G2SPI9A]/PE210G2SPI9B dual port 10 GbE SFP+ adapter (Chipset: [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES]) (ixgbe driver)<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9-server-adapter/ PE310G4SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9la-quad-port-10-gigabit-nic-intel-based/ PE310G4SPI9LA] quad port 10 GbE SFP+ adapter (Chipset: Two [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8724 PLX PEX 8724] switch) (ixgbe driver)<br />
* Unbranded 4-port Gigabit Ethernet adapter (Chipset: Four Realtek RTL8111F controllers behind one ASMedia ASM1184e switch) (r8169 driver, firmware optional)<br />
** The card be identified by the "NET111-V1.0" text on its PCB.<br />
* [https://www.asus.com/Networking-IoT-Servers/Wired-Networking/All-series/XG-C100F/ ASUS XG-C100F] (single port 10GbE SFP+, AQUANTIA AQtion Linux "atlantic" driver)<br />
** Driver compiled by default on PowerPC (and others) from this [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9b22fece786ed641909988da4810bfa8e5d2e592 commit].<br />
** There is proprietary firmware written into EEPROM from the factory but it does not seem to be writeable, nor does it have to be loaded by the Linux kernel.<br />
<br />
===Non-working===<br />
* Mellanox ConnectX IB QDR (mlx4 driver)<br />
<br />
==Wireless Cards==<br />
===Working===<br />
* Alfa AWUS036NHA Wireless USB Adaptor<br />
** open source firmware (ath9k_htc) [https://github.com/qca/open-ath9k-htc-firmware]<br />
* [https://ark.intel.com/content/www/us/en/ark/products/75439/intel-dual-band-wireless-ac-7260.html Intel Dual-Band Wireless-AC 7260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/86068/intel-dual-band-wireless-ac-8260.html Intel Dual-Band Wireless-AC 8260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/99445/intel-wireless-ac-9260.html Intel Dual-Band Wireless-AC 9260] (Bluetooth untested)<br />
* [https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-mini-pcie ThinkPenguin TPE-NMPCIE]<br />
** Chipset: Atheros AR9281<br />
** Linux driver: ath9k<br />
** Tested with StarTech PEX2MPEX; device is detected without trouble by Linux and NetworkManager; didn't try hooking up an antenna, so wasn't able to try connecting to networks.<br />
* TP-Link TL WN823N RTL8192EU [https://github.com/Mange/rtl8192eu-linux-driver]<br />
** remove "ARCH=$(ARCH)" on line 1710 of the makefile and it compiles fine<br />
* TP-LINK TL-WN725N V2 USB dongle<br />
** as of Linux 5.6.x, the rtl8188eu is in staging stage, so it is advised to compile the driver from [[https://github.com/lwfinger/rtl8188eu lwfinger/rtl8188eu]]<br />
<br />
==NVMe Drives==<br />
* Samsung 950 PRO (with M.2 to PCIe adapter)<br />
* Samsung 960 EVO / PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 EVO Plus (with M.2 to PCIe adapter)<br />
* Samsung 980 PRO (with M.2 to PCIe adapter)<br />
* [https://www.samsung.com/semiconductor/ssd/datacenter-ssd/MZ1LB960HAJQ/ Samsung PM983] (with [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php AOC-SHG3-4M2P] M.2 to PCIe adapter)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/series/81000/intel-ssd-dc-p3600-series.html Intel SSD DC P3600 PCIe AIC] (tested 1.6 TB)<br />
* Intel Optane 900P NVMe XPoint PCIe<br />
* Intel Optane 905P NVMe XPoint PCIe AIC<br />
* Intel Optane 905P NVMe Xpoint U.2, with included U.2 to M.2 cable plugged into an [[#PCIe_to_M.2_Adapters|ASUS Hyper M.2 X4 mini]].<br />
* WD Black PCIe (with M.2 to PCIe adapter)<br />
* MyDigitalSSD BPX 480GB (with M.2 to PCIe adapter)<br />
* Silicon Power US70 2000 GB (note that it is configured with 512 byte sectors by default and should be reformatted with nvme-cli to get better performance)<br />
<br />
Known issues:<br />
* [FIXED in stable kernels 4.19 and 5.4] [https://bugzilla.kernel.org/show_bug.cgi?id=202665 IOMMU related errors when performing discard on some NVMe devices] (mainly NVMe SSDs). Current workaround is booting with the kernel parameter ''iommu=soft'', see the [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=530436c45ef2e446c12538a400e465929a0b3ade patch]<br />
<br />
==PCIe to M.2 Adapters==<br />
===Working===<br />
* [https://www.asus.com/us/Motherboard-Accessories/HYPER_M2_X4_MINI_CARD/ ASUS Hyper M.2 X4 mini], PCIe X4 to M.2.<br />
* [http://ableconn.com/products_2.php?gid=62 Ableconn PEXM2-SSD M.2 NGFF PCIe SSD to PCI Express 3.0 x4 Host Adapter Card (M.2 to PCIe adapter)]<br />
* [https://www.addonics.com/products/ad2m2nvmpx8.php Addonics AD2M2NVMPX8] Dual NVMe PCIe adapter 2x M.2 PCIe to PCIe x8<br />
* [https://www.delock.com/produkte/G_89370/merkmale.html Delock PCI Express x4 Card > 1 x internal NVMe M.2 Key M 80 mm - Low Profile Form Factor; Item No. 89370]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=9SIA4RE5AU2769 JEYI SK4 M.2 NVMe(M Key) SSD to PCI-E 3.0 x4 Adapter Converter Card]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=N82E16815124167 SYBA SI-PEX40110 M.2 PCI-e To PCI-e 3.0 x4]<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=1052 SYBA SI-PEX40152 PCIe 3.1 x16 to 4 x M.2 (M-Key) Adapter Card]<br />
* [https://highpoint-tech.com/USA_new/series-ssd7101a-1-overview.htm HighPoint SSD7101A-1] 4x M.2 PCIe to PCIe 3.0 x16 (based on PLX PEX8747 PCIe switch)<br />
** Works without special drivers as a PCIe switch. NVMEs are detected and work just fine. Petitboot is able to boot attached NVMEs with no problems. Tested in FreeBSD. -- [[User:Bdragon|Bdragon]] ([[User talk:Bdragon|talk]])<br />
* [https://highpoint-tech.com/USA_new/series-ssd7102-overview.htm HighPoint SSD 7102] 4x M.2 PCIe to PCIe 3.0 x16 (with PCIe switch)<br />
* [https://estore-highpoint-tech.com/products/highpoint-ssd7505-pcie-4-0-x16-4-channel-u-2-nvme-raid-controller HighPoint SSD7505] PCIe 4.0 x16 4-Port M.2 NVMe RAID Controller<br />
* [https://highpoint-tech.com/USA_new/series-ssd7540-overview.htm HighPoint SSD 7540] PCIe 4.0 x16 8-Port M.2 NVMe RAID Controller<br />
** Tested with Samsung 980 Pro 2TB<br />
** Beware of LUKS encryption performance not catching up with such speedy bandwidths yet.<br />
* [https://raidsonic.de/en/standards/searchresults.php?we_objectID=5456 Raidsonic Icy Box PCIe extension card for one M.2 NVMe SSD (IB-PCI214M2-HSL)]:<br />
** Tested with a Samsung 970 EVO Plus NVMe M.2 with 2 TB<br />
** Bootable and no special driver installation required<br />
** Has a passive cooling system for the SSD (about 20 degree Celsius cooler than without)<br />
** Supports PCIe 3.0 x4 with up to 32 GBit/s according to the manual<br />
** Seems to support PCIe 4.0 x4 with up to 64 GBit/s according to the current [https://www.raidsonic.de/products/accessories/ac_controller/IB-PCI214M2-HSL/pdf/datasheet_IB-PCI214M2-HSL_e.pdf data sheet] (probably due to the fact that it is only a routing device without any own logic)<br />
* [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php Supermicro AOC-SHG3-4M2P] 4x M.2 PCIe to PCIe 3.0 x8 (using a PEX 8734 PCIe 3.0 (8.0GT/s) Switch). Draws 10 watts in idle. Requires one additional 4-pin 12V connector.<br />
* [https://www.akasa.com.tw/update.php?tpl=product/product.detail.tpl&no=181&type=Enclosures&type_sub=SSD%20Accessories&model=AK-PCCM2P-01 Akasa AK-PCCM2P-01] PCIe Gen3 x4 to M.2 2230/2242/2260/2280/22110. Tested with Samsung 970 EVO Plus 500GB.<br />
* [https://www.startech.com/en-us/cards-adapters/pexm2sat32n1 StarTech 3-Port M.2 SSD (NGFF) Adapter Card] 1 x PCIe (NVMe) M.2, 2 x SATA III M.2 - PCIe 3.0. Only tested the NVMe port with Samsung 970 EVO Plus 500GB.<br />
<br />
===Partially working===<br />
* [https://www.amazon.com/gp/product/B074WV4ZN4 Aplicata Quad M.2 NVMe SSD PCIe x16 Adapter] (no PCIe switch; only lowest slot works)<br />
<br />
==PCIe to U.2 Adapters==<br />
===Working===<br />
* [https://highpoint-tech.com/USA_new/series-ssd7120-overview.htm High Point SSD7120] PCIe 3.0 x16 to 4x U.2 NVMe ports (Dedicated PCIe 3.0 x4 per port, with PCIe switch) tested by [[User:Gyakovlev|Gyakovlev]] ([[User talk:Gyakovlev|talk]])<br />
** Tested with [https://www.icydock.com/goods.php?id=255 Icy Dock ToughArmor MB699VP-B] 4xU2 enclosure. Neither above controller nor enclosure ships with cables, 4x SAS HD SFF-8643 cables required to connect drives.<br />
** 4x Optane 905P work fine with this combo.<br />
<br />
==PCIe to MiniPCIe Adapters==<br />
=== Working ===<br />
* [https://www.startech.com/Cards-Adapters/Slot-Extension/PCI-Express-to-Mini-PCI-Express-Card-Adapter~PEX2MPEX StarTech PEX2MPEX] ([https://www.newegg.com/startech-com-model-pex2mpex-pci-express-to-mini-pci-express/p/N82E16815158307?Item=N82E16815158307&Description=mini%20PCIe&cm_re=mini_PCIe-_-15-158-307-_-Product NewEgg])<br />
** Tested with ThinkPenguin TPE-NMPCIE.<br />
** Particularly of interest as a lot of the ASPEED and SiliconMotion GPU's have a MiniPCIe form factor.<br />
<br />
==SAS/SATA Storage Controllers ==<br />
===Working===<br />
* IOCrest SI-PEX40062 (Chipset: Marvell 88SE9235, PCI id 1B4B:9235)<br />
** Marvell 88SE9230 chipset also confirmed to work<br />
* Kouwell PE-115H (Chipset: Marvell 88SE9130, PCI id 1b4b:9130)<br />
* LSI 9300/9200 SAS HBAs<br />
** May require updating to IT firmware on a x86 machine<br />
* [[PM8068]]-based SAS HBAs <br />
* Supermicro AOC-SLG3-4E2P 4-port OCuLink adapter<br />
* Jmicron JMB 363 SATA PCIe card. SATA ports work with Petitboot.<br />
* MegaRAID 9460-8i<br />
* [http://www.iocrest.com/index.php?id=2070 IOCrest IO-M2F585-5I] (Chipset: JMicron JMB585, PCI IDs: 197b:0585)<br />
* Unbranded JMicron JMB363 SATA/IDE controller card, with one eSATA, one internal SATA, and one IDE (PATA) connector (Chipset: JMicron JMB363, PCI IDs: 197b:2363)<br />
** SATA ports work in Petitboot.<br />
** The IDE/PATA port doesn't work since it exclusively uses PCI I/O space access, which the [[POWER9]] does not support. Because of this, PCI function 1, which is used for the IDE/PATA functionality, is not exposed by Linux and so will not appear in the output of lspci.<br />
<br />
===Non-working===<br />
* AXAGON PCES-SA2 (ASMedia chipset)<br />
* SuperMicro AOC-SASLP-MV8 (mvsas driver)<br />
* MegaRAID 9341-8i - probably a bug in the firmware<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 642L] (Chipset: Marvell 88SE9235)<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 644L] (Chipset: Marvell 88SE9235)<br />
<br />
== Optical Drives ==<br />
<br />
* [https://www.asus.com/us/Optical-Drives-Storage/BW16D1HT/HelpDesk_Download/ Asus BW-16D1HT Retail] (Blu Ray Writer with SATA interface):<br />
** Partially working (reading BDs works, writing not yet tested). [https://forums.raptorcs.com/index.php/topic,40.0.html Sometimes not recognized during boot phase with ATA timeouts] causing all SATA devices to be disabled<br />
<br />
<br />
== Graphics Cards ==<br />
<br />
No display? Check out the [[Troubleshooting/GPU|GPU Troubleshooting]] page.<br />
<br />
=== AMD ===<br />
<br />
All AMD GPUs currently have DMA issues (limited to 32-bit, which can cause crashes) due to missing Linux kernel support for DMA windows between 33 and 63 bits in length. The root cause is GPU vendors (and occasionally some non-GPU vendors) cutting costs and only including 40-bit capable (Intel-style) DMA controllers. A compatibility mode is expected to be included in Linux 5.4 and above that will resolve this issue.<br />
<br />
* AMD Radeon HD 5570 - Archaic (1GB VRAM, PCI 2.1) but much faster than the AST. This card (ASUS EAH5570 Silent) is passively cooled.<br />
* AMD Radeon HD 5850 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 6450 - Works with default settings (kernel: radeon, X: modesetting or radeon), tested in BE mode<br />
* AMD Radeon HD 6850 - Disable AST VGA with jumper. 32 bit.<br />
* AMD Radeon HD 7850 - Disabled onboard VGA. Using amdgpu is highly unstable, radeon driver is usable but has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 7950 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon R5 220<br />
* AMD Radeon R5 230 - Works in BE mode (use <code>Option "AccelMethod" "EXA"</code> for Xorg)<br />
* AMD Radeon R7 240<br />
* AMD Radeon R9 290X<br />
* AMD Radeon R9 Nano - Must disable onboard VGA first. Works perfectly with Linux 5.6.x to 5.12.x with 4K Pages. It is confirmed working 5.6.x and 5.10.6 (or newer) with 64K Pages (occasionally crash under heavy load for example Blender rendering). Unfortunately 5.7.x, 5.8.x, 5.9.x, 5.11.1 -> 5.11.11 and 5.12.x with 64K pages are known to crash. For 5.7.x (64K pages), you could workaround the crash by adding `amdgpu.dc=0` to grub config.<br />
* Sapphire GPRO 8200 (Polaris10 core) - Disable AST VGA with jumper, disabling in grub is not enough. Same form factor as WX7100, a single-slot RX 470 with 8GB of RAM and 4 DP outputs.<br />
* AMD Radeon RX 480<br />
* AMD Radeon RX 550 - Works with caveats (below) for particular card tested.<br />
** Card tested was Gigabyte GV-RX550D5-2GD in a Blackbird with Ubuntu 19.10, 5.3.0-24 and amdgpu with onboard VGA disabled by jumper. Suspect with tweaking would work without needing to disable VGA. Alas would lock up every day or two, to the point I replaced with a Sapphire RX580. Based on conversations w/Raptor suspect this was an issue with the model card I had rather than the RX550 itself.<br />
* AMD Radeon RX 560X<br />
* AMD Radeon RX 580 – Works with the amdgpu firmware from Ubuntu 19.04 and disabled onboard VGA<br />
** You may also need a kernel parameter like <code>vga=797</code> if xinit complains about VESA[https://en.wikipedia.org/wiki/VESA_BIOS_Extensions]<br />
** The Sapphire NITRO+ Radeon RX 580 8GB card is a tight fit on the Blackbird planar if you're using the 2nd PCIe slot as it a bit wider than two slots (and is documented as such). Solved by removing the adapter plate for the PCIe-M2 adapter card being used and allowing it to sit in slot untethered.<br />
* AMD Radeon RX Vega 56 - Works with Debian Buster with amdgpu. Requires patches to work, somewhat unstable but usable. Cannot use AST Integrated VGA and AMDGPU at the same time without causing conflict. Not tested at this moment for use in petitboot or firmware. <br />
* AMD Radeon RX Vega 64 - Works with Fedora 32 with Linux kernel 5.5.0's amdgpu. The card does _NOT_ display in bootloader because vega10 firmwares failed to load correctly.<br />
* AMD Radeon Pro WX4100 (Polaris11 core) - May need at least linux 4.16 in order to get Xorg to work.<br />
* AMD Radeon Pro WX5100<br />
* AMD Radeon Pro WX7100 (Polaris10 core) - Available pre-installed on Talos II workstation, server, and desktop configurations.<br />
* AMD Radeon RX 5700 (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output. <br />
* AMD Radeon RX 5700 XT (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output.<br />
* AMD Radeon Pro W5500 (Navi 14) - "amdgpu" driver works with 4k pages but not 64k pages. "fbdev" driver works with both page sizes.<br />
* AMD Radeon RX 6900 XT (Navi 21) - Not working with current 5.12 (in either 4K or 64K page sizes) - [https://gitlab.freedesktop.org/drm/amd/-/issues/1519 bug ticket] <br />
<br />
The core name is important when storing the firmware into the BOOTKERNFW partition in PNOR for use by skiroot.<br />
<br />
=== NVIDIA ===<br />
* NVIDIA Corporation G96 [GeForce 9500 GT] (rev a1) - Works in petitboot if onboard VGA is disabled. Currently has issues with only using 32-bit DMA. No firmware needed.<br />
* NVIDIA RTX 2070 - usable for compute, but not 3D acceleration; integrated by Raptor as part of the Talos II PowerAI Development System configuration<br />
<br />
=== Other ===<br />
* [[AST2500|ASPEED AST2500]]. Works in both the main OS (LE mode) and Petitboot. BE mode partially works (doesn't crash, but colors are wrong unless you apply a patch that is harmful to performance). On Linux 5.6+, [https://forums.raptorcs.com/index.php/topic,31.0.html 1920x1200 resolution is broken]. <code>ast</code> Linux driver.<br />
* [https://www.climaxdigital.co.uk/CUH195-USB-2-to-DVI-VGA-or-HDMI-Adaptor-1080p-full-hd ClimaxDigital CUH195 USB 2.0 Graphic Adapter] - Based on DisplayLink DL-3500 chipset. Works in the main OS; not tested with Petitboot but is likely to work there too.<br />
* EVGA 100-U2-UV12-A1 UV Plus USB VGA Adapter - DisplayLink Based - Petitboot shows up without loading firmware. Not tested in OS.<br />
<br />
=== Non-working ===<br />
<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=244 ASPEED AST1300]. Older revision of the AST2510 (AST1300 is 4th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. [https://github.com/open-power/skiboot/issues/257 Open issue with Skiboot for getting it fixed.] Known suppliers of AST1300 devices are:<br />
** [https://iei.rs/IGCME-1300-R10 IEI Integration Corp IGCME-1300-R10] ([https://iei.rs/image/cache/data/IGCME-1300_20131105.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0D332000196276623429/IGCME-1300%20QIG%20V1.01_20120531.pdf Quick Installation Guide])-- Resold by:<br />
*** [http://archivecaslytosk.onion/QZROL eBay example 1]<br />
*** [https://www.ebay.com/p/1383304505 eBay example 2]<br />
*** [https://web.archive.org/web/20171003045507/http://neutronusa.com/prod.cfm/1525210/ NeutronUSA] (Warning: non-TLS link!)<br />
*** [https://forums.servethehome.com/index.php?threads/fs-us-ny-intel-x540-t2-minipcie-vga-slim-120mm-fans.26880/ ServeTheHome]<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=455 ASPEED AST2510]. It's the GPU component of the [[AST2500]] without the BMC component. VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). Might be useful for users who want to add additional VGA displays beyond the single VGA display supported by the built-in AST2500, with similar freedom and performance properties as the AST2500. <code>ast</code> Linux driver. Known suppliers of AST2510 devices are:<br />
** [https://www.win-ent.com/1U-Rackmount-Platforms/pl-81280 WIN Enterprises IP-492B]<br />
** AEWIN Technologies R492B<br />
*** Distributed as add-on for these servers:<br />
**** [https://www.aewin.com/products/scb-1921a/ SCB-1921A]<br />
**** [https://www.aewin.com/zh-hans/products/scb-1925/ SCB-1925] ([https://www.aewin.com/wp-content/uploads/2019/11/SCB-1925.pdf datasheet])<br />
**** [https://www.aewin.com/zh-hant/products/scb-1935a/ SCB-1935A] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
**** [https://www.aewin.com/products/scb-1935b/ SCB-1935B] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=377 ASPEED AST1400]. Older revision of the AST2510 (AST1400 is 5th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. Known suppliers of AST1400 devices are:<br />
** [https://iei.rs/IGCME-1300-R11 IEI Integration Corp IGCME-1300-R11] ([https://iei.rs/image/cache/data/IGCME-1300_MPCIE-USB3.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0F233000410888189307/IGCME-1300%20QIG%20V1.10_20150819.pdf Quick Installation Guide]) -- Resold by:<br />
*** [https://eu.mouser.com/ProductDetail/IEI/IGCME-1300-R11?qs=wd5RIQLrsJgucg6W4Ojybw%3D%3D Mouser]<br />
*** [https://www.amazon.com/IEI-Technology-IGCME-1300-R11-Adapter-AST1400/dp/B07WRVK8DR Amazon]<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/IGCME-1300/IGCME-1300.htm Kacer]<br />
*** [https://www.alibaba.com/product-detail/IEI-IGCME-1300-R11-PCIe-Mini_60839628812.html Alibaba]<br />
*** [https://www.icpamerica.com/igcme-1300-add-on-card/ ICP America]<br />
* SiliconMotion SM750. Chipset is VGA + DVI (dual display) 1920x1440, but some devices may not support the full chipset resolution; appears to have 2D acceleration (not just framebuffer). Appears to be fixed-function silicon (no firmware). PCIe interface. <code>sm750fb</code> Linux driver is in staging. [https://gitlab.com/sudipm/sm750/tree/sm750 <code>sm750</code> Linux driver] is not yet merged to mainline. <code>sm750</code> Linux driver has some weird license text, but [https://github.com/torvalds/linux/commit/81e0da703fdba1ee126868bf8350592c79cdba13 according to Greg Kroah-Hartman] it sounds like the authors intend it to be GPLv2; would be useful to double-check with Greg/Sudip/Teddy whether Silicon Motion's statement to Greg applies to Sudip's <code>sm750</code> or if it only applies to mainline's <code>sm750fb</code>. Known suppliers:<br />
** [https://www.cervoz.com/product.php?id=c39eb02c-014a-1000-a04b-001851f77c0c Cervoz MEC-DIS-M002]. VGA + DVI (dual display) 1280x1024 @ 60Hz. Mini-PCIe form factor. Resold by:<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/MEC-DIS-M002/MD02.html Kacer]<br />
*** [https://www.texim-europe.com/product/MEC-DIS-M002 Texim Europe]<br />
*** [https://www.bvm.co.uk/products/1053-Mini-PCI-Express-DVI-VGA-Module-MEC-DIS-M002/ BVM]<br />
*** [https://web.archive.org/web/20200704052513/https://nerugged.com/product/mec-dis-m002-mpcie-dvi-vga-controller/ New England Rugged]<br />
** [https://web.archive.org/web/20200707045733/http://www.smartnre.com/en/product/Fastwel_VIM552_3U_CPCI_Graphics_Module.html Fastwel VIM552] (Warning: non-TLS link!)<br />
** [https://www.memorydepot.com/detail/EMPV-1201-C1.html Innodisk EMPV-1201-C1]<br />
** [https://www.memorydepot.com/detail/EMPV-1202-C1.html Innodisk EMPV-1202-C1]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1760 SUNIX VGA0419]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1766 SUNIX VGA0429]. Resold by:<br />
*** [https://www.dc3.co.za/computer-store/sc-svga0429/ DC3 Distribution]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1817 SUNIX VGA0449M]<br />
** [https://www.vadatech.com/product.php?product=368 VadaTech AMC348]<br />
** [https://www.vadatech.com/product.php?product=151 VadaTech AMC349]<br />
** [https://www.versalogic.com/product/video-expansion-module/ VersaLogic VL-MPEe-V5]<br />
* DisplayLink<br />
** [https://www.climaxdigital.co.uk/epages/BT3449.sf/en_GB/?ObjectPath=/Shops/BT3449/Products/111216 ClimaxDigital CUH350]<br />
*** Based on DisplayLink DL-3500 chipset.<br />
*** ClimaxDigital claims 1920x1200; DisplayLink chipset docs claim 2560x1600.<br />
** [https://www.startech.com/en-us/audio-video-products/usb2dvimm6 StarTech USB2DVIMM6]<br />
*** Based on DisplayLink DL-165 chipset.<br />
*** 1680x1050.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2dvimm6/p/N82E16815158183 NewEgg].<br />
** [https://www.startech.com/en-us/audio-video-products/usb2dvipro2 StarTech USB2DVIPRO2]<br />
*** Based on DisplayLink DL-195 chipset.<br />
*** 1920x1200.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2dvipro2/p/N82E16812400361 NewEgg].<br />
** [https://www.startech.com/en-us/audio-video-products/usb2vgapro2 StarTech USB2VGAPRO2]<br />
*** Based on DisplayLink DL-195 chipset.<br />
*** 1920x1200.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2vgapro2/p/N82E16812400368 NewEgg].<br />
<br />
== Sound Cards ==<br />
<br />
===Working===<br />
* Creative Sound Blaster Audigy FX SB1570 PCIe 5.1 Sound Card<br />
* Creative Sound Blaster X-Fi Xtreme Fidelity PCIe Audio Sound Card (SB0880)<br />
* AMD Radeon HD 5850 and 7950 (HDMI audio)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=156&p_name=+USB+Stereo+Audio+Adapter&pc_id=9&pc_name=Adapters&pt_id=3&pt_name=Audio+%2B++Video#tab-1 VANTEC NBA-120U (USB)]<br />
* Sabrent USB External Stereo Sound Adapter (AU-MMSA)<br />
* [https://mackie.com/products/onyx-blackjack Mackie Onyx Blackjack (USB) Recording Interface]<br />
* RME HDSPe AIO (FreeBSD tested)<br />
* Leveraged Sabrent Bluetooth 4.0 USB adapter (model BT-UB40) to connect to wireless Bluetooth headphones, specifically Bose Quiet Comfort 35.<br />
<br />
===Non-working===<br />
* ASUS Xonar SE - Contains ASMedia USB host controller with errant DMA access flaw<br />
* Creative Sound Blaster Audigy PCIe RX 7.1 - unable to enable emu10k1 driver on little-endian power9 kernel as driver requires ZONE_DMA<br />
<br />
==USB Host Controllers==<br />
===Working===<br />
* Insignia USB 3.0 PCI-e NS-PCCUP53 V1.0 (Chipset: NEC D720202)<br />
* AGAXO PCEU-23R (Chipset: Renesas uPD720202, PCI id 1912:0015)<br />
* Terminus Technology Inc. FE 2.1 7-port Hub<br />
* [https://www.sonnettech.com/product/legacyproducts/allegroprousb3pcie.html Sonnet Allegro Pro USB 3.0 PCIe USB3-PRO-4PM-E] (Chipset: Four [http://www.frescologic.com/product/single/fl1100ex/ Fresco Logic FL1100EX] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8608 PLX PEX 8608] switch)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=125&p_name=+4-Port+SuperSpeed+USB+3.0+PCIe+Host+Card+w%2F+Internal+20-Pin+Connector&pc_id=16&pc_name=USB&pt_id=4&pt_name=Add-on+Cards Vantec UGT-PC345 4 Port USB 3.0 PCIe w/ Internal 20 pin] (Chipset: Renesas uDP720201)<br />
* [https://www.amazon.com/gp/product/B07H4HJNJC] (monster card with 8 ports of USB 3.0) four Renesas uPD720202 chips behind ASMedia 1806, card can be found under different brands but can be identified by the look. [http://sedna-shop.com/index.php?route=product/product&path=59_74&product_id=138 This should be the same card]<br />
* En-Labs PCI-e to 4 Ports USB 3.1 GEN 1 (5Gbps) (USB Type-C +USB Type A w/ Internal 19Pin USB 3.0 Dual Port) PCI Express Card (Chipset: ASMedia ASM1042A)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE3U1T-A31" and "VER 006S" markings on the PCB.<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=818 IOCrest SI-PEX20189] (Chipset: ASMedia ASM1142)<br />
** Requires kernel version 4.14.194, 4.19.139, 5.4.58, 5.7.15, 5.8.1, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [http://ableconn.com/products_2.php?gid=121 Ableconn PU31-2C-2] (Chipset: ASMedia ASM2142)<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* Semoic USB 3.1 to Type-C 2 Port Expansion Card (Chipset: ASMedia ASM3142, same PCI IDs as ASM2142)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE2TYC-A31", "VER006", "USB 3.1 Type-C 2-Port Card", and "PCE-E 4X" markings on the PCB.<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [https://www.orico.cc/us/product/detail/7192.html ORICO PE20-1C] (Chipset: ASMedia ASM3242)<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
<br />
===Non-working===<br />
In general, USB3 host controllers based on ASMedia chipsets are known to be problematic, due to ASMedia hardware or firmware bugs causing errant DMA accesses to invalid regions of host memory.<br />
<br />
* AXAGON PCEU-43V - chipset Via VL805 - PCI id 1106:3483<br />
* StarTech PEXUSB314A2V - 2x ASM1142 host controllers and a PCIe switch<br />
** This card completely fails to be detected.<br />
* QNINE USB 3.1 Gen2 (Type-A and Type-C) - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* Rosewill RC-509 - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1022A-Series.htm HighPoint RocketU 1022A] (Chipset: ASMedia ASM1042)<br />
** Skiboot reports that the PCIe link is unstable when the card is connected directly, but it seems to work when the card is plugged in via a PCIe switch.<br />
** This chip seems somewhat unreliable, since USB reads can fail after only a few tens of gigabytes have been transferred.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1144A-Series.htm HighPoint RocketU 1144A] (Chipset: Chipset: Four ASMedia ASM1042 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
** Skiboot sometimes times out when scanning for the ASM1042 controllers attached to the PEX 8609 ("Timeout waiting for downstream link"), resulting in some of the ports effectively being disabled until the next boot.<br />
** The ASM1042 controller seems somewhat unreliable.<br />
*** Lots of resets on USB 3.<br />
*** Long reads from a single USB hard drive can sometimes result in I/O errors.<br />
*** Incompatible with some USB hard drives.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=54 SEDNA - PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC)<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=99 SEDNA - PCIe 4 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://www.startech.com/Cards-Adapters/USB-3.0/Cards/7-port-pci-express-usb-3-card~PEXUSB3S7 StarTech PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://highpoint-tech.com/USA_new/series-ru1344a-overview.htm High Point RocketU 1344A 4-Port USB 3.1 PCI-Express 3.0 x 4 HBA] (Chipset: Two ASMedia ASM3142 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8714 PLX PEX 8714] switch)<br />
* [https://highpoint-tech.com/USA_new/series-ru1144d-overview.htm High Point RocketU 1144D 4-Port USB 3.0 PCI-Express 2.0 x 4 HBA] (Chipset: Four ASMedia ASM1042A controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
* [https://www.sonnettech.com/product/allegro-usbc-pcie.html Sonnet Allegro USB-C PCIe Card USB3C-2PM-E] (Chipset: ASMedia ASM1142/ASM3142 (cards shipped before April 2020 use the ASM1142 controller))<br />
* [https://www.sonnettech.com/product/allegro-usbc-4port-pcie.html Sonnet Allegro USB-C 4-Port PCIe Card USB3C-4PM-E] (Chipset: Two ASMedia ASM1142/ASM3142 controllers (cards shipped before January 2020 use ASM1142 controllers) behind one [https://www.diodes.com/part/view/PI7C9X2G308GP Pericom PI7C9X2G308GP] switch)<br />
* [https://www.gigabyte.com/Motherboard/GC-USB-32-GEN2X2 Gigabyte GC-USB 3.2 GEN2X2] (Chipset: ASMedia ASM3242)<br />
<br />
==TV Tuners==<br />
* [https://hauppauge.com/pages/products/data_quadhd.html Hauppauge WinTV-quadHD] (Chipset: Four Silicon Labs Si2157 tuners, four LG LG3306A demodulators, and two Conexant CX23888 PCIe interface chips behind one [https://www.diodes.com/part/view/PI7C9X2G304EL Pericom PI7C9X2G304EL] PCIe switch)<br />
* Hauppauge WinTV HVR-850 (2040:7240) - ATSC - using Kaffeine<br />
<br />
==Firewire Host Controllers==<br />
===Working===<br />
<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=119 Syba SY-PEX30016] (Chipset: TI XIO2213B)<br />
** Requires [https://marc.info/?l=linux1394-devel&m=157207806405627&q=mbox this patch] to work on kernels with a 64k page size.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
<br />
* [http://www.dawicontrol.com/index.php?cmd=proddet&id=media Dawicontrol DC-FW800] (Chipset: TI XIO2213B)<br />
* [https://www.delock.de/produkte/G_89210/merkmale.html?setLanguage=en DeLOCK 3x FireWire 800, Item No. 89210] (Chipset: TI XIO2213B)<br />
* [https://www.digitus.info/en/products/computer-components/computer-peripherals/serial-parallel-adapter/ds-30203-2/ DIGITUS Firewire 800 (1394b) PCIe Card] (Chipset: TI XIO2213B)<br />
* [https://www.exsys.de/index.php?page=product&info=127 Exsys EX-16415] (Chipset: TI XIO2213)<br />
* [https://www.exsys.de/index.php?page=product&info=366 Exsys EX-16512E] (Chipset: TI)<br />
* [http://www.ioi.com.tw/products/proddetail.aspx?CatID=106&DeviceID=3021&HostID=2009&ProdID=1060100 IOI Technology FWB-PCIE1X11A] (Chipset: TI XIO2213B)<br />
[[Category:Compatibility List]]<br />
<br />
==Video Capture Cards==<br />
* [https://www.avermedia.com/professional/product/ce310b/overview AVerMedia CE310B] (Chipset: Conexant CX23888)<br />
** Requires kernel version 4.19.106, 5.4.22, 5.5.6, or later.<br />
<br />
==Serial Port Adapter Cards==<br />
===Working===<br />
* EXSYS EX-44072 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44073 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44171 PCI-Express 1x Serial RS-232 / 1x Parallel Multi I/O Card (Chipset: Oxford OXPCIe952)<br />
** ''The UARTs implemented with the Oxford Semiconductor OXPCIe952 PCIe ASIC can be strapped for either native or legacy operation. The EXSYS boards configure it for the native mode and therefore work with the PHB4 just fine.<br>NB the PC parallel port is always a legacy PCIe device and therefore cannot work with the PHB4.''<br />
<br />
==PCIe/PCI Expansion==<br />
===Working===<br />
* [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/490/pcie-adapter-card-for-ex-1010/1031/1032/1041/1042 EXSYS EX-1095 PCIe Adapter card for EX-1010/1031/1032/1041/1042]<br />
** [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/1144/expansion-box-with-4-x-pci-slots-38cm-length-220w-power-supply EXSYS EX-1031 Quad PCI-Slot Expansion Box] (Chipset: TI XIO2000A)<br />
*** 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]<br />
*** DEC FDDIcontroller/PCI (DEFPA) PCI FDDI [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=Talos_II/Hardware_Compatibility_List&diff=3566Talos II/Hardware Compatibility List2021-10-21T15:58:24Z<p>Chatcannon: /* AT/EVEREX (not compatible) */ Rearrange wiring from StarTech</p>
<hr />
<div>This is a collection of components known to work with the [[Talos_II|Talos™ II]]-based solutions. It's maintained by both [[Raptor Computing Systems|Raptor CS]] and community members.<br />
<br />
== Cases ==<br />
<br />
=== Good Cases ===<br />
<br />
These cases were successfully used by someone.<br />
<br />
* '''InWin 909'''<br />
** Installation: Full-tower easily houses Talos II motherboard additionally requires no modifications, compatible out of the box.<br />
** Note on Second CPU: Second CPU installation may be difficult in this case due to front panel connectors being too short and requiring a routing configuration that blocks second CPU installation. Accommodating a second CPU likely requires pulling out the soldering iron and extending the connectors.<br />
** General Note: Case is almost one-solid piece of aluminum and tempered glass; just one of the best looking cases on the market if one can find it.<br />
<br />
* '''SuperMicro SC732i-500B'''<br />
** Not recommended for 12 core and higher CPUs<br />
<br />
* '''SuperMicro SC732D3-903B'''<br />
** No NIC 2 LED on front panel<br />
** Needed [https://www.startech.com/Cables/Computer-Power/Internal/12in-4-Pin-Fan-Power-Extension-Cable~FAN4EXT12 four pin extension cable] for main chassis fan<br />
<br />
* '''SuperMicro SC732D4-903B'''<br />
** Add-on sound card recommended<br />
** Add-on USB 2.0 card or USB 3.0 hub recommended<br />
<br />
* '''SuperMicro 743AC-1200B-SQ''' ([[User:Gyakovlev|Gyakovlev]])<br />
** Hot swap drive capable; supports 12GB/s SAS3. Backplane uses 2 x Mini-SAS SFF-8643 ports, same as on Talos II board with SAS option.<br />
** Front panel is USB3.0, unlike many older Supermicro models, cable reaches board USB3.0 header easily.<br />
** Quiet. Handles 2x22 core CPUs just fine.<br />
** No standoff issues. Board fits like a glove, but to get it in removal of CPU0 Heatsink (closest to back panel) is required.<br />
** '''DO NOT PLUG PMBus''' PSU connector to motherboard. There's i2c conflict with PMBus and fan/thermal contriller and FPGA i2c will be inoperational until ATX power is on.<br />
<br />
* '''SuperMicro SC747TQ-R1400B or SC747TG-R1400B-SQ'''<br />
** Hot swap drive capable; SAS recommended<br />
** Recommended for use with one or more high-end GPUs<br />
** Listed as EoL by Supermicro, replaced with 1620 versions. Same fan modules and PDU used in newer, higher watt, version. ([[User:Robbieab|Robbieab]] ([[User talk:Robbieab|talk]]))<br />
** [[:File:TalosII_SystemAssembly_nashimus_v3.mp4|System Assembly Video - SC747TG-R1400B-SQ]]<br />
<br />
* '''Rosewill RSV-L4500'''<br />
** Fans are two wire and use molex connectors<br />
<br />
* '''TCG TGC-H4-650'''<br />
** Physical dimensions and mounting hardware fit perfectly<br />
** Extremely Inexpensive Bare-bones 4U Chassis<br />
<br />
* '''Lian Li PC-P80'''<br />
** Missing one standoff by the I/O shield<br />
** PW-IS40AV85AI0 upgrades the front panel to USB3<br />
<br />
* '''[https://www.inter-tech.de/en/products/ipc/storage-cases/4u-4408 Intertech IPC 4U 4408]'''<br />
** Fit perfectly with 10 standoff and I/O shield<br />
** Comes with two (somewhat noisy) 80mm fans with 4-wire connectors. Front-panel 2xUSBv3.0 3xNIC LEDs, Reset+Power.<br />
** Hot-swap SATA/SAS backplane<br />
** Too short for dual CPU but works great with Thalos II Lite and single 18-core CPU<br />
** Fairly cheap (~200 EUR)<br />
** Consider [https://www.inter-tech.de/en/products/ipc/server-cases/4u-4129-n Intertech IPC 4U 4129-N] for dual CPU which is a longer case<br />
<br />
* '''Fractal Design Meshify 2 XL'''<br />
** All standoffs fit.<br />
** The motherboard covers some of the holes that pass between the cable routing area behind the motherboard and the main space above the motherboard.<br />
** Using a Fractal Design PSU, the cable for the ATX 24-pin power cable is too short to pass through the cable routing space and therefore must pass over the front of the board.<br />
** The screws that come with the case are coated with black enamel which is electrically insulating, so might not provide sufficient grounding.<br />
<br />
=== Problematic Cases ===<br />
<br />
* '''BeQuiet Dark Base 900''' ([[User:Robbieab|Robbieab]] ([[User talk:Robbieab|talk]]))<br />
** Claims to support E-ATX on the BeQuiet website<br />
** Infographic showing the motherboard space to only be 322mm deep, which is 8.2mm short of the full-size E-ATX. <br />
** Emailed them for clarification, but no response. Can't confirm either way.<br />
<br />
* '''SuperMicro SC822'''<br />
** Low speed fans provide insufficient airflow over CPU0, leading to overheating if more than one 4-core CPU is installed.<br />
<br />
* '''Supermicro SC747TQ-R1620B''' ([[User:Gyakovlev|Gyakovlev]])<br />
<br />
** SuperMicro PWS-1K62P-1R PSUs are defective as designed and a hardware fix is required, this thing is literally feeding PWM signals into a *protection system level gated pin* //(Talos™ II Secure Workstation TL2WK2 is unaffected, as there's a hardware fix RCS developed and deploys on the TL2WK2)<br />
** Partial mitigation possible with [https://git.raptorcs.com/git/talos-system-fpga/commit/?id=16ef5424b780b116a7473f5fd3e511ec574f0181 patch for FPGA ] and external programmer (Bus Pirate 3.6a works) to flash it. After flashing place jumper on FPGA mode switch 1 header (page 39 of current manual). Fix is just a hack and unreliable.<br />
** Said PSUs are VERY loud.<br />
** probably possible to mitigate both mentioned problems by installing 2xPWS-1K28P-SQ (verification in progress, will update page)<br />
*** I ([[User:Ullbeking|Ullbeking]]) am currently experiment with 2x PWS-1K28P-SQ in my SC747 chassis, as replacements for the 2x PSW-1K41P-SQ that the system came with.<br />
**** Current status is that BMC is powered on and serving SSH login on its NIC and its serial console, but host machine boot doesn't work. All I have attempted so far is a simple swap of the PSU's, and I have tested all possible combinations of PWS-1K28P-SQ PSU's.<br />
**** Next steps include the following: update the FPGA firmware (possibly including patch above), update OpenBMC firmware, update PNOR firmware; all updates should converge to a "known good" combination of firmware versions.<br />
<br />
* '''Athena Power RM-3U8G1043'''<br />
** Some motherboard standoffs needed to be removed, and others needed additional hight.<br />
**There was no standoff hole for the top right. <br />
**The support beam across the top of the case interferes with CPU2 heatsink, but can be easily removed.<br />
<br />
==== Standoff Issues ====<br />
<br />
Stand off issues appear to be a very common problem. In many cases mitigation may be possible.<br />
<br />
* '''Fractal Design Define XL R2'''<br />
** Missing standoff holes for the top-left and top-middle positions.<br />
** Some alternative standoff in at least the top-middle position may be required to prevent too much bending of the motherboard while inserting RAM.<br />
<br />
* '''BitFenix Aurora'''<br />
** [[User:MarcusC/BitFenix_Aurora|Multiple missing standoff holes]], some mitigation possible.<br />
<br />
* '''Thermaltake Core W100''' (See the ''[https://wiki.raptorcs.com/wiki/Category:Gallery Morgan's Revenge]'', by [[User:Peter Easton|JollyRoger]])<br />
** The positions of some standoffs are under components mounted on the back of the board. Careful measurement and attachment of only the standoffs that fit prior to installation of the motherboard is ''a necessity'' to avoid damaging the motherboard upon installation.<br />
** An add-on internal USB header is necessary to activate the extra 2 USB3 ports on the front panel.<br />
** The case is very spacious, with plenty of room and lots of space for many fans. Works well to provide necessary airflow and pressure within the case. <br />
** It is extremely important to have a good quality, powerful fan capable of withstanding high temperatures is required for the rear exhaust fan, which is very close to the rear CPU exhaust. A low quality fan in the rear exhaust port may hinder cooling.<br />
<br />
* '''Thermaltake Core W200'''<br />
** Heavy, expensive, massive.<br />
** Compatible ''with caveats''<br />
*** Talos™ II mainboard will fit in E-ATX compatible side only (when viewed from rear of case, the right side) if the dual system case.<br />
*** Missing standoff holes for the top-left and top-middle positions. (non-essential but ensure proper support when inserting and removing RAM to avoid bending mainboard)<br />
*** Must remove wire-hole rubber grommets present under Talos™ II mainboard on right lower side for proper fit<br />
<br />
* '''Nanoxia Deep Silence2''' ([[User:Sharkcz|Sharkcz]], [[User:q66|q66]])<br />
** missing top-middle standoff hole, but I've used a plastic "flat" standoff instead ([[User:Sharkcz|Sharkcz]])<br />
** also missing top-left standoff hole at least on earlier DS2 revisions ([[User:q66|q66]], solved by drilling holes for both top-left and top-middle without using plastic standoffs, I sent feedback to Nanoxia in late December 2016 so perhaps the top-left hole was introduced silently)<br />
** all other standoff holes are present on the case<br />
** Power LED - red goes to pin 15, black to pin 16<br />
<br />
* '''RAIJINTEK ASTERION PLUS (Model 0R200049)''' ([[User:cyrozap|cyrozap]])<br />
** Missing standoff holes for the top-left and top-middle positions.<br />
*** As a workaround the standoffs can be unscrewed and placed upside-down (screw threads facing up) under the motherboard holes.<br />
*** This actually works surprisingly well, and thanks to the other screw points the motherboard is rigid enough that I don't worry too much about the weight of the HSFs flexing it.<br />
*** That said, it's probably a good idea to always transport the system on its side and avoid bumping it if possible.<br />
** The hinged panels that open with handles are much nicer than fiddling with thumb screws, but annoying since it makes it slightly trickier to do things that involve both the inside and back panel of the case (e.g., inserting PCI-e cards).<br />
** The PSU is at the very bottom of the case, while all the motherboard power connectors are at the very top of the case, so this can cause some issues if your PSU's cables aren't long enough.<br />
*** The EPS12V cables on my power supply had a few inches left over, but the main motherboard power cable was just barely able to reach from the other side of the case to the power connector.<br />
** The front of the case is sheet metal stuck to plastic using some double-sided adhesive tape, which doesn't seem to work very well.<br />
*** When I received the case the front metal was starting to peel off a few inches (several cm) at the top and bottom.<br />
*** It sticks back in place when I press on it, but I may need to get some better adhesive and re-apply it later.<br />
** For $170, I was hoping for something a little more robust, but at least it's pretty.<br />
<br />
* possible mitigation is plastic standoff like [https://www.kangyang-europe.com/product/pc-board-hardware/ass-10/ ASS-10]<br />
<br />
* '''Corsair 760T''' ([[User:mosst|mosst]])<br />
** Reasonably cheap.<br />
** Unusually tasteful aesthetics for a consumer/gaming case. Looks like something Aperture Science would come up with.<br />
** E-ATX boards fit, but the top-left and top-middle standoffs are missing, however this isn't much of a problem as the I/O panel helps hold the board in place.<br />
** Cable management may be difficult, as E-ATX boards cover most of the cable holes.<br />
<br />
* '''Lian Li PC-V1000L''' ([[User:Maxmillian|Maxmillian]] ([[User talk:Maxmillian|talk]]))<br />
** Very "Apple" brushed aluminum aesthetic.<br />
** E-ATX boards fit, but standoff holes for the top-left and top-middle positions are missing. There's a hole where the top-right standoff is supposed to be, but it's too big to screw in an ordinary standoff.<br />
<br />
=== Candidate Cases ===<br />
<br />
These cases claim E-ATX support and are planned to be used, or were considered, by someone.<br />
<br />
*'''Ceptagon CP-M1 (Vertical Case)'''<br />
** form factor is weird<br />
** It's a really tight fit for e-atx, but it works.<br />
** You can fit in a talos 2 lite<br />
** a talos 2 probably won't be able to fit without taking off one of the coolers to get the motherboard in, and then putting the cooler back on<br />
<br />
== CPU Cooling Modifications ==<br />
While not officially supported, some users have chosen to modify the cooling of their systems and are satisfied with the improved cooling and decreased sound. Proceed with caution.<br />
* [[Dual 92mm fan CPU]]<br />
<br />
== Power Supplies ==<br />
When planning to run with both CPU sockets populated keep in mind that the power-supply should support also 2 8-pin EPS connectors.<br />
<br />
* Seasonic - for spare cables (for example because you have the AOC-SHG3-4M2P card that requires additional 12V input) contact [https://www.sander-europe.eu/ sander-europe.eu], got routed there by Seasonic [https://seasonic.com/contact-us support]<br />
* Seasonic PRIME 1300W<br />
* Seasonic PRIME Ultra 850W Gold (SSR-850GD)<br />
* Seasonic PRIME Ultra 650W<br />
* Seasonic PRIME Ultra Titanium 1000W (SSR-1000TR)<br />
* Seasonic Focus GX 750W (includes 2 EPS cables)<br />
* FSP Group Twins ATX 1+1 Dual Module 700W 80 PLUS GOLD Hot Swappable Redundant Digital Power Supply ([[User:ebrasca|ebrasca]])<br />
** Customer reported good build quality and proper functionality<br />
* Corsair TX550M 80+ GOLD ([[User:MarcusC|MarcusC]])<br />
** 2nd EPS power cable sold separately<br />
* Corsair AX860 <br />
* EVGA SuperNova 1200P2 1200W Platinum([[User:mosst|mosst]])<br />
** Works well, but the included ATX power cables may be too short if your PSU is mounted on the bottom of the case.<br />
* SilverStone Strider gold S series 850W ATX. 80 plus gold certification. ([[User:Xilinder|Xilinder]])<br />
* [https://www.silverstonetek.com/product.php?pid=226 SilverStone Strider ST1500]<br />
<br />
== Memory ==<br />
See [[POWER9 Hardware Compatibility List/Memory]].<br />
<br />
== PCIe Devices ==<br />
See [[POWER9 Hardware Compatibility List/PCIe Devices]].<br />
<br />
== SAS/SATA Storage Drives ==<br />
<br />
Connected via optional on-board [[PM8068]] controller, or via PCIe controller. NVMe cards are also [[POWER9 Hardware Compatibility List/PCIe Devices#NVMe Drives|supported]].<br />
<br />
Boards with onboard SAS have one Mini-SAS HD 4i (SFF-8643) port, and four standard SATA-III ports. Both support both SAS and SATA at the electrical level.<br />
<br />
Note: Microsemi Adaptec Series 8 RAID controllers [http://download.adaptec.com/pdfs/readme/microsemi_series-8-controller_readme_4_2018.pdf do not support ATAPI CD-ROM, DVD, or tape devices.]<br />
<br />
== Serial Adapters for J7701 Header ==<br />
* [http://pinoutguide.com/Motherboard/rs232_header_pinout.shtml Pinout Details]<br />
=== DTK/INTEL (compatible) ===<br />
* CablesToGo 09480 (unverified)<br />
* [https://www.pccables.com/DB9M-TO-IDC10-SERIAL-DTK-PORT.html DB9M TO IDC10 SERIAL DTK PORT 07121]<br />
* Assmann Serial Slot Bracket AK-610300-003-E<br />
** Sold under PremiumCord brand (used by [[User:Sharkcz|Sharkcz]])<br />
** These are also available from Dodax.co.uk as the Digitus AK-610300-003-E[https://www.dodax.co.uk/en-gb/electronics/interface-cards-adapters/digitus-digitus-ak-610300-003-e-dpVEDMTJ26MK9/] (tested by [[User:Ullbeking|Ullbeking]])<br />
* E-ITX ACC3100[https://www.amazon.com/dp/B00DSTTDQW/] (tested by [[User:Bdragon|Bdragon]])<br />
* Supermicro CBL-0010L<br />
* InLine Serielles Slotblech 33209[https://www.ebay.de/itm/InLine-Serielles-Slotblech-9-pol-Stecker-an-10-pol-Buchsenleiste/362007531954?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2060353.m2749.l2649] (tested by CrystalGamma)<br />
<br />
=== AT/EVEREX (not compatible) ===<br />
* StarTech PLATE9M16 - N.B. it is possible to disassemble the IDC connector, rearrange the wires from the ribbon cable and reassemble it to get the correct wiring.<br />
* Gigabyte COM port<br />
* CablesToGo 27550 (labelled Intel-compatible, but does not work) [https://www.cablestogo.com/product/27550/16in-db9m-serial-rs232-add-a-port-adapter-cable-with-bracket-for-intel-motherboards]<br />
<br />
== Serial Adapters for BMC TTL Auxiliary Serial Header ==<br />
* Adafruit USB to TTL Serial Cable - Debug / Console Cable for Raspberry Pi [https://www.adafruit.com/product/954]<br />
<br />
Unfortunately the auxiliary serial port is disabled in software by default. To enable it temporarily for a given boot, interrupt U-Boot through the serial port in the prior section, and then enter the following commands at the '''ast#''' prompt:<br />
<br />
<pre><br />
setenv fit 0x20080000<br />
setenv other_rfs 0x20300000<br />
setenv uart2_fdt 0x90000000<br />
fdt addr ${fit}<br />
fdt get addr fit_fdt /images/fdt@1 data<br />
fdt move ${fit_fdt} ${uart2_fdt}<br />
fdt addr ${uart2_fdt}<br />
fdt resize<br />
setenv pin_path "/ahb/apb/syscon@1e6e2000/pinctrl@1e6e2000/"<br />
setenv phandle 80<br />
for pin in txd2 rxd2 nrts2 ndtr2 ndsr2 ncts2 ndcd2 nri2<br />
do<br />
fdt set ${pin_path}${pin}_default linux,phandle <${phandle}><br />
fdt set ${pin_path}${pin}_default phandle <${phandle}><br />
setexpr phandle ${phandle} + 1<br />
done<br />
setenv uart2_path "/ahb/apb/serial@1e78d000"<br />
fdt set ${uart2_path} status "okay"<br />
fdt set ${uart2_path} pinctrl-names "default"<br />
fdt set ${uart2_path} pinctrl-0 <0x00000050 0x00000051 0x00000052 0x00000053 0x00000054 0x00000055 0x00000056 0x00000057><br />
fdt addr ${fit}<br />
if fdt get value ramdisk_conf /configurations/conf@1 ramdisk<br />
then<br />
bootm ${fit}#conf@1 ${fit}#conf@1 ${uart2_fdt}<br />
else<br />
bootm ${fit}#conf@1 ${other_rfs} ${uart2_fdt}<br />
fi<br />
</pre><br />
<br />
After the system has booted, you can enable logins over the auxiliary serial port with:<br />
<br />
<pre><br />
systemctl start serial-getty@ttyS1.service<br />
</pre><br />
<br />
[[Category:Compatibility List]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=Talos_II/Hardware_Compatibility_List&diff=3565Talos II/Hardware Compatibility List2021-10-21T15:56:29Z<p>Chatcannon: /* Good Cases */ Fractal Design Meshify 2 XL</p>
<hr />
<div>This is a collection of components known to work with the [[Talos_II|Talos™ II]]-based solutions. It's maintained by both [[Raptor Computing Systems|Raptor CS]] and community members.<br />
<br />
== Cases ==<br />
<br />
=== Good Cases ===<br />
<br />
These cases were successfully used by someone.<br />
<br />
* '''InWin 909'''<br />
** Installation: Full-tower easily houses Talos II motherboard additionally requires no modifications, compatible out of the box.<br />
** Note on Second CPU: Second CPU installation may be difficult in this case due to front panel connectors being too short and requiring a routing configuration that blocks second CPU installation. Accommodating a second CPU likely requires pulling out the soldering iron and extending the connectors.<br />
** General Note: Case is almost one-solid piece of aluminum and tempered glass; just one of the best looking cases on the market if one can find it.<br />
<br />
* '''SuperMicro SC732i-500B'''<br />
** Not recommended for 12 core and higher CPUs<br />
<br />
* '''SuperMicro SC732D3-903B'''<br />
** No NIC 2 LED on front panel<br />
** Needed [https://www.startech.com/Cables/Computer-Power/Internal/12in-4-Pin-Fan-Power-Extension-Cable~FAN4EXT12 four pin extension cable] for main chassis fan<br />
<br />
* '''SuperMicro SC732D4-903B'''<br />
** Add-on sound card recommended<br />
** Add-on USB 2.0 card or USB 3.0 hub recommended<br />
<br />
* '''SuperMicro 743AC-1200B-SQ''' ([[User:Gyakovlev|Gyakovlev]])<br />
** Hot swap drive capable; supports 12GB/s SAS3. Backplane uses 2 x Mini-SAS SFF-8643 ports, same as on Talos II board with SAS option.<br />
** Front panel is USB3.0, unlike many older Supermicro models, cable reaches board USB3.0 header easily.<br />
** Quiet. Handles 2x22 core CPUs just fine.<br />
** No standoff issues. Board fits like a glove, but to get it in removal of CPU0 Heatsink (closest to back panel) is required.<br />
** '''DO NOT PLUG PMBus''' PSU connector to motherboard. There's i2c conflict with PMBus and fan/thermal contriller and FPGA i2c will be inoperational until ATX power is on.<br />
<br />
* '''SuperMicro SC747TQ-R1400B or SC747TG-R1400B-SQ'''<br />
** Hot swap drive capable; SAS recommended<br />
** Recommended for use with one or more high-end GPUs<br />
** Listed as EoL by Supermicro, replaced with 1620 versions. Same fan modules and PDU used in newer, higher watt, version. ([[User:Robbieab|Robbieab]] ([[User talk:Robbieab|talk]]))<br />
** [[:File:TalosII_SystemAssembly_nashimus_v3.mp4|System Assembly Video - SC747TG-R1400B-SQ]]<br />
<br />
* '''Rosewill RSV-L4500'''<br />
** Fans are two wire and use molex connectors<br />
<br />
* '''TCG TGC-H4-650'''<br />
** Physical dimensions and mounting hardware fit perfectly<br />
** Extremely Inexpensive Bare-bones 4U Chassis<br />
<br />
* '''Lian Li PC-P80'''<br />
** Missing one standoff by the I/O shield<br />
** PW-IS40AV85AI0 upgrades the front panel to USB3<br />
<br />
* '''[https://www.inter-tech.de/en/products/ipc/storage-cases/4u-4408 Intertech IPC 4U 4408]'''<br />
** Fit perfectly with 10 standoff and I/O shield<br />
** Comes with two (somewhat noisy) 80mm fans with 4-wire connectors. Front-panel 2xUSBv3.0 3xNIC LEDs, Reset+Power.<br />
** Hot-swap SATA/SAS backplane<br />
** Too short for dual CPU but works great with Thalos II Lite and single 18-core CPU<br />
** Fairly cheap (~200 EUR)<br />
** Consider [https://www.inter-tech.de/en/products/ipc/server-cases/4u-4129-n Intertech IPC 4U 4129-N] for dual CPU which is a longer case<br />
<br />
* '''Fractal Design Meshify 2 XL'''<br />
** All standoffs fit.<br />
** The motherboard covers some of the holes that pass between the cable routing area behind the motherboard and the main space above the motherboard.<br />
** Using a Fractal Design PSU, the cable for the ATX 24-pin power cable is too short to pass through the cable routing space and therefore must pass over the front of the board.<br />
** The screws that come with the case are coated with black enamel which is electrically insulating, so might not provide sufficient grounding.<br />
<br />
=== Problematic Cases ===<br />
<br />
* '''BeQuiet Dark Base 900''' ([[User:Robbieab|Robbieab]] ([[User talk:Robbieab|talk]]))<br />
** Claims to support E-ATX on the BeQuiet website<br />
** Infographic showing the motherboard space to only be 322mm deep, which is 8.2mm short of the full-size E-ATX. <br />
** Emailed them for clarification, but no response. Can't confirm either way.<br />
<br />
* '''SuperMicro SC822'''<br />
** Low speed fans provide insufficient airflow over CPU0, leading to overheating if more than one 4-core CPU is installed.<br />
<br />
* '''Supermicro SC747TQ-R1620B''' ([[User:Gyakovlev|Gyakovlev]])<br />
<br />
** SuperMicro PWS-1K62P-1R PSUs are defective as designed and a hardware fix is required, this thing is literally feeding PWM signals into a *protection system level gated pin* //(Talos™ II Secure Workstation TL2WK2 is unaffected, as there's a hardware fix RCS developed and deploys on the TL2WK2)<br />
** Partial mitigation possible with [https://git.raptorcs.com/git/talos-system-fpga/commit/?id=16ef5424b780b116a7473f5fd3e511ec574f0181 patch for FPGA ] and external programmer (Bus Pirate 3.6a works) to flash it. After flashing place jumper on FPGA mode switch 1 header (page 39 of current manual). Fix is just a hack and unreliable.<br />
** Said PSUs are VERY loud.<br />
** probably possible to mitigate both mentioned problems by installing 2xPWS-1K28P-SQ (verification in progress, will update page)<br />
*** I ([[User:Ullbeking|Ullbeking]]) am currently experiment with 2x PWS-1K28P-SQ in my SC747 chassis, as replacements for the 2x PSW-1K41P-SQ that the system came with.<br />
**** Current status is that BMC is powered on and serving SSH login on its NIC and its serial console, but host machine boot doesn't work. All I have attempted so far is a simple swap of the PSU's, and I have tested all possible combinations of PWS-1K28P-SQ PSU's.<br />
**** Next steps include the following: update the FPGA firmware (possibly including patch above), update OpenBMC firmware, update PNOR firmware; all updates should converge to a "known good" combination of firmware versions.<br />
<br />
* '''Athena Power RM-3U8G1043'''<br />
** Some motherboard standoffs needed to be removed, and others needed additional hight.<br />
**There was no standoff hole for the top right. <br />
**The support beam across the top of the case interferes with CPU2 heatsink, but can be easily removed.<br />
<br />
==== Standoff Issues ====<br />
<br />
Stand off issues appear to be a very common problem. In many cases mitigation may be possible.<br />
<br />
* '''Fractal Design Define XL R2'''<br />
** Missing standoff holes for the top-left and top-middle positions.<br />
** Some alternative standoff in at least the top-middle position may be required to prevent too much bending of the motherboard while inserting RAM.<br />
<br />
* '''BitFenix Aurora'''<br />
** [[User:MarcusC/BitFenix_Aurora|Multiple missing standoff holes]], some mitigation possible.<br />
<br />
* '''Thermaltake Core W100''' (See the ''[https://wiki.raptorcs.com/wiki/Category:Gallery Morgan's Revenge]'', by [[User:Peter Easton|JollyRoger]])<br />
** The positions of some standoffs are under components mounted on the back of the board. Careful measurement and attachment of only the standoffs that fit prior to installation of the motherboard is ''a necessity'' to avoid damaging the motherboard upon installation.<br />
** An add-on internal USB header is necessary to activate the extra 2 USB3 ports on the front panel.<br />
** The case is very spacious, with plenty of room and lots of space for many fans. Works well to provide necessary airflow and pressure within the case. <br />
** It is extremely important to have a good quality, powerful fan capable of withstanding high temperatures is required for the rear exhaust fan, which is very close to the rear CPU exhaust. A low quality fan in the rear exhaust port may hinder cooling.<br />
<br />
* '''Thermaltake Core W200'''<br />
** Heavy, expensive, massive.<br />
** Compatible ''with caveats''<br />
*** Talos™ II mainboard will fit in E-ATX compatible side only (when viewed from rear of case, the right side) if the dual system case.<br />
*** Missing standoff holes for the top-left and top-middle positions. (non-essential but ensure proper support when inserting and removing RAM to avoid bending mainboard)<br />
*** Must remove wire-hole rubber grommets present under Talos™ II mainboard on right lower side for proper fit<br />
<br />
* '''Nanoxia Deep Silence2''' ([[User:Sharkcz|Sharkcz]], [[User:q66|q66]])<br />
** missing top-middle standoff hole, but I've used a plastic "flat" standoff instead ([[User:Sharkcz|Sharkcz]])<br />
** also missing top-left standoff hole at least on earlier DS2 revisions ([[User:q66|q66]], solved by drilling holes for both top-left and top-middle without using plastic standoffs, I sent feedback to Nanoxia in late December 2016 so perhaps the top-left hole was introduced silently)<br />
** all other standoff holes are present on the case<br />
** Power LED - red goes to pin 15, black to pin 16<br />
<br />
* '''RAIJINTEK ASTERION PLUS (Model 0R200049)''' ([[User:cyrozap|cyrozap]])<br />
** Missing standoff holes for the top-left and top-middle positions.<br />
*** As a workaround the standoffs can be unscrewed and placed upside-down (screw threads facing up) under the motherboard holes.<br />
*** This actually works surprisingly well, and thanks to the other screw points the motherboard is rigid enough that I don't worry too much about the weight of the HSFs flexing it.<br />
*** That said, it's probably a good idea to always transport the system on its side and avoid bumping it if possible.<br />
** The hinged panels that open with handles are much nicer than fiddling with thumb screws, but annoying since it makes it slightly trickier to do things that involve both the inside and back panel of the case (e.g., inserting PCI-e cards).<br />
** The PSU is at the very bottom of the case, while all the motherboard power connectors are at the very top of the case, so this can cause some issues if your PSU's cables aren't long enough.<br />
*** The EPS12V cables on my power supply had a few inches left over, but the main motherboard power cable was just barely able to reach from the other side of the case to the power connector.<br />
** The front of the case is sheet metal stuck to plastic using some double-sided adhesive tape, which doesn't seem to work very well.<br />
*** When I received the case the front metal was starting to peel off a few inches (several cm) at the top and bottom.<br />
*** It sticks back in place when I press on it, but I may need to get some better adhesive and re-apply it later.<br />
** For $170, I was hoping for something a little more robust, but at least it's pretty.<br />
<br />
* possible mitigation is plastic standoff like [https://www.kangyang-europe.com/product/pc-board-hardware/ass-10/ ASS-10]<br />
<br />
* '''Corsair 760T''' ([[User:mosst|mosst]])<br />
** Reasonably cheap.<br />
** Unusually tasteful aesthetics for a consumer/gaming case. Looks like something Aperture Science would come up with.<br />
** E-ATX boards fit, but the top-left and top-middle standoffs are missing, however this isn't much of a problem as the I/O panel helps hold the board in place.<br />
** Cable management may be difficult, as E-ATX boards cover most of the cable holes.<br />
<br />
* '''Lian Li PC-V1000L''' ([[User:Maxmillian|Maxmillian]] ([[User talk:Maxmillian|talk]]))<br />
** Very "Apple" brushed aluminum aesthetic.<br />
** E-ATX boards fit, but standoff holes for the top-left and top-middle positions are missing. There's a hole where the top-right standoff is supposed to be, but it's too big to screw in an ordinary standoff.<br />
<br />
=== Candidate Cases ===<br />
<br />
These cases claim E-ATX support and are planned to be used, or were considered, by someone.<br />
<br />
*'''Ceptagon CP-M1 (Vertical Case)'''<br />
** form factor is weird<br />
** It's a really tight fit for e-atx, but it works.<br />
** You can fit in a talos 2 lite<br />
** a talos 2 probably won't be able to fit without taking off one of the coolers to get the motherboard in, and then putting the cooler back on<br />
<br />
== CPU Cooling Modifications ==<br />
While not officially supported, some users have chosen to modify the cooling of their systems and are satisfied with the improved cooling and decreased sound. Proceed with caution.<br />
* [[Dual 92mm fan CPU]]<br />
<br />
== Power Supplies ==<br />
When planning to run with both CPU sockets populated keep in mind that the power-supply should support also 2 8-pin EPS connectors.<br />
<br />
* Seasonic - for spare cables (for example because you have the AOC-SHG3-4M2P card that requires additional 12V input) contact [https://www.sander-europe.eu/ sander-europe.eu], got routed there by Seasonic [https://seasonic.com/contact-us support]<br />
* Seasonic PRIME 1300W<br />
* Seasonic PRIME Ultra 850W Gold (SSR-850GD)<br />
* Seasonic PRIME Ultra 650W<br />
* Seasonic PRIME Ultra Titanium 1000W (SSR-1000TR)<br />
* Seasonic Focus GX 750W (includes 2 EPS cables)<br />
* FSP Group Twins ATX 1+1 Dual Module 700W 80 PLUS GOLD Hot Swappable Redundant Digital Power Supply ([[User:ebrasca|ebrasca]])<br />
** Customer reported good build quality and proper functionality<br />
* Corsair TX550M 80+ GOLD ([[User:MarcusC|MarcusC]])<br />
** 2nd EPS power cable sold separately<br />
* Corsair AX860 <br />
* EVGA SuperNova 1200P2 1200W Platinum([[User:mosst|mosst]])<br />
** Works well, but the included ATX power cables may be too short if your PSU is mounted on the bottom of the case.<br />
* SilverStone Strider gold S series 850W ATX. 80 plus gold certification. ([[User:Xilinder|Xilinder]])<br />
* [https://www.silverstonetek.com/product.php?pid=226 SilverStone Strider ST1500]<br />
<br />
== Memory ==<br />
See [[POWER9 Hardware Compatibility List/Memory]].<br />
<br />
== PCIe Devices ==<br />
See [[POWER9 Hardware Compatibility List/PCIe Devices]].<br />
<br />
== SAS/SATA Storage Drives ==<br />
<br />
Connected via optional on-board [[PM8068]] controller, or via PCIe controller. NVMe cards are also [[POWER9 Hardware Compatibility List/PCIe Devices#NVMe Drives|supported]].<br />
<br />
Boards with onboard SAS have one Mini-SAS HD 4i (SFF-8643) port, and four standard SATA-III ports. Both support both SAS and SATA at the electrical level.<br />
<br />
Note: Microsemi Adaptec Series 8 RAID controllers [http://download.adaptec.com/pdfs/readme/microsemi_series-8-controller_readme_4_2018.pdf do not support ATAPI CD-ROM, DVD, or tape devices.]<br />
<br />
== Serial Adapters for J7701 Header ==<br />
* [http://pinoutguide.com/Motherboard/rs232_header_pinout.shtml Pinout Details]<br />
=== DTK/INTEL (compatible) ===<br />
* CablesToGo 09480 (unverified)<br />
* [https://www.pccables.com/DB9M-TO-IDC10-SERIAL-DTK-PORT.html DB9M TO IDC10 SERIAL DTK PORT 07121]<br />
* Assmann Serial Slot Bracket AK-610300-003-E<br />
** Sold under PremiumCord brand (used by [[User:Sharkcz|Sharkcz]])<br />
** These are also available from Dodax.co.uk as the Digitus AK-610300-003-E[https://www.dodax.co.uk/en-gb/electronics/interface-cards-adapters/digitus-digitus-ak-610300-003-e-dpVEDMTJ26MK9/] (tested by [[User:Ullbeking|Ullbeking]])<br />
* E-ITX ACC3100[https://www.amazon.com/dp/B00DSTTDQW/] (tested by [[User:Bdragon|Bdragon]])<br />
* Supermicro CBL-0010L<br />
* InLine Serielles Slotblech 33209[https://www.ebay.de/itm/InLine-Serielles-Slotblech-9-pol-Stecker-an-10-pol-Buchsenleiste/362007531954?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2060353.m2749.l2649] (tested by CrystalGamma)<br />
<br />
=== AT/EVEREX (not compatible) ===<br />
* StarTech PLATE9M16<br />
* Gigabyte COM port<br />
* CablesToGo 27550 (labelled Intel-compatible, but does not work) [https://www.cablestogo.com/product/27550/16in-db9m-serial-rs232-add-a-port-adapter-cable-with-bracket-for-intel-motherboards]<br />
<br />
== Serial Adapters for BMC TTL Auxiliary Serial Header ==<br />
* Adafruit USB to TTL Serial Cable - Debug / Console Cable for Raspberry Pi [https://www.adafruit.com/product/954]<br />
<br />
Unfortunately the auxiliary serial port is disabled in software by default. To enable it temporarily for a given boot, interrupt U-Boot through the serial port in the prior section, and then enter the following commands at the '''ast#''' prompt:<br />
<br />
<pre><br />
setenv fit 0x20080000<br />
setenv other_rfs 0x20300000<br />
setenv uart2_fdt 0x90000000<br />
fdt addr ${fit}<br />
fdt get addr fit_fdt /images/fdt@1 data<br />
fdt move ${fit_fdt} ${uart2_fdt}<br />
fdt addr ${uart2_fdt}<br />
fdt resize<br />
setenv pin_path "/ahb/apb/syscon@1e6e2000/pinctrl@1e6e2000/"<br />
setenv phandle 80<br />
for pin in txd2 rxd2 nrts2 ndtr2 ndsr2 ncts2 ndcd2 nri2<br />
do<br />
fdt set ${pin_path}${pin}_default linux,phandle <${phandle}><br />
fdt set ${pin_path}${pin}_default phandle <${phandle}><br />
setexpr phandle ${phandle} + 1<br />
done<br />
setenv uart2_path "/ahb/apb/serial@1e78d000"<br />
fdt set ${uart2_path} status "okay"<br />
fdt set ${uart2_path} pinctrl-names "default"<br />
fdt set ${uart2_path} pinctrl-0 <0x00000050 0x00000051 0x00000052 0x00000053 0x00000054 0x00000055 0x00000056 0x00000057><br />
fdt addr ${fit}<br />
if fdt get value ramdisk_conf /configurations/conf@1 ramdisk<br />
then<br />
bootm ${fit}#conf@1 ${fit}#conf@1 ${uart2_fdt}<br />
else<br />
bootm ${fit}#conf@1 ${other_rfs} ${uart2_fdt}<br />
fi<br />
</pre><br />
<br />
After the system has booted, you can enable logins over the auxiliary serial port with:<br />
<br />
<pre><br />
systemctl start serial-getty@ttyS1.service<br />
</pre><br />
<br />
[[Category:Compatibility List]]</div>Chatcannonhttps://wiki.raptorcs.com/w/index.php?title=POWER9_Hardware_Compatibility_List/PCIe_Devices&diff=3564POWER9 Hardware Compatibility List/PCIe Devices2021-10-21T15:46:11Z<p>Chatcannon: /* AMD */ W5500 GPU</p>
<hr />
<div><!-- When adding devices, please list devices in alphabetical order within each category. --><br />
==Compatibility rules==<br />
In general, any PCIe device will work providing that an open source driver is available for your operating system. There are some exceptions:<br />
<br />
* '''Hardware bugs.''' POWER does not permit errant DMA accesses. If a device tries to access areas of host memory which it is not permitted to access, the device is shut down immediately. This is dissimilar to x86 platforms, which simply silently ignore such attempts. Some badly designed I/O devices have bugs causing them to attempt DMA accesses to random areas of host memory; these devices are unlikely to function correctly on POWER systems unless a workaround is available. Note that devices in full bypass mode may legally have access to all host memory, to avoid this and test driver IOMMU setup pass "iommu=nobypass" to the kernel at startup.<br />
* '''I/O space.''' Starting with [[POWER9]], access to the legacy PCI I/O space is no longer supported; devices or drivers which rely on this will not function. The legacy I/O space has been deprecated for as long as PCIe has existed; generally this will only affect very old PCIe devices which use PCIe to PCI bridge chips to attach old PCI devices to the bus, or genuine legacy PCI devices attached via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]]. A small subset of these devices may require legacy I/O space support.<br />
* '''Incomplete memory addressing support.''' The PCIe architecture specifies a 64-bit address space. Some I/O devices try to economize on this by only implementing e.g. 40 bits for their addressing, rendering them incapable of addressing host memory which lies above address 2<sup>40</sup>. (Firmware patches to work around this are pending.)<br />
* '''Bifurcation limits.''' Arbitrary PCIe lane bifurcation is not supported. Devices which split a PCIe slot into multiple connectors (for example, PCIe to M.2 adaptors) will not work unless they have a PCIe switch chip, although the first connector will generally work.<br />
<br />
==Troubleshooting==<br />
<br />
If a PCIe device is in a broken state due to being attached/detached from a VM, or due to a transition from Petitboot to the main OS, you may be able to fix it by issuing a hot reset. A script for performing a PCIe hot reset is at [[File:Pcie_hot_reset.sh]]. For background on PCIe resets and how a hot reset differs from the function-level reset performed by <code>echo 1 > /sys/bus/pci/devices/$dev/reset</code>, see [https://unix.stackexchange.com/a/474378 Alex Forencich's explanation on Stack Exchange].<br />
<br />
==NICs==<br />
===Working===<br />
* 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
* Broadcom [[BCM5719]]<br />
* Chelsio T520-SO-CR (dual port 10Gb/s, cxgb4 driver)<br />
* Chelsio T6225-SO-CR<br />
* DEC FDDIcontroller/PCI (DEFPA) PCI FDDI (via [[POWER9_Hardware_Compatibility_List/PCIe_Devices#PCIe.2FPCI_Expansion|PCIe/PCI Expansion]])<br />
** Works automatically as from Linux kernel version 5.13.<br />
** Works with Linux kernel versions before 5.13 as long as the defxx driver has been compiled with the CONFIG_DEFXX_MMIO option, which may not be the case with standard distribution kernels as the option was not on by default for historical reasons.<br>''This is because the PFI ASIC used as the PCI interface with the DEC FDDIcontroller/PCI adapter supports both port I/O and MMIO for main ASIC's (PDQ) CSR access, however [[POWER9_Hardware_Compatibility_List/PCIe_Devices#Compatibility_rules|as noted above]] the Power Systems Host Bridge 4 (PHB4) PCIe root complex used with POWER9 microprocessors does not support I/O Read or I/O Write commands required for port I/O.''<br />
* Mellanox ConnectX-6 EN 200Gb/s Adapter Card ''(supports [[CAPI]])''<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9-server-adapter/ PE210G2SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe210g2spi9a-server-adapter/ PE210G2SPI9A]/PE210G2SPI9B dual port 10 GbE SFP+ adapter (Chipset: [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES]) (ixgbe driver)<br />
* Silicom [https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9-server-adapter/ PE310G4SPI9]/[https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/pe310g4spi9la-quad-port-10-gigabit-nic-intel-based/ PE310G4SPI9LA] quad port 10 GbE SFP+ adapter (Chipset: Two [https://www.intel.com/content/www/us/en/products/sku/41282/intel-82599es-10-gigabit-ethernet-controller/specifications.html Intel 82599ES] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8724 PLX PEX 8724] switch) (ixgbe driver)<br />
* Unbranded 4-port Gigabit Ethernet adapter (Chipset: Four Realtek RTL8111F controllers behind one ASMedia ASM1184e switch) (r8169 driver, firmware optional)<br />
** The card be identified by the "NET111-V1.0" text on its PCB.<br />
* [https://www.asus.com/Networking-IoT-Servers/Wired-Networking/All-series/XG-C100F/ ASUS XG-C100F] (single port 10GbE SFP+, AQUANTIA AQtion Linux "atlantic" driver)<br />
** Driver compiled by default on PowerPC (and others) from this [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9b22fece786ed641909988da4810bfa8e5d2e592 commit].<br />
** There is proprietary firmware written into EEPROM from the factory but it does not seem to be writeable, nor does it have to be loaded by the Linux kernel.<br />
<br />
===Non-working===<br />
* Mellanox ConnectX IB QDR (mlx4 driver)<br />
<br />
==Wireless Cards==<br />
===Working===<br />
* Alfa AWUS036NHA Wireless USB Adaptor<br />
** open source firmware (ath9k_htc) [https://github.com/qca/open-ath9k-htc-firmware]<br />
* [https://ark.intel.com/content/www/us/en/ark/products/75439/intel-dual-band-wireless-ac-7260.html Intel Dual-Band Wireless-AC 7260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/86068/intel-dual-band-wireless-ac-8260.html Intel Dual-Band Wireless-AC 8260] (Bluetooth untested)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/99445/intel-wireless-ac-9260.html Intel Dual-Band Wireless-AC 9260] (Bluetooth untested)<br />
* [https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-mini-pcie ThinkPenguin TPE-NMPCIE]<br />
** Chipset: Atheros AR9281<br />
** Linux driver: ath9k<br />
** Tested with StarTech PEX2MPEX; device is detected without trouble by Linux and NetworkManager; didn't try hooking up an antenna, so wasn't able to try connecting to networks.<br />
* TP-Link TL WN823N RTL8192EU [https://github.com/Mange/rtl8192eu-linux-driver]<br />
** remove "ARCH=$(ARCH)" on line 1710 of the makefile and it compiles fine<br />
* TP-LINK TL-WN725N V2 USB dongle<br />
** as of Linux 5.6.x, the rtl8188eu is in staging stage, so it is advised to compile the driver from [[https://github.com/lwfinger/rtl8188eu lwfinger/rtl8188eu]]<br />
<br />
==NVMe Drives==<br />
* Samsung 950 PRO (with M.2 to PCIe adapter)<br />
* Samsung 960 EVO / PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 PRO (with M.2 to PCIe adapter)<br />
* Samsung 970 EVO Plus (with M.2 to PCIe adapter)<br />
* Samsung 980 PRO (with M.2 to PCIe adapter)<br />
* [https://www.samsung.com/semiconductor/ssd/datacenter-ssd/MZ1LB960HAJQ/ Samsung PM983] (with [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php AOC-SHG3-4M2P] M.2 to PCIe adapter)<br />
* [https://ark.intel.com/content/www/us/en/ark/products/series/81000/intel-ssd-dc-p3600-series.html Intel SSD DC P3600 PCIe AIC] (tested 1.6 TB)<br />
* Intel Optane 900P NVMe XPoint PCIe<br />
* Intel Optane 905P NVMe XPoint PCIe AIC<br />
* Intel Optane 905P NVMe Xpoint U.2, with included U.2 to M.2 cable plugged into an [[#PCIe_to_M.2_Adapters|ASUS Hyper M.2 X4 mini]].<br />
* WD Black PCIe (with M.2 to PCIe adapter)<br />
* MyDigitalSSD BPX 480GB (with M.2 to PCIe adapter)<br />
<br />
Known issues:<br />
* [FIXED in stable kernels 4.19 and 5.4] [https://bugzilla.kernel.org/show_bug.cgi?id=202665 IOMMU related errors when performing discard on some NVMe devices] (mainly NVMe SSDs). Current workaround is booting with the kernel parameter ''iommu=soft'', see the [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=530436c45ef2e446c12538a400e465929a0b3ade patch]<br />
<br />
==PCIe to M.2 Adapters==<br />
===Working===<br />
* [https://www.asus.com/us/Motherboard-Accessories/HYPER_M2_X4_MINI_CARD/ ASUS Hyper M.2 X4 mini], PCIe X4 to M.2.<br />
* [http://ableconn.com/products_2.php?gid=62 Ableconn PEXM2-SSD M.2 NGFF PCIe SSD to PCI Express 3.0 x4 Host Adapter Card (M.2 to PCIe adapter)]<br />
* [https://www.addonics.com/products/ad2m2nvmpx8.php Addonics AD2M2NVMPX8] Dual NVMe PCIe adapter 2x M.2 PCIe to PCIe x8<br />
* [https://www.delock.com/produkte/G_89370/merkmale.html Delock PCI Express x4 Card > 1 x internal NVMe M.2 Key M 80 mm - Low Profile Form Factor; Item No. 89370]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=9SIA4RE5AU2769 JEYI SK4 M.2 NVMe(M Key) SSD to PCI-E 3.0 x4 Adapter Converter Card]<br />
* [https://www.newegg.com/Product/Product.aspx?Item=N82E16815124167 SYBA SI-PEX40110 M.2 PCI-e To PCI-e 3.0 x4]<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=1052 SYBA SI-PEX40152 PCIe 3.1 x16 to 4 x M.2 (M-Key) Adapter Card]<br />
* [https://highpoint-tech.com/USA_new/series-ssd7101a-1-overview.htm HighPoint SSD7101A-1] 4x M.2 PCIe to PCIe 3.0 x16 (based on PLX PEX8747 PCIe switch)<br />
** Works without special drivers as a PCIe switch. NVMEs are detected and work just fine. Petitboot is able to boot attached NVMEs with no problems. Tested in FreeBSD. -- [[User:Bdragon|Bdragon]] ([[User talk:Bdragon|talk]])<br />
* [https://highpoint-tech.com/USA_new/series-ssd7102-overview.htm HighPoint SSD 7102] 4x M.2 PCIe to PCIe 3.0 x16 (with PCIe switch)<br />
* [https://estore-highpoint-tech.com/products/highpoint-ssd7505-pcie-4-0-x16-4-channel-u-2-nvme-raid-controller HighPoint SSD7505] PCIe 4.0 x16 4-Port M.2 NVMe RAID Controller<br />
* [https://highpoint-tech.com/USA_new/series-ssd7540-overview.htm HighPoint SSD 7540] PCIe 4.0 x16 8-Port M.2 NVMe RAID Controller<br />
** Tested with Samsung 980 Pro 2TB<br />
** Beware of LUKS encryption performance not catching up with such speedy bandwidths yet.<br />
* [https://raidsonic.de/en/standards/searchresults.php?we_objectID=5456 Raidsonic Icy Box PCIe extension card for one M.2 NVMe SSD (IB-PCI214M2-HSL)]:<br />
** Tested with a Samsung 970 EVO Plus NVMe M.2 with 2 TB<br />
** Bootable and no special driver installation required<br />
** Has a passive cooling system for the SSD (about 20 degree Celsius cooler than without)<br />
** Supports PCIe 3.0 x4 with up to 32 GBit/s according to the manual<br />
** Seems to support PCIe 4.0 x4 with up to 64 GBit/s according to the current [https://www.raidsonic.de/products/accessories/ac_controller/IB-PCI214M2-HSL/pdf/datasheet_IB-PCI214M2-HSL_e.pdf data sheet] (probably due to the fact that it is only a routing device without any own logic)<br />
* [https://www.supermicro.com/en/products/accessories/addon/AOC-SHG3-4M2P.php Supermicro AOC-SHG3-4M2P] 4x M.2 PCIe to PCIe 3.0 x8 (using a PEX 8734 PCIe 3.0 (8.0GT/s) Switch). Draws 10 watts in idle. Requires one additional 4-pin 12V connector.<br />
* [https://www.akasa.com.tw/update.php?tpl=product/product.detail.tpl&no=181&type=Enclosures&type_sub=SSD%20Accessories&model=AK-PCCM2P-01 Akasa AK-PCCM2P-01] PCIe Gen3 x4 to M.2 2230/2242/2260/2280/22110. Tested with Samsung 970 EVO Plus 500GB.<br />
* [https://www.startech.com/en-us/cards-adapters/pexm2sat32n1 StarTech 3-Port M.2 SSD (NGFF) Adapter Card] 1 x PCIe (NVMe) M.2, 2 x SATA III M.2 - PCIe 3.0. Only tested the NVMe port with Samsung 970 EVO Plus 500GB.<br />
<br />
===Partially working===<br />
* [https://www.amazon.com/gp/product/B074WV4ZN4 Aplicata Quad M.2 NVMe SSD PCIe x16 Adapter] (no PCIe switch; only lowest slot works)<br />
<br />
==PCIe to U.2 Adapters==<br />
===Working===<br />
* [https://highpoint-tech.com/USA_new/series-ssd7120-overview.htm High Point SSD7120] PCIe 3.0 x16 to 4x U.2 NVMe ports (Dedicated PCIe 3.0 x4 per port, with PCIe switch) tested by [[User:Gyakovlev|Gyakovlev]] ([[User talk:Gyakovlev|talk]])<br />
** Tested with [https://www.icydock.com/goods.php?id=255 Icy Dock ToughArmor MB699VP-B] 4xU2 enclosure. Neither above controller nor enclosure ships with cables, 4x SAS HD SFF-8643 cables required to connect drives.<br />
** 4x Optane 905P work fine with this combo.<br />
<br />
==PCIe to MiniPCIe Adapters==<br />
=== Working ===<br />
* [https://www.startech.com/Cards-Adapters/Slot-Extension/PCI-Express-to-Mini-PCI-Express-Card-Adapter~PEX2MPEX StarTech PEX2MPEX] ([https://www.newegg.com/startech-com-model-pex2mpex-pci-express-to-mini-pci-express/p/N82E16815158307?Item=N82E16815158307&Description=mini%20PCIe&cm_re=mini_PCIe-_-15-158-307-_-Product NewEgg])<br />
** Tested with ThinkPenguin TPE-NMPCIE.<br />
** Particularly of interest as a lot of the ASPEED and SiliconMotion GPU's have a MiniPCIe form factor.<br />
<br />
==SAS/SATA Storage Controllers ==<br />
===Working===<br />
* IOCrest SI-PEX40062 (Chipset: Marvell 88SE9235, PCI id 1B4B:9235)<br />
** Marvell 88SE9230 chipset also confirmed to work<br />
* Kouwell PE-115H (Chipset: Marvell 88SE9130, PCI id 1b4b:9130)<br />
* LSI 9300/9200 SAS HBAs<br />
** May require updating to IT firmware on a x86 machine<br />
* [[PM8068]]-based SAS HBAs <br />
* Supermicro AOC-SLG3-4E2P 4-port OCuLink adapter<br />
* Jmicron JMB 363 SATA PCIe card. SATA ports work with Petitboot.<br />
* MegaRAID 9460-8i<br />
* [http://www.iocrest.com/index.php?id=2070 IOCrest IO-M2F585-5I] (Chipset: JMicron JMB585, PCI IDs: 197b:0585)<br />
* Unbranded JMicron JMB363 SATA/IDE controller card, with one eSATA, one internal SATA, and one IDE (PATA) connector (Chipset: JMicron JMB363, PCI IDs: 197b:2363)<br />
** SATA ports work in Petitboot.<br />
** The IDE/PATA port doesn't work since it exclusively uses PCI I/O space access, which the [[POWER9]] does not support. Because of this, PCI function 1, which is used for the IDE/PATA functionality, is not exposed by Linux and so will not appear in the output of lspci.<br />
<br />
===Non-working===<br />
* AXAGON PCES-SA2 (ASMedia chipset)<br />
* SuperMicro AOC-SASLP-MV8 (mvsas driver)<br />
* MegaRAID 9341-8i - probably a bug in the firmware<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 642L] (Chipset: Marvell 88SE9235)<br />
* [https://highpoint-tech.com/USA_new/series_rr600-overview.htm HighPoint RocketRAID 644L] (Chipset: Marvell 88SE9235)<br />
<br />
== Optical Drives ==<br />
<br />
* [https://www.asus.com/us/Optical-Drives-Storage/BW16D1HT/HelpDesk_Download/ Asus BW-16D1HT Retail] (Blu Ray Writer with SATA interface):<br />
** Partially working (reading BDs works, writing not yet tested). [https://forums.raptorcs.com/index.php/topic,40.0.html Sometimes not recognized during boot phase with ATA timeouts] causing all SATA devices to be disabled<br />
<br />
<br />
== Graphics Cards ==<br />
<br />
No display? Check out the [[Troubleshooting/GPU|GPU Troubleshooting]] page.<br />
<br />
=== AMD ===<br />
<br />
All AMD GPUs currently have DMA issues (limited to 32-bit, which can cause crashes) due to missing Linux kernel support for DMA windows between 33 and 63 bits in length. The root cause is GPU vendors (and occasionally some non-GPU vendors) cutting costs and only including 40-bit capable (Intel-style) DMA controllers. A compatibility mode is expected to be included in Linux 5.4 and above that will resolve this issue.<br />
<br />
* AMD Radeon HD 5570 - Archaic (1GB VRAM, PCI 2.1) but much faster than the AST. This card (ASUS EAH5570 Silent) is passively cooled.<br />
* AMD Radeon HD 5850 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 6450 - Works with default settings (kernel: radeon, X: modesetting or radeon), tested in BE mode<br />
* AMD Radeon HD 6850 - Disable AST VGA with jumper. 32 bit.<br />
* AMD Radeon HD 7850 - Disabled onboard VGA. Using amdgpu is highly unstable, radeon driver is usable but has issues with only using 32-bit DMA.<br />
* AMD Radeon HD 7950 - Must disable onboard VGA first. Currently has issues with only using 32-bit DMA.<br />
* AMD Radeon R5 220<br />
* AMD Radeon R5 230 - Works in BE mode (use <code>Option "AccelMethod" "EXA"</code> for Xorg)<br />
* AMD Radeon R7 240<br />
* AMD Radeon R9 290X<br />
* AMD Radeon R9 Nano - Must disable onboard VGA first. Works perfectly with Linux 5.6.x to 5.12.x with 4K Pages. It is confirmed working 5.6.x and 5.10.6 (or newer) with 64K Pages (occasionally crash under heavy load for example Blender rendering). Unfortunately 5.7.x, 5.8.x, 5.9.x, 5.11.1 -> 5.11.11 and 5.12.x with 64K pages are known to crash. For 5.7.x (64K pages), you could workaround the crash by adding `amdgpu.dc=0` to grub config.<br />
* Sapphire GPRO 8200 (Polaris10 core) - Disable AST VGA with jumper, disabling in grub is not enough. Same form factor as WX7100, a single-slot RX 470 with 8GB of RAM and 4 DP outputs.<br />
* AMD Radeon RX 480<br />
* AMD Radeon RX 550 - Works with caveats (below) for particular card tested.<br />
** Card tested was Gigabyte GV-RX550D5-2GD in a Blackbird with Ubuntu 19.10, 5.3.0-24 and amdgpu with onboard VGA disabled by jumper. Suspect with tweaking would work without needing to disable VGA. Alas would lock up every day or two, to the point I replaced with a Sapphire RX580. Based on conversations w/Raptor suspect this was an issue with the model card I had rather than the RX550 itself.<br />
* AMD Radeon RX 560X<br />
* AMD Radeon RX 580 – Works with the amdgpu firmware from Ubuntu 19.04 and disabled onboard VGA<br />
** You may also need a kernel parameter like <code>vga=797</code> if xinit complains about VESA[https://en.wikipedia.org/wiki/VESA_BIOS_Extensions]<br />
** The Sapphire NITRO+ Radeon RX 580 8GB card is a tight fit on the Blackbird planar if you're using the 2nd PCIe slot as it a bit wider than two slots (and is documented as such). Solved by removing the adapter plate for the PCIe-M2 adapter card being used and allowing it to sit in slot untethered.<br />
* AMD Radeon RX Vega 56 - Works with Debian Buster with amdgpu. Requires patches to work, somewhat unstable but usable. Cannot use AST Integrated VGA and AMDGPU at the same time without causing conflict. Not tested at this moment for use in petitboot or firmware. <br />
* AMD Radeon RX Vega 64 - Works with Fedora 32 with Linux kernel 5.5.0's amdgpu. The card does _NOT_ display in bootloader because vega10 firmwares failed to load correctly.<br />
* AMD Radeon Pro WX4100 (Polaris11 core) - May need at least linux 4.16 in order to get Xorg to work.<br />
* AMD Radeon Pro WX5100<br />
* AMD Radeon Pro WX7100 (Polaris10 core) - Available pre-installed on Talos II workstation, server, and desktop configurations.<br />
* AMD Radeon RX 5700 (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output. <br />
* AMD Radeon RX 5700 XT (Navi 10) - Requires [https://lists.freedesktop.org/archives/amd-gfx/2019-December/043682.html kernel patches] to enable display output.<br />
* AMD Radeon Pro W5500 (Navi 14) - "amdgpu" driver works with 4k pages but not 64k pages. "fbdev" driver works with both page sizes.<br />
* AMD Radeon RX 6900 XT (Navi 21) - Not working with current 5.12 (in either 4K or 64K page sizes) - [https://gitlab.freedesktop.org/drm/amd/-/issues/1519 bug ticket] <br />
<br />
The core name is important when storing the firmware into the BOOTKERNFW partition in PNOR for use by skiroot.<br />
<br />
=== NVIDIA ===<br />
* NVIDIA Corporation G96 [GeForce 9500 GT] (rev a1) - Works in petitboot if onboard VGA is disabled. Currently has issues with only using 32-bit DMA. No firmware needed.<br />
* NVIDIA RTX 2070 - usable for compute, but not 3D acceleration; integrated by Raptor as part of the Talos II PowerAI Development System configuration<br />
<br />
=== Other ===<br />
* [[AST2500|ASPEED AST2500]]. Works in both the main OS (LE mode) and Petitboot. BE mode partially works (doesn't crash, but colors are wrong unless you apply a patch that is harmful to performance). On Linux 5.6+, [https://forums.raptorcs.com/index.php/topic,31.0.html 1920x1200 resolution is broken]. <code>ast</code> Linux driver.<br />
* [https://www.climaxdigital.co.uk/CUH195-USB-2-to-DVI-VGA-or-HDMI-Adaptor-1080p-full-hd ClimaxDigital CUH195 USB 2.0 Graphic Adapter] - Based on DisplayLink DL-3500 chipset. Works in the main OS; not tested with Petitboot but is likely to work there too.<br />
* EVGA 100-U2-UV12-A1 UV Plus USB VGA Adapter - DisplayLink Based - Petitboot shows up without loading firmware. Not tested in OS.<br />
<br />
=== Non-working ===<br />
<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=244 ASPEED AST1300]. Older revision of the AST2510 (AST1300 is 4th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. [https://github.com/open-power/skiboot/issues/257 Open issue with Skiboot for getting it fixed.] Known suppliers of AST1300 devices are:<br />
** [https://iei.rs/IGCME-1300-R10 IEI Integration Corp IGCME-1300-R10] ([https://iei.rs/image/cache/data/IGCME-1300_20131105.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0D332000196276623429/IGCME-1300%20QIG%20V1.01_20120531.pdf Quick Installation Guide])-- Resold by:<br />
*** [http://archivecaslytosk.onion/QZROL eBay example 1]<br />
*** [https://www.ebay.com/p/1383304505 eBay example 2]<br />
*** [https://web.archive.org/web/20171003045507/http://neutronusa.com/prod.cfm/1525210/ NeutronUSA] (Warning: non-TLS link!)<br />
*** [https://forums.servethehome.com/index.php?threads/fs-us-ny-intel-x540-t2-minipcie-vga-slim-120mm-fans.26880/ ServeTheHome]<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=455 ASPEED AST2510]. It's the GPU component of the [[AST2500]] without the BMC component. VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). Might be useful for users who want to add additional VGA displays beyond the single VGA display supported by the built-in AST2500, with similar freedom and performance properties as the AST2500. <code>ast</code> Linux driver. Known suppliers of AST2510 devices are:<br />
** [https://www.win-ent.com/1U-Rackmount-Platforms/pl-81280 WIN Enterprises IP-492B]<br />
** AEWIN Technologies R492B<br />
*** Distributed as add-on for these servers:<br />
**** [https://www.aewin.com/products/scb-1921a/ SCB-1921A]<br />
**** [https://www.aewin.com/zh-hans/products/scb-1925/ SCB-1925] ([https://www.aewin.com/wp-content/uploads/2019/11/SCB-1925.pdf datasheet])<br />
**** [https://www.aewin.com/zh-hant/products/scb-1935a/ SCB-1935A] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
**** [https://www.aewin.com/products/scb-1935b/ SCB-1935B] ([https://www.aewin.com/wp-content/uploads/2020/02/SCB-1935.pdf datasheet])<br />
* [https://www.aspeedtech.com/products.php?fPath=20&rId=377 ASPEED AST1400]. Older revision of the AST2510 (AST1400 is 5th generation; AST2510 is 6th generation). VGA 1920x1200 @ 60Hz 32bpp; framebuffer (no acceleration). <code>ast</code> Linux driver. Known suppliers of AST1400 devices are:<br />
** [https://iei.rs/IGCME-1300-R11 IEI Integration Corp IGCME-1300-R11] ([https://iei.rs/image/cache/data/IGCME-1300_MPCIE-USB3.pdf Datasheet]) ([https://dls.ieiworld.com/IEIWeb/Reserved/0F233000410888189307/IGCME-1300%20QIG%20V1.10_20150819.pdf Quick Installation Guide]) -- Resold by:<br />
*** [https://eu.mouser.com/ProductDetail/IEI/IGCME-1300-R11?qs=wd5RIQLrsJgucg6W4Ojybw%3D%3D Mouser]<br />
*** [https://www.amazon.com/IEI-Technology-IGCME-1300-R11-Adapter-AST1400/dp/B07WRVK8DR Amazon]<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/IGCME-1300/IGCME-1300.htm Kacer]<br />
*** [https://www.alibaba.com/product-detail/IEI-IGCME-1300-R11-PCIe-Mini_60839628812.html Alibaba]<br />
*** [https://www.icpamerica.com/igcme-1300-add-on-card/ ICP America]<br />
* SiliconMotion SM750. Chipset is VGA + DVI (dual display) 1920x1440, but some devices may not support the full chipset resolution; appears to have 2D acceleration (not just framebuffer). Appears to be fixed-function silicon (no firmware). PCIe interface. <code>sm750fb</code> Linux driver is in staging. [https://gitlab.com/sudipm/sm750/tree/sm750 <code>sm750</code> Linux driver] is not yet merged to mainline. <code>sm750</code> Linux driver has some weird license text, but [https://github.com/torvalds/linux/commit/81e0da703fdba1ee126868bf8350592c79cdba13 according to Greg Kroah-Hartman] it sounds like the authors intend it to be GPLv2; would be useful to double-check with Greg/Sudip/Teddy whether Silicon Motion's statement to Greg applies to Sudip's <code>sm750</code> or if it only applies to mainline's <code>sm750fb</code>. Known suppliers:<br />
** [https://www.cervoz.com/product.php?id=c39eb02c-014a-1000-a04b-001851f77c0c Cervoz MEC-DIS-M002]. VGA + DVI (dual display) 1280x1024 @ 60Hz. Mini-PCIe form factor. Resold by:<br />
*** [https://www.kacer.com/product/accessories/daughter%20card/Mini%20PCIe/MEC-DIS-M002/MD02.html Kacer]<br />
*** [https://www.texim-europe.com/product/MEC-DIS-M002 Texim Europe]<br />
*** [https://www.bvm.co.uk/products/1053-Mini-PCI-Express-DVI-VGA-Module-MEC-DIS-M002/ BVM]<br />
*** [https://web.archive.org/web/20200704052513/https://nerugged.com/product/mec-dis-m002-mpcie-dvi-vga-controller/ New England Rugged]<br />
** [https://web.archive.org/web/20200707045733/http://www.smartnre.com/en/product/Fastwel_VIM552_3U_CPCI_Graphics_Module.html Fastwel VIM552] (Warning: non-TLS link!)<br />
** [https://www.memorydepot.com/detail/EMPV-1201-C1.html Innodisk EMPV-1201-C1]<br />
** [https://www.memorydepot.com/detail/EMPV-1202-C1.html Innodisk EMPV-1202-C1]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1760 SUNIX VGA0419]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1766 SUNIX VGA0429]. Resold by:<br />
*** [https://www.dc3.co.za/computer-store/sc-svga0429/ DC3 Distribution]<br />
** [https://www.sunix.com/en/product_detail.php?cid=1&kid=2&gid=15&pid=1817 SUNIX VGA0449M]<br />
** [https://www.vadatech.com/product.php?product=368 VadaTech AMC348]<br />
** [https://www.vadatech.com/product.php?product=151 VadaTech AMC349]<br />
** [https://www.versalogic.com/product/video-expansion-module/ VersaLogic VL-MPEe-V5]<br />
* DisplayLink<br />
** [https://www.climaxdigital.co.uk/epages/BT3449.sf/en_GB/?ObjectPath=/Shops/BT3449/Products/111216 ClimaxDigital CUH350]<br />
*** Based on DisplayLink DL-3500 chipset.<br />
*** ClimaxDigital claims 1920x1200; DisplayLink chipset docs claim 2560x1600.<br />
** [https://www.startech.com/en-us/audio-video-products/usb2dvimm6 StarTech USB2DVIMM6]<br />
*** Based on DisplayLink DL-165 chipset.<br />
*** 1680x1050.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2dvimm6/p/N82E16815158183 NewEgg].<br />
** [https://www.startech.com/en-us/audio-video-products/usb2dvipro2 StarTech USB2DVIPRO2]<br />
*** Based on DisplayLink DL-195 chipset.<br />
*** 1920x1200.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2dvipro2/p/N82E16812400361 NewEgg].<br />
** [https://www.startech.com/en-us/audio-video-products/usb2vgapro2 StarTech USB2VGAPRO2]<br />
*** Based on DisplayLink DL-195 chipset.<br />
*** 1920x1200.<br />
*** Resold by [https://www.newegg.com/startech-com-usb2vgapro2/p/N82E16812400368 NewEgg].<br />
<br />
== Sound Cards ==<br />
<br />
===Working===<br />
* Creative Sound Blaster Audigy FX SB1570 PCIe 5.1 Sound Card<br />
* Creative Sound Blaster X-Fi Xtreme Fidelity PCIe Audio Sound Card (SB0880)<br />
* AMD Radeon HD 5850 and 7950 (HDMI audio)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=156&p_name=+USB+Stereo+Audio+Adapter&pc_id=9&pc_name=Adapters&pt_id=3&pt_name=Audio+%2B++Video#tab-1 VANTEC NBA-120U (USB)]<br />
* Sabrent USB External Stereo Sound Adapter (AU-MMSA)<br />
* [https://mackie.com/products/onyx-blackjack Mackie Onyx Blackjack (USB) Recording Interface]<br />
* RME HDSPe AIO (FreeBSD tested)<br />
* Leveraged Sabrent Bluetooth 4.0 USB adapter (model BT-UB40) to connect to wireless Bluetooth headphones, specifically Bose Quiet Comfort 35.<br />
<br />
===Non-working===<br />
* ASUS Xonar SE - Contains ASMedia USB host controller with errant DMA access flaw<br />
* Creative Sound Blaster Audigy PCIe RX 7.1 - unable to enable emu10k1 driver on little-endian power9 kernel as driver requires ZONE_DMA<br />
<br />
==USB Host Controllers==<br />
===Working===<br />
* Insignia USB 3.0 PCI-e NS-PCCUP53 V1.0 (Chipset: NEC D720202)<br />
* AGAXO PCEU-23R (Chipset: Renesas uPD720202, PCI id 1912:0015)<br />
* Terminus Technology Inc. FE 2.1 7-port Hub<br />
* [https://www.sonnettech.com/product/legacyproducts/allegroprousb3pcie.html Sonnet Allegro Pro USB 3.0 PCIe USB3-PRO-4PM-E] (Chipset: Four [http://www.frescologic.com/product/single/fl1100ex/ Fresco Logic FL1100EX] controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8608 PLX PEX 8608] switch)<br />
* [https://www.vantecusa.com/products_detail.php?p_id=125&p_name=+4-Port+SuperSpeed+USB+3.0+PCIe+Host+Card+w%2F+Internal+20-Pin+Connector&pc_id=16&pc_name=USB&pt_id=4&pt_name=Add-on+Cards Vantec UGT-PC345 4 Port USB 3.0 PCIe w/ Internal 20 pin] (Chipset: Renesas uDP720201)<br />
* [https://www.amazon.com/gp/product/B07H4HJNJC] (monster card with 8 ports of USB 3.0) four Renesas uPD720202 chips behind ASMedia 1806, card can be found under different brands but can be identified by the look. [http://sedna-shop.com/index.php?route=product/product&path=59_74&product_id=138 This should be the same card]<br />
* En-Labs PCI-e to 4 Ports USB 3.1 GEN 1 (5Gbps) (USB Type-C +USB Type A w/ Internal 19Pin USB 3.0 Dual Port) PCI Express Card (Chipset: ASMedia ASM1042A)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE3U1T-A31" and "VER 006S" markings on the PCB.<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=818 IOCrest SI-PEX20189] (Chipset: ASMedia ASM1142)<br />
** Requires kernel version 4.14.194, 4.19.139, 5.4.58, 5.7.15, 5.8.1, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [http://ableconn.com/products_2.php?gid=121 Ableconn PU31-2C-2] (Chipset: ASMedia ASM2142)<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* Semoic USB 3.1 to Type-C 2 Port Expansion Card (Chipset: ASMedia ASM3142, same PCI IDs as ASM2142)<br />
** Card appears to be sold under different brands, but can be identified by the "PCE2TYC-A31", "VER006", "USB 3.1 Type-C 2-Port Card", and "PCE-E 4X" markings on the PCB.<br />
** Requires kernel version 4.14.190, 4.19.135, 5.4.54, 5.7.11, 5.8.0, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
** EEH errors may occur during long reads from multiple devices.<br />
* [https://www.orico.cc/us/product/detail/7192.html ORICO PE20-1C] (Chipset: ASMedia ASM3242)<br />
** Requires kernel version 4.14.226, 4.19.181, 5.4.106, 5.10.24, 5.11.7, or later.<br />
*** Petitboot's kernel will need to be updated to one of these versions (or later) in order to boot from any USB devices connected to this controller.<br />
<br />
===Non-working===<br />
In general, USB3 host controllers based on ASMedia chipsets are known to be problematic, due to ASMedia hardware or firmware bugs causing errant DMA accesses to invalid regions of host memory.<br />
<br />
* AXAGON PCEU-43V - chipset Via VL805 - PCI id 1106:3483<br />
* StarTech PEXUSB314A2V - 2x ASM1142 host controllers and a PCIe switch<br />
** This card completely fails to be detected.<br />
* QNINE USB 3.1 Gen2 (Type-A and Type-C) - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* Rosewill RC-509 - ASM1142<br />
** This may work now with an updated kernel, but it hasn't been tested yet.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1022A-Series.htm HighPoint RocketU 1022A] (Chipset: ASMedia ASM1042)<br />
** Skiboot reports that the PCIe link is unstable when the card is connected directly, but it seems to work when the card is plugged in via a PCIe switch.<br />
** This chip seems somewhat unreliable, since USB reads can fail after only a few tens of gigabytes have been transferred.<br />
* [https://highpoint-tech.com/USA_new/cs-series_RocketU1144A-Series.htm HighPoint RocketU 1144A] (Chipset: Chipset: Four ASMedia ASM1042 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
** Skiboot sometimes times out when scanning for the ASM1042 controllers attached to the PEX 8609 ("Timeout waiting for downstream link"), resulting in some of the ports effectively being disabled until the next boot.<br />
** The ASM1042 controller seems somewhat unreliable.<br />
*** Lots of resets on USB 3.<br />
*** Long reads from a single USB hard drive can sometimes result in I/O errors.<br />
*** Incompatible with some USB hard drives.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=54 SEDNA - PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC)<br />
* [http://sedna-shop.com/index.php?route=product/product&product_id=99 SEDNA - PCIe 4 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://www.startech.com/Cards-Adapters/USB-3.0/Cards/7-port-pci-express-usb-3-card~PEXUSB3S7 StarTech PCIe 7 Port USB 3.0 Adapter Card] (Chipset: NEC uPD720201)<br />
* [https://highpoint-tech.com/USA_new/series-ru1344a-overview.htm High Point RocketU 1344A 4-Port USB 3.1 PCI-Express 3.0 x 4 HBA] (Chipset: Two ASMedia ASM3142 controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8714 PLX PEX 8714] switch)<br />
* [https://highpoint-tech.com/USA_new/series-ru1144d-overview.htm High Point RocketU 1144D 4-Port USB 3.0 PCI-Express 2.0 x 4 HBA] (Chipset: Four ASMedia ASM1042A controllers behind one [https://www.broadcom.com/products/pcie-switches-bridges/pcie-switches/pex8609 PLX PEX 8609] switch)<br />
* [https://www.sonnettech.com/product/allegro-usbc-pcie.html Sonnet Allegro USB-C PCIe Card USB3C-2PM-E] (Chipset: ASMedia ASM1142/ASM3142 (cards shipped before April 2020 use the ASM1142 controller))<br />
* [https://www.sonnettech.com/product/allegro-usbc-4port-pcie.html Sonnet Allegro USB-C 4-Port PCIe Card USB3C-4PM-E] (Chipset: Two ASMedia ASM1142/ASM3142 controllers (cards shipped before January 2020 use ASM1142 controllers) behind one [https://www.diodes.com/part/view/PI7C9X2G308GP Pericom PI7C9X2G308GP] switch)<br />
* [https://www.gigabyte.com/Motherboard/GC-USB-32-GEN2X2 Gigabyte GC-USB 3.2 GEN2X2] (Chipset: ASMedia ASM3242)<br />
<br />
==TV Tuners==<br />
* [https://hauppauge.com/pages/products/data_quadhd.html Hauppauge WinTV-quadHD] (Chipset: Four Silicon Labs Si2157 tuners, four LG LG3306A demodulators, and two Conexant CX23888 PCIe interface chips behind one [https://www.diodes.com/part/view/PI7C9X2G304EL Pericom PI7C9X2G304EL] PCIe switch)<br />
* Hauppauge WinTV HVR-850 (2040:7240) - ATSC - using Kaffeine<br />
<br />
==Firewire Host Controllers==<br />
===Working===<br />
<br />
* [https://www.sybausa.com/index.php?route=product/product&product_id=119 Syba SY-PEX30016] (Chipset: TI XIO2213B)<br />
** Requires [https://marc.info/?l=linux1394-devel&m=157207806405627&q=mbox this patch] to work on kernels with a 64k page size.<br />
<br />
=== Unknown if working (good candidates to test) ===<br />
<br />
* [http://www.dawicontrol.com/index.php?cmd=proddet&id=media Dawicontrol DC-FW800] (Chipset: TI XIO2213B)<br />
* [https://www.delock.de/produkte/G_89210/merkmale.html?setLanguage=en DeLOCK 3x FireWire 800, Item No. 89210] (Chipset: TI XIO2213B)<br />
* [https://www.digitus.info/en/products/computer-components/computer-peripherals/serial-parallel-adapter/ds-30203-2/ DIGITUS Firewire 800 (1394b) PCIe Card] (Chipset: TI XIO2213B)<br />
* [https://www.exsys.de/index.php?page=product&info=127 Exsys EX-16415] (Chipset: TI XIO2213)<br />
* [https://www.exsys.de/index.php?page=product&info=366 Exsys EX-16512E] (Chipset: TI)<br />
* [http://www.ioi.com.tw/products/proddetail.aspx?CatID=106&DeviceID=3021&HostID=2009&ProdID=1060100 IOI Technology FWB-PCIE1X11A] (Chipset: TI XIO2213B)<br />
[[Category:Compatibility List]]<br />
<br />
==Video Capture Cards==<br />
* [https://www.avermedia.com/professional/product/ce310b/overview AVerMedia CE310B] (Chipset: Conexant CX23888)<br />
** Requires kernel version 4.19.106, 5.4.22, 5.5.6, or later.<br />
<br />
==Serial Port Adapter Cards==<br />
===Working===<br />
* EXSYS EX-44072 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44073 PCI-Express 2x Serial RS-232 Board (Chipset: Oxford OXPCIe952)<br />
* EXSYS EX-44171 PCI-Express 1x Serial RS-232 / 1x Parallel Multi I/O Card (Chipset: Oxford OXPCIe952)<br />
** ''The UARTs implemented with the Oxford Semiconductor OXPCIe952 PCIe ASIC can be strapped for either native or legacy operation. The EXSYS boards configure it for the native mode and therefore work with the PHB4 just fine.<br>NB the PC parallel port is always a legacy PCIe device and therefore cannot work with the PHB4.''<br />
<br />
==PCIe/PCI Expansion==<br />
===Working===<br />
* [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/490/pcie-adapter-card-for-ex-1010/1031/1032/1041/1042 EXSYS EX-1095 PCIe Adapter card for EX-1010/1031/1032/1041/1042]<br />
** [https://www.exsys-shop.de/shopware/en/categories/expansions-boxes/1144/expansion-box-with-4-x-pci-slots-38cm-length-220w-power-supply EXSYS EX-1031 Quad PCI-Slot Expansion Box] (Chipset: TI XIO2000A)<br />
*** 3Com 3C905C-TX-M EtherLink 10/100 PCI Ethernet [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]<br />
*** DEC FDDIcontroller/PCI (DEFPA) PCI FDDI [[POWER9_Hardware_Compatibility_List/PCIe_Devices#NICs|NIC]]</div>Chatcannon