From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 82A803C7697 for ; Sun, 14 Jun 2026 14:51:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.179 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781448705; cv=none; b=Y6f8RF251hjw2IAp06xWgJ6G19P+ntu57JihfkHGHa/FOUDxm6TWs4UPobQUz9MNFvQusMNyPdFeVK7QS6xMYxtxGSvkhVNVQOgH0FYFyjBf4cQbHiLLYmjjnwhNkEyL6QI19i17xEwWYdfcCskgyF05hkqxyl3lMqj4wXcns90= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781448705; c=relaxed/simple; bh=ogMc+SzI7BygL/QiVUbBYX/vH1UfhMtj0GEZ+Aa4xVg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ScA9hDS2fA3SoUfUVJriOks8BCUFU7m/0i/nELBDS5Cqt2dnTfuJ65E06y5B5PBF58MnMHUY8CZMOQMcvjWDhHNpzMjoPVpPrfc7MrUgCKKjCPwFxzNPGjCy96e57l/rDoUeXrDXJrRoyRRLLc08COLZmOoMl/SBX9GBbBEvqQM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=quora.org; spf=pass smtp.mailfrom=quora.org; dkim=pass (1024-bit key) header.d=quora.org header.i=@quora.org header.b=Az/IenjI; arc=none smtp.client-ip=209.85.214.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=quora.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=quora.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=quora.org header.i=@quora.org header.b="Az/IenjI" Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-2bf22d29dabso15709645ad.2 for ; Sun, 14 Jun 2026 07:51:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quora.org; s=google; t=1781448700; x=1782053500; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=c+DoEJx5niGEYDDqKxpP9EhcqDdLdwV3n1HbmZ+qqPE=; b=Az/IenjI7lxchh6kvuIg+5I2rgXx3goXeaEMba0EHeARLPpFxko7XJmfgP4cu5cD1A DAwDuy4ZMdFLAV+xWhrYL9nNTlyluYgRfhvWEzJTpJpVMFtyJyp5XK7kjHELNuFEaEU8 yBvIClA0LT1Q8vEFKLxrJ2LhffqqQOUA3OVW0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781448700; x=1782053500; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=c+DoEJx5niGEYDDqKxpP9EhcqDdLdwV3n1HbmZ+qqPE=; b=IXEoMfyt3j8CshJnHR0s4mmWCN0T6R3hIjIp00JuhB79dJfadCA/mzW2OhyjJYHXX/ W0yvhLqatccmEUhI+RN65Wf7Ewwk+05gXhW4kKoF95VQtUXgYlEKMcr8xXWhUS+pgKC+ gLIny1yZpaX0F5NP1ea5pBi8HwpXLA0Pu6x6kStGYgjFw6bpOldwMAXKvNhheV9PKGzR H8xKv3WqgLFFEUKrwz4p004xrEcteGHwLSFOOuMgKDBnEaT1zAUXynGwYvUU3dKTji7Q BMfcpxZwHv6Mg1InuH0xc+CK3Yew4sKrgo8MoLNb2WFm2ZJgS9qnpYaos02JFsHvg3IU mBgw== X-Forwarded-Encrypted: i=1; AFNElJ8N22Hki1PivUnWudUtpdZMM2S4QLevYyPJTWK3ydv2USqG0UaBgS59jUp1AvABIFgzn+P6KsrpjSpK5Fc=@vger.kernel.org X-Gm-Message-State: AOJu0YxzTrerSHDii519KAb2f4djvrXIbPPlW528eKCyP8raK1WjR58T HmsYZt83w3YC1Iv9TGY/Yuyy4W5Pc73yoNvO3sK8pvJO8MFO6j44qdFpPcLhnz1ym7Q= X-Gm-Gg: Acq92OGqLDMqBIwBOheq/mzdZJNTgfkM1sgkAQSmfKW9fD+5HgisiYVbvhbA6Afxwob 05/wyz8IHhKcYUI3FXw7Fl1XCBH4VRg5TF/UC6s0Kd31ClyqkX0Nznu9AHxNqV0R2dWGJsqoyPn oZj7zDtABPC0DJYYPNh5UxSJYYMY4iYQZkCMS4KdNsRS9K4XBtPkHHon1t8d2SGxihFCzoB2wCU /ouL7FrRDFsfjMVjC/1tzRaT/VRLzIWYXlloKy+XPd1496LmfR97GqrK6O3zC3OTaa2pNecWNJq 8crLw67ZqiGaGzdkX5jls/Ba3PSns0qpBqQ9Ubi//xpK5qUU61I197OHLK0/Blmp6Kje7OI2Uf6 CvwQ2SC0w51WjcI2R1nmZkOwuKdDjtR2FCpiHXCg5PgbZFYcYMtLNMV1PtTbP+NbJeZe9HyoSGD GPcxisTVza0YGi0I5cLOwiMc1GbVmuPzRDh8yJD4KmwD0snMfDjhHs4OjVgUeqGCB5V9F9QGhX6 gcSfEFTPBuM6E3NqzATlKeegPa3v/g2SZJWsy2xUTBRpS6Lpxz69e8lh/c8ciBptk+QR3wJscLo J14s0z/5znTtcfmltFUJcvi1auZQwbelbQFSECHRX+o4XAZF23vhK0DeOa431w== X-Received: by 2002:a17:903:37c7:b0:2c0:f807:9bf3 with SMTP id d9443c01a7336-2c4108f197dmr120914925ad.10.1781448700638; Sun, 14 Jun 2026 07:51:40 -0700 (PDT) Received: from aegis ([2001:fd8:4d03:c800:f499:6f6c:fbd4:8f]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2c4327acca5sm66746385ad.51.2026.06.14.07.51.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Jun 2026 07:51:40 -0700 (PDT) From: Daniel J Blueman To: "Bryan O'Donoghue" , Vikash Garodia , Abhinav Kumar , Bjorn Andersson , Konrad Dybcio Cc: Daniel J Blueman , Mauro Carvalho Chehab , Stephan Gerhold , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux-arm-msm@vger.kernel.org, linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: [PATCH v2 2/2] arm64: dts: qcom: hamoa: Reserve low IOVA range for Iris Date: Sun, 14 Jun 2026 22:51:12 +0800 Message-ID: <20260614145113.84243-2-daniel@quora.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260614145113.84243-1-daniel@quora.org> References: <20260614145113.84243-1-daniel@quora.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit On X1-family hamoa platforms, the Iris VPU reserves IOVA addresses below 0x25800000 (600MB), primarily for non-pixel buffers accessed via different Stream IDs. DMA into that range triggers unhandled SMMU page faults that cause spontaneous device reboots. This is readily reproduced with one or more browser tabs driving multiple concurrent video decode streams. Add a reserved-memory IOVA reservation node covering [0, 0x25800000) and reference it from the Iris node so the IOMMU layer keeps DMA allocations above that boundary. This applies to all current hamoa.dtsi consumers (X1E80100/X1P42100/ X1P64100 boards); other Iris-bearing SoCs (sm8550/sm8650/sa8775p/ qcs8300) do not include hamoa.dtsi thus not affected. Backports also require the preceding binding patch ("dt-bindings: media: qcom,sm8550-iris: Allow IOVA reservation memory-region"); without it, dtbs_check rejects the second memory-region entry. Link: https://github.com/qualcomm-linux/kernel-topics/issues/1157#issuecomment-4458933574 Fixes: 9065340ac04d ("arm64: dts: qcom: x1e80100: Add IRIS video codec") Cc: stable@vger.kernel.org Signed-off-by: Daniel J Blueman --- v2: - add Fixes tag - clarify the reservation rationale v1: https://lore.kernel.org/lkml/20260601041336.9497-2-daniel@quora.org/ arch/arm64/boot/dts/qcom/hamoa.dtsi | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/qcom/hamoa.dtsi b/arch/arm64/boot/dts/qcom/hamoa.dtsi index 051dee076416..ce96e7f8d8c1 100644 --- a/arch/arm64/boot/dts/qcom/hamoa.dtsi +++ b/arch/arm64/boot/dts/qcom/hamoa.dtsi @@ -716,6 +716,17 @@ smem_mem: smem@ffe00000 { hwlocks = <&tcsr_mutex 3>; no-map; }; + + /* + * The Iris VPU reserves IOVA below 0x25800000 (600MB), + * primarily for non-pixel buffers using different Stream IDs. + * DMA into that range triggers unhandled SMMU faults and + * spontaneous reboots, so reserve it to keep IOMMU + * allocations above this boundary. + */ + iris_iova: iris-iova { + iommu-addresses = <&iris 0x0 0x0 0x0 0x25800000>; + }; }; qup_opp_table_100mhz: opp-table-qup100mhz { @@ -5479,7 +5490,7 @@ &config_noc SLAVE_VENUS_CFG QCOM_ICC_TAG_ACTIVE_ONLY>, interconnect-names = "cpu-cfg", "video-mem"; - memory-region = <&video_mem>; + memory-region = <&video_mem>, <&iris_iova>; resets = <&gcc GCC_VIDEO_AXI0_CLK_ARES>; reset-names = "bus"; -- 2.53.0