Topton Nas motherboard N17 (not sure) with Ryzen 8845hs issue with IOMMU and AMD-VT

FancyBee

Member
Mar 7, 2024
31
3
8
Hi. I finally bought one for my NAS server but I can't activate IOMMU for passthrough. Company claim that IOMMU and AMD-VT activated by default. In bios firmware there are no such option(or may bi. But all manipulation with Grub that I do with previous mb with Ryzen and Proxmox 8.1 don't work.

May be someone completed this quest or have fresher firmware. I have version from May 07, 2024.
 
AMD-V is for running virtual machines (like Intel VT-x) and AMD-Vi is for PCI(e) passthrough (like VT-d). Proxmox enables amd_iommu by default (and has for a long time on AMD) but it needs to be enabled in the motherboard BIOS (setting IOMMU to Auto is not always enough). You don't need to do anything in Proxmox only in the BIOS.

What is this AMD-VT you are talking about? And what makes you think IOMMU is not enabled or working on your AMD system? Which motherboard Ryzen chipset?
 
Last edited:
AMD-V is for running virtual machines (like Intel VT-x) and AMD-Vi is for PCI(e) passthrough (like VT-d). Proxmox enables amd_iommu by default (and has for a long time on AMD)
on 8.1 it was not enabled. I needed to edit grub config.
but it needs to be enabled in the motherboard BIOS (setting IOMMU to Auto is not always enough). You don't need to do anything in Proxmox only in the BIOS.
In bios there are no option related to IOMMU. No AMD-Vi. Dealer said that both are enabled, I try to verify it and setup passthrough for GPU, sata controller.
What is this AMD-VT you are talking about? And what makes you think IOMMU is not enabled or working on your AMD system? Which motherboard Ryzen chipset?
Motherboard Topton nas (potential model number N17) with mobile cpu Ryzen 8845hs. Topton don't provide mb model and on pcb only mentioned "topton nas". It has several additional controllers from asmedia (8x sata ), intel (4x 2.5G eth). Cheap choice for home lab nas. I don't want to waste potential with dedicated truenas and want it virtualise inside proxmox

I don't know exact chipset for mobile cpu. 8845hs is released this year and support DDR5 so I think it is something generic.
 
Bought the same board but with 7840HS, it is still in transit, can you tell me (and for yourself in 2 years :D ) how did you do that?
You edited grub with what exactly?
 
Bought the same board but with 7840HS, it is still in transit, can you tell me (and for yourself in 2 years :D ) how did you do that?
You edited grub with what exactly?
About purchasing it and usage scenarios:
I look up several reviews on YouTube. On paper it looks great. You buy it on AliExpress, install Proxmox, setup TrueNas on top, connect disks and it works. I prefer Proxmox with TrueNas as one of several OS and for some of them with Nvidia VGPU passthrough. Right now looks like I have stuck with TrueNas and Docker images without any VGPU.

About IOMMU:
There is an article https://forum.proxmox.com/threads/p...x-ve-8-installation-and-configuration.130218/ that describe gpu passthrough. Usually nano or vi editors used to edit files. For AMD cpus:

/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet iommu=pt"

after that execute command update-grub without arguments and reboot

I planned to use this motherboard as home server for nas and virtualisation so iommu support was crucial. CPU support it. Motherboard bios don't, so I'm stuck right for now. I have a long conversation with manufacturers support. they say this is OEM board so it shipped as is. It is functioning - so no additional service.
 
The board and other parts has arrived so today I installed proxmox.
I have 7850HS cpu, but it seems igpu works, here is the guide I followed:
https://www.servethehome.com/how-to-pass-through-pcie-nics-with-proxmox-ve-on-intel-and-amd/

Very similar to yours, but the grub file is a bit different:

nano /etc/default/grub
Code:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"
update-grub

nano /etc/modules
Code:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

Reboot PVE -> dmesg | grep -e DMAR -e IOMMU should show something like this:

9028.png

My bios is v0.01 and similar to OEM bioses, it has almost ZERO configuration. I can't even see if HDD-s are detected and I just hope everything will work in the future :\
 
Looks like I'm have problems with my mb and its bios.
This is mb https://www.aliexpress.com/item/1005006597893262.html I choose 8845hs with cables and fan.

I use proxmox 8.2.1 with kernel 6.5.13-6-pve
It uses grub and I tried to use use systemd setup. same result
--grub case:
grep iommu /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"

executed "update-grub"

--just in case systemd case:
grep iommu /etc/kernel/cmdline
quiet amd_iommu=on iommu=pt

executed "proxmox-boot-tool refresh"

rebooted
execute command "dmesg | grep -e DMAR -e IOMMU" and get empty result. no iommu for me from mb.

in dmesg related to modules load:

[ 21.203767] Modules linked in: intel_rapl_msr intel_rapl_common nvidia_vgpu_vfio(OE) nvidia(OE) snd_soc_dmic snd_soc_ps_mach snd_ps_pdm_dma amdgpu(+) snd_sof_amd_rembrandt edac_mce_amd snd_sof_amd_renoir snd_hda_codec_realtek snd_sof_amd_acp snd_hda_codec_generic snd_sof_pci snd_sof_xtensa_dsp kvm_amd ledtrig_audio snd_sof crct10dif_pclmul polyval_clmulni polyval_generic ghash_clmulni_intel snd_hda_codec_hdmi snd_sof_utils amdxcp sha256_ssse3 iommu_v2 snd_soc_core snd_hda_intel drm_buddy sha1_ssse3 gpu_sched snd_intel_dspcfg aesni_intel snd_compress snd_intel_sdw_acpi drm_suballoc_helper ac97_bus drm_ttm_helper snd_pcm_dmaengine snd_hda_codec ttm crypto_simd cryptd snd_pci_ps snd_hda_core snd_rpl_pci_acp6x drm_display_helper snd_acp_pci snd_pci_acp6x snd_hwdep cec snd_pcm snd_pci_acp5x rc_core snd_rn_pci_acp3x mdev snd_timer snd_acp_config drm_kms_helper snd snd_soc_acpi soundcore i2c_algo_bit rapl pcspkr kvm k10temp snd_pci_acp3x ccp mac_hid zfs(PO) spl(O) vhost_net vhost vhost_iotlb tap vfio_pci vfio_pci_core

[ 21.203840] irqbypass vfio_iommu_type1 vfio iommufd drm efi_pstore dmi_sysfs ip_tables x_tables autofs4 xfs btrfs blake2b_generic xor raid6_pq simplefb dm_thin_pool dm_persistent_data dm_bio_prison dm_bufio libcrc32c xhci_pci xhci_pci_renesas nvme crc32_pclmul thunderbolt xhci_hcd ahci nvme_core i2c_piix4 igc libahci nvme_common video wmi

IOMMU and vfio modules loaded.


In bios there are no IOMMU, VT-d mentions. CPU handling it, but bios looks like don't have any setup options.

I have one idea - check that cmdline to kernel actually applied, but I need to look at documentation how to do it.
 
Since you have nothing to loose, have you tried the Step 3a from the link I posted?

Step 3a: Enable IOMMU using systemd​


My bios is pretty much empty, I see not VT-D or IOMMU either, it is a crap bios, but it is what it is for this price :\
 
After testing Proxmox does not recognize my igpu either, I have no idea why, iommu works, but I cant passthrough. :(

Since I use DSM I tried to install that baremetal, but after booting it restarts, probably kernel panic, but I'm not good enough to find out why. I will wait a little bit more and send it back, since it is useless for the average user. :(
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!