From patchwork Wed Nov 17 21:15:05 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sven Peter X-Patchwork-Id: 12692991 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4C5D5C433EF for ; Wed, 17 Nov 2021 21:17:08 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 111736139F for ; Wed, 17 Nov 2021 21:17:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 111736139F Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=svenpeter.dev Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=PBDN5aqQWsYpJWd8NcNIcccSukQpFQ7/g0YoB0xc63U=; b=h0i2QHLWFEE7wm 9DfYwrinSQAGCkHIAo+bEbpt5rpJO+jiA9Sv9/SwZryX30rxSxgRXTAP8zAvFO44fbnxNE1EjOREb ItSh3wrW/GhcuWH1rIbyFHLGz4+SXvpVt4kXrr+ncv8kODOGW20meaXM+MYu3LV6WEE8awzQLOy3L Wa5MQx3jAGaNE7OkbRapD/Q1Fk9GdGp/4cevgqunBGGKfqQNlA39KEzXSvz5yPHj5lj3iztcydtqn +7P9Tixd09bhCTFKlfen+Jj6dCRH3cnVqDZ/6oQDE4L9PbwcgaASbm7kO1UA7lzQXum012kx7XbEG xD1Hm9hFjWWMAViMfq0A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mnSHT-006I00-QT; Wed, 17 Nov 2021 21:15:48 +0000 Received: from new2-smtp.messagingengine.com ([66.111.4.224]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mnSHD-006Hu7-Qu for linux-arm-kernel@lists.infradead.org; Wed, 17 Nov 2021 21:15:33 +0000 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailnew.nyi.internal (Postfix) with ESMTP id AEBA55806CC; Wed, 17 Nov 2021 16:15:25 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Wed, 17 Nov 2021 16:15:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=svenpeter.dev; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; s=fm3; bh=rDJmmzVKF8xgYuniWddaY4KG6e sEwkL+aJ6zJYHAFWM=; b=UJMItec/TlKbyg/Whl5WDkHIh9rMWnpzxMWgb2+J4n SlsxUz4WWwIF3wRG6RVkwOMrUmeffwyLrynIOcEgkzHouz1ITe4BzmttLM1xT0c3 OrxKrlNv25+4ynyGi2e5Sw+fko+9X8laH1TDFDcAMQGxzS5p+Ytf8I1aCskNt0B9 WqjvJhOuL8Mz1hWbYuDyZjTJU9p2VtC+60UXgweMQUNvwOk+mWWQ7U68dS0UwKtj 05T7DmSLoiw3y+zzQXMVdxD5nrxf91J1BGocD8p8rMsGOHxJJIpKuBcyzDUXi7ir 3TPTRjBFhqzKD1J71/XEkT6qAOQz9VJ6eVzdOzlUaowg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:date:from :message-id:mime-version:subject:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=rDJmmzVKF8xgYuniW ddaY4KG6esEwkL+aJ6zJYHAFWM=; b=V4ZRFYTOs8f8/cNkvBdYERMmRvrGypksj kxaBFJDI+i7k4aXbH3vzgaXZjVlgtkMUFN5uLDndjxnZU/HEKOZlxXE2EFegvIZN DDQO0CAdsKLItUlHY0b7hGHyOPf9mu1dn9hV0uQ/aSyDms2pZFLQDozBImwAbcZt 25r75XTtAlNZEP9nMD1ftMVBpNGk7odZ9Cf/BlrYCz1opxl27eZz+g/fevV9FPQf 4Oq2tyC9r5cDDie0CCgmkusHjr1cgtPjYDKOoAeq2OZqqeRPxT0ouwZxSHanUcjf 8mAgwLRLMo6fBKwkMVwlJVXu6KXTbWq5G6ttytbgz1ZqWyfwkhEHg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvuddrfeeggddugedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvufffkffoggfgsedtkeertdertddtnecuhfhrohhmpefuvhgvnhcurfgv thgvrhcuoehsvhgvnhesshhvvghnphgvthgvrhdruggvvheqnecuggftrfgrthhtvghrnh epfeehudeftddvhfehvdduhedtjeejheeuudfftdfgvdekvdelleeuveelgfeflefgnecu ffhomhgrihhnpehkvghrnhgvlhdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurf grrhgrmhepmhgrihhlfhhrohhmpehsvhgvnhesshhvvghnphgvthgvrhdruggvvh X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 17 Nov 2021 16:15:22 -0500 (EST) From: Sven Peter To: iommu@lists.linux-foundation.org Cc: Sven Peter , Joerg Roedel , Will Deacon , Rob Herring , Janne Grunau , Hector Martin , Robin Murphy , Alyssa Rosenzweig , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH 0/4] iommu: M1 Pro/Max DART support Date: Wed, 17 Nov 2021 22:15:05 +0100 Message-Id: <20211117211509.28066-1-sven@svenpeter.dev> X-Mailer: git-send-email 2.30.1 (Apple Git-130) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211117_131532_000258_46671C1B X-CRM114-Status: GOOD ( 13.50 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi, This is a fairly brief series to add support for the DARTs present in the M1 Pro/Max. They have two differences that make them incompatible with those in the M1: - the physical addresses are shifted left by 4 bits and and have 2 more bits inside the PTE entries - the subpage protection feature is now mandatory. For Linux we can just configure it to always allow access to the entire page. Note that this needs a fix to the core pagetable code. Hector already sent a first version separately to the mailing list since the problem is (at least in theory) also present on other SoCs using the LPAE format with a large physical address space [1]. Sven [1] https://lore.kernel.org/linux-iommu/a2b45243-7e0a-a2ac-4e14-5256a3e7abb4@arm.com/T/#t Sven Peter (4): dt-bindings: iommu: dart: add t6000 compatible iommu/io-pgtable: Add DART subpage protection support iommu/io-pgtable: Add DART PTE support for t6000 iommu: dart: Support t6000 variant .../devicetree/bindings/iommu/apple,dart.yaml | 4 +- drivers/iommu/apple-dart.c | 19 ++++++++- drivers/iommu/io-pgtable-arm.c | 40 ++++++++++++++++++- include/linux/io-pgtable.h | 2 + 4 files changed, 61 insertions(+), 4 deletions(-) Tested-by: Janne Grunau