From nobody Thu Apr 2 14:09:48 2026 Received: from mail-lj1-f169.google.com (mail-lj1-f169.google.com [209.85.208.169]) (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 D8CF93368BB for ; Wed, 25 Mar 2026 21:11:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774473073; cv=none; b=mgprlb6VBmqsVP1LxuaexDLc8FvUbkJCpaDAGfpo9nyjFsAW0siMZi9sSWmB32KpFTMZThqiK+we2iklASs2Ut4TQEj8ZnXs4WZDaaFCaFtcWhVR6IC9hU39vqmeIMspKKFSCYJ0pVDcEicU4BxWBvL+d6+CJDTQYRp3clTguaM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774473073; c=relaxed/simple; bh=c9MHl6wwCqZZZNdguQdAF7xL+qjBzLIdLAmWzKLWIrs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=h77fzlXRkMGNIwZrcB0TlmxSBbyQsiHvFwR0eGrKnFlL2FVhSi++RH8RkTiRYlokEl2EFrLdZhu0PIuI83ItvsxbjyhAIawiB4ngk/9PpX1L9Bwd/8kxMqZGeFzSCI+F+lrSxDUvEvxcTHE+OCsK4tEZLWhqpWPiF7FWe72oT1o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=mgkEPGJb; arc=none smtp.client-ip=209.85.208.169 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mgkEPGJb" Received: by mail-lj1-f169.google.com with SMTP id 38308e7fff4ca-38a43f1f978so2240151fa.3 for ; Wed, 25 Mar 2026 14:11:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774473070; x=1775077870; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:from:to:cc:subject:date:message-id:reply-to; bh=BFJKPQI5/sac9me8amIP9+ekaSHHOonqJLT2WhRtyac=; b=mgkEPGJb/Ysm8b8ff/QIx1RmXrLf4wiJdoc2gzgB1yhZJB43R6sT3kj1lMerc//J7h UZXHi1HLN5R66ZsQbxQYRwO5Oackhn4R3y4EZETbg9MydoUBLwMOqwKZBfJDtqGIoBrB b2i5eqvilaLrNZ1Q7cLYBvHA4qWjdV/+s/qaJKnvu439wb/Ki2cU/WRiIaDkmK2CYYI7 DPc3mONK0gq5wgdxejuaDEGsM3ltMUTY6do51iF2Nn/5iWdwV8xuzXgu+z8rjjSnG/b5 I/BD+fBW35GoHgW+mvrRXnm/54sJxEswXvpSTeFE+KMpYJKKjuENGhh8UbH1PWrsuvPU Df/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774473070; x=1775077870; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=BFJKPQI5/sac9me8amIP9+ekaSHHOonqJLT2WhRtyac=; b=aieyzoaMesEhKM8Yct5wh7sUUqTJww52+RVTWcgeQbr8hPRlzFjQ5Ily0K2fFZ6rpv SIhlEbxXh5pmkaRjz1kGY+HV22iXM3JHnLeaGdz8Desani0BbzRUETyw0turVVSNXEI4 ITuNlagfg5TO8G/5eyJzVeyZqZ3IMFt9aNBnlvU0uPXqd5nf2CECuvn+IaANZ5pjNoTc dI4M+EHoAScTm4g1IRLJWvcdePWanW7OlLafcdVtKUZfE1vA5UV6Uge3Alf+OK0TR47u TqVop2AnuKohV5+gIP++5wpkIclglQZAFj18hdFFKBUqok2IZ9mHkGhke6K0rONU07rj 96zA== X-Forwarded-Encrypted: i=1; AJvYcCUVqJtC6p5DCchiYpIUspyKuYe8H019AkWdhkCpLPR0Y3q2U7I9IyJo4J01FgBSanKhqzADfJFpJTfz16c=@vger.kernel.org X-Gm-Message-State: AOJu0YxSvpZtkAmiDo+sTCisdldKXZUxfEJcKANbfoWKL6cVommxpezk FEaewvxC87X6dkTZQ5cnuFePrM6biRPrPfPxOwWuk1JbYVaKqbH/lgY= X-Gm-Gg: ATEYQzyhbdkBcAS/qtEWPvlZTYsdnJNvFN4TbbJz4y4zHc7vby5s4/JFsOguR3Sup2P ptcxidpOZKv70Fwhr9UVWZWLxUpzbNyXWQEIlQRH4CEVc47NH0LpJAbvl1lLwhcIkVRrsCXocsn Pj0bsDlYANZ/plRt6E6jqfQND+vTK8Ej+9YJBEmUVe1CkzAqttc6DQKkBC8DdO2eZc3St+xrOS3 bMDGxfDRJKxdlReFZgMisTGyRhZUbtJAvzeq27lu1n57s3feTyIXIndp194NPKpm+eSm8QIiEDf qojmcfGltv/rJmBnY44XEMqG+gPt5FF1E+es6LZlONjfClza1/5uVZWU6fgxSsixcZVQk2HeowA FkzL/hq7rk03PVWeks7HQ1FeeoK3QshfGD5giN4kaaXn4+M5+k6ZoJ/aiCNGQOQo3GCYD9yhILS RkP5R1EKrKlIYnSFfEyBW+20nUxQA1qAqD8LribTu90zNs2UaQBXS4fJQcyA/u1AUoN/AHX9deA x48VJ9d4g+XDItWOy8fKIg6 X-Received: by 2002:a2e:bcc4:0:b0:387:d29:fd4f with SMTP id 38308e7fff4ca-38c43053841mr18578111fa.1.1774473069655; Wed, 25 Mar 2026 14:11:09 -0700 (PDT) Received: from [192.168.1.17] (host-79-52-171-101.retail.telecomitalia.it. [79.52.171.101]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-38c52fac168sm1524821fa.11.2026.03.25.14.11.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Mar 2026 14:11:09 -0700 (PDT) From: Anna Maniscalco Date: Wed, 25 Mar 2026 22:11:03 +0100 Subject: [PATCH v2] iommu: arm-smmu-qcom: Ensure smmu is powered up in set_ttbr0_cfg Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260325-qcom_smmu_pmfix-v2-1-ba769a6ad0be@gmail.com> X-B4-Tracking: v=1; b=H4sIAAAAAAAC/3WNTQ6CMBBGr0JmbU07oBhX3sMQUsoIk1jAVhsN6 d0d2bt8L9/PCpECU4RzsUKgxJHnSQB3BbjRTgMp7oUBNR41Gq0ebvZt9P7VLv7Gb4WWbI+drQg 1SGsJJHpbvDbCI8fnHD7bQTI/+38rGWVUfepqU5XW6UN5Gbzl+15i0OScvxkVNjWuAAAA X-Change-ID: 20260210-qcom_smmu_pmfix-2aead2ba4e20 To: Rob Clark , Will Deacon , Robin Murphy , Joerg Roedel Cc: iommu@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Anna Maniscalco X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774473068; l=1749; i=anna.maniscalco2000@gmail.com; s=20240815; h=from:subject:message-id; bh=c9MHl6wwCqZZZNdguQdAF7xL+qjBzLIdLAmWzKLWIrs=; b=nZxsZvGAgjyLb36vu1D/zn/oDYONnycLHZGwePaIYT75gLjwmEB/AP/WcoAECO0yu57KZ+ikU XNixHH2ZPVhDYRs4ADLGfLw/0OhzZBIQ0C9H4Duz9/j7FQodQ3+oErp X-Developer-Key: i=anna.maniscalco2000@gmail.com; a=ed25519; pk=0zicFb38tVla+iHRo4kWpOMsmtUrpGBEa7LkFF81lyY= Previously the device was being accessed while potentially in a suspended state. Signed-off-by: Anna Maniscalco --- Changes in v2: - Simplify patch by acquiring device just around the call that needs it - Link to v1: https://lore.kernel.org/r/20260210-qcom_smmu_pmfix-v1-1-78b71= 43ac053@gmail.com --- drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c b/drivers/iommu/arm= /arm-smmu/arm-smmu-qcom.c index 573085349df3..cab7d110aaf5 100644 --- a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c +++ b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c @@ -231,6 +231,7 @@ static int qcom_adreno_smmu_set_ttbr0_cfg(const void *c= ookie, struct io_pgtable *pgtable =3D io_pgtable_ops_to_pgtable(smmu_domain->pgt= bl_ops); struct arm_smmu_cfg *cfg =3D &smmu_domain->cfg; struct arm_smmu_cb *cb =3D &smmu_domain->smmu->cbs[cfg->cbndx]; + int ret; =20 /* The domain must have split pagetables already enabled */ if (cb->tcr[0] & ARM_SMMU_TCR_EPD1) @@ -260,8 +261,16 @@ static int qcom_adreno_smmu_set_ttbr0_cfg(const void *= cookie, cb->ttbr[0] |=3D FIELD_PREP(ARM_SMMU_TTBRn_ASID, cb->cfg->asid); } =20 + ret =3D pm_runtime_resume_and_get(smmu_domain->smmu->dev); + if (ret < 0) { + dev_err(smmu_domain->smmu->dev, "failed to get runtime PM: %d\n", ret); + return -ENODEV; + } + arm_smmu_write_context_bank(smmu_domain->smmu, cb->cfg->cbndx); =20 + pm_runtime_put_autosuspend(smmu_domain->smmu->dev); + return 0; } =20 --- base-commit: 50c4a49f7292b33b454ea1a16c4f77d6965405dc change-id: 20260210-qcom_smmu_pmfix-2aead2ba4e20 Best regards, --=20 Anna Maniscalco