From 2ae6c737e71c1f39dca841e66a4ad6ac7c1fb585 Mon Sep 17 00:00:00 2001 From: kettenis Date: Sun, 4 Feb 2024 18:44:23 +0000 Subject: [PATCH] Add a DMA constraint for the x13s. Some brilliant person at Qualcomm decided that tying a wifi interface that can only do 32-bit DMA to their compute platform that typically comes with at least 8G of memory was a sensible thing to do. Maybe we should be able to use an IOMMU to work around that. But they fucked that up as well. ok patrick@, phessler@ --- sys/arch/arm64/stand/efiboot/efiboot.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/arch/arm64/stand/efiboot/efiboot.c b/sys/arch/arm64/stand/efiboot/efiboot.c index 2754f192f0e..ca2cd2358ab 100644 --- a/sys/arch/arm64/stand/efiboot/efiboot.c +++ b/sys/arch/arm64/stand/efiboot/efiboot.c @@ -1,4 +1,4 @@ -/* $OpenBSD: efiboot.c,v 1.48 2023/05/12 16:43:00 kettenis Exp $ */ +/* $OpenBSD: efiboot.c,v 1.49 2024/02/04 18:44:23 kettenis Exp $ */ /* * Copyright (c) 2015 YASUOKA Masahiko @@ -587,6 +587,8 @@ efi_dma_constraint(void) fdt_node_is_compatible(node, "rockchip,rk3588") || fdt_node_is_compatible(node, "rockchip,rk3588s")) dma_constraint[1] = htobe64(0xffffffff); + if (fdt_node_is_compatible(node, "lenovo,thinkpad-x13s")) + dma_constraint[1] = htobe64(0xffffffff); /* Pass DMA constraint. */ node = fdt_find_node("/chosen"); -- 2.20.1