From patchwork Wed Aug 2 17:21:00 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Easwar Hariharan X-Patchwork-Id: 130082 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:9f41:0:b0:3e4:2afc:c1 with SMTP id v1csp668625vqx; Wed, 2 Aug 2023 12:08:52 -0700 (PDT) X-Google-Smtp-Source: APBJJlGYrUTiOUpq0RaEkmSuqEcG3gTG6+wBwd470+EicJfqAwgUMc/u09E+pAH+l0spI21yuOun X-Received: by 2002:a17:903:258b:b0:1bc:6c8:cde3 with SMTP id jb11-20020a170903258b00b001bc06c8cde3mr10775492plb.57.1691003332284; Wed, 02 Aug 2023 12:08:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691003332; cv=none; d=google.com; s=arc-20160816; b=XY2/Ld2uXLRIHTXHsoGGQZRzCSezsw7F8r0KgWc+go38DrA7nBlPyfd6FtIKYIa3lI ahG0pNLB9vwSt1v928gtsFCSPU/VcxA/zLSQl0/5Hpl4cztWgwF8BRyLm2lsaxDkcJCs VSEZAEyrTtFG0T2mrzv0nykw56EgwRmq1AaclTO3EXoxOQgIVMC0hF5AIgBrn2SPVFZn PZH0v0ZcbYAt0b2BIqdviGdzsHp8XJyzPVqgRt/NR6OMSJt0in/W+lo2R96hjgTEsc80 RNkm++sz2WWtgUincLPyzcZOd6SS8+F4x+qOcSSjCY1K2O95DCPJX0jVgCE0f8qpVivi 0EhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature:dkim-filter; bh=sN4ORbZrUsD8+oDSUPlCat1gm8L9RoKnYdulGETe/mA=; fh=zVESbQy7K5t90h942R/SL4grFuVNoQazJgxXy9NXKE0=; b=FtBXmKSqgHsA9QzxaPi5LI/GkShn+lUFZcwu8kqt7rsIeA842G9f/sxLJBinWYwoh5 ojqZfoplYznps4ZjmAuo5fdPUlNaYcDmNZ3BDXFpPnmWxjvrC5iG8jNVvwDQpR4YKfdH QF9x0JIvGrzfvvvMrXpOuL5bu4JEPJVY5F+kIVBYYljJiO0oM0q+Apkmg2aFtFsUKBk9 7rfg5WVQcjHC2Ky+va4Wsc++lq2ivHf+UP0W6XaPj3Txck77vWSzQwwtzX+SjEerATrx 87dvDjMP+UcnyC06esT4+UtuZrTyGhxQ14nIS4hkMOb9PoVD+9gpeoo2FKs2MoD2QTZr f6EA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linux.microsoft.com header.s=default header.b=jdqfRENJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linux.microsoft.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ls14-20020a17090b350e00b002686dc89da0si1669137pjb.20.2023.08.02.12.08.39; Wed, 02 Aug 2023 12:08:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linux.microsoft.com header.s=default header.b=jdqfRENJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linux.microsoft.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232633AbjHBRV1 (ORCPT + 99 others); Wed, 2 Aug 2023 13:21:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44932 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232432AbjHBRVR (ORCPT ); Wed, 2 Aug 2023 13:21:17 -0400 Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 0904F11D; Wed, 2 Aug 2023 10:21:16 -0700 (PDT) Received: from rrs24-12-35.corp.microsoft.com (unknown [131.107.1.149]) by linux.microsoft.com (Postfix) with ESMTPSA id 79213238C426; Wed, 2 Aug 2023 10:21:15 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 79213238C426 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1690996875; bh=sN4ORbZrUsD8+oDSUPlCat1gm8L9RoKnYdulGETe/mA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jdqfRENJoNpvIBmForqZeh7hAiqLXFfNQPhHjgKvsl4SR3GGavSxrPcnwLLiNV2Y7 UXkBdCv0rB9QQCX0EnrCJEJaFyH9FF57OYE3tHJ7gnZ7yUNVpf6SUrxBLt4XctQWne KSwY9HhY+orC1s9J4tY+PyIfFbr58b3Qt6uqHKTw= From: Easwar Hariharan To: stable@vger.kernel.org Cc: easwar.hariharan@microsoft.com, Robin Murphy , Nicolin Chen , Will Deacon , Catalin Marinas , Jonathan Corbet , Joerg Roedel , Vladimir Oltean , Yicong Yang , Lu Baolu , linux-arm-kernel@lists.infradead.org (moderated list:ARM64 PORT (AARCH64 ARCHITECTURE)), linux-doc@vger.kernel.org (open list:DOCUMENTATION), linux-kernel@vger.kernel.org (open list), iommu@lists.linux.dev (open list:IOMMU SUBSYSTEM) Subject: [PATCH v3 6.1 4/4] iommu/arm-smmu-v3: Document nesting-related errata Date: Wed, 2 Aug 2023 17:21:00 +0000 Message-Id: <20230802172100.1599164-5-eahariha@linux.microsoft.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230802172100.1599164-1-eahariha@linux.microsoft.com> References: <20230802172100.1599164-1-eahariha@linux.microsoft.com> MIME-Version: 1.0 X-Spam-Status: No, score=-19.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,ENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_MED, SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE,USER_IN_DEF_DKIM_WL, USER_IN_DEF_SPF_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1773145510333656779 X-GMAIL-MSGID: 1773145510333656779 From: Robin Murphy commit 0bfbfc526c70606bf0fad302e4821087cbecfaf4 upstream Both MMU-600 and MMU-700 have similar errata around TLB invalidation while both stages of translation are active, which will need some consideration once nesting support is implemented. For now, though, it's very easy to make our implicit lack of nesting support explicit for those cases, so they're less likely to be missed in future. Signed-off-by: Robin Murphy Reviewed-by: Nicolin Chen Link: https://lore.kernel.org/r/696da78d32bb4491f898f11b0bb4d850a8aa7c6a.1683731256.git.robin.murphy@arm.com Signed-off-by: Will Deacon Signed-off-by: Easwar Hariharan --- Documentation/arm64/silicon-errata.rst | 4 ++-- drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Documentation/arm64/silicon-errata.rst b/Documentation/arm64/silicon-errata.rst index 120784507bc0..a01ce64a0651 100644 --- a/Documentation/arm64/silicon-errata.rst +++ b/Documentation/arm64/silicon-errata.rst @@ -138,9 +138,9 @@ stable kernels. +----------------+-----------------+-----------------+-----------------------------+ | ARM | MMU-500 | #841119,826419 | N/A | +----------------+-----------------+-----------------+-----------------------------+ -| ARM | MMU-600 | #1076982 | N/A | +| ARM | MMU-600 | #1076982,1209401| N/A | +----------------+-----------------+-----------------+-----------------------------+ -| ARM | MMU-700 | #2812531 | N/A | +| ARM | MMU-700 | #2268618,2812531| N/A | +----------------+-----------------+-----------------+-----------------------------+ +----------------+-----------------+-----------------+-----------------------------+ | Broadcom | Brahma-B53 | N/A | ARM64_ERRATUM_845719 | diff --git a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c index 330f909a29de..db33dc87f69e 100644 --- a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c +++ b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c @@ -3438,11 +3438,16 @@ static void arm_smmu_device_iidr_probe(struct arm_smmu_device *smmu) /* Arm erratum 1076982 */ if (variant == 0 && revision <= 2) smmu->features &= ~ARM_SMMU_FEAT_SEV; + /* Arm erratum 1209401 */ + if (variant < 2) + smmu->features &= ~ARM_SMMU_FEAT_NESTING; break; case IIDR_PRODUCTID_ARM_MMU_700: /* Arm erratum 2812531 */ smmu->features &= ~ARM_SMMU_FEAT_BTM; smmu->options |= ARM_SMMU_OPT_CMDQ_FORCE_SYNC; + /* Arm errata 2268618, 2812531 */ + smmu->features &= ~ARM_SMMU_FEAT_NESTING; break; } break;