Arm-smmu context faults with kernel 5.15.59

Hi

I’ve booted alpine linux 3.16.2 via uefi (kernel 5.15.59 lts). The kernel log is getting a constant stream of arm-smmu context faults and the cpus are quite busy dealing with all the irqs from it.
It seems to start here:

[    0.118607] fsl_mc_bus NXP0008:00: Adding to iommu group 0
[    0.118832] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080bffee0, fsynr=0x360010, cbfrsynra=0x4000, cb=0
[    0.118851] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118858] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118864] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118870] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118876] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118882] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118887] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118893] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.118899] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0
[    0.448671] Freeing initrd memory: 14040K
[    0.619018] fsl_mc_bus NXP0008:00: mc_get_version() failed with error -110
[    0.619138] fsl_mc_bus: probe of NXP0008:00 failed with error -110

After that it’s just a constant stream of these messages:

[    5.119427] arm_smmu_context_fault: 2359451 callbacks suppressed
[    5.119437] arm-smmu arm-smmu.0.auto: Unhandled context fault: fsr=0x402, iova=0x2080000100, fsynr=0x360040, cbfrsynra=0x4000, cb=0

I also get the same error when booting ubuntu-22.04.1 via uefi. Sorry if the above isn’t very helpful.

Thanks in advance.

all kernels that are not from our github repo in the -cex7 branches require the kernel commandline option iommu.passthrough=1 Linux 6.0 has finally merged the IORT RMR patches needed for the SMMU to work properly with the network packet processor, but will require a new firmware release.