From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 00396FC02 for ; Tue, 30 Apr 2024 10:23:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.140.110.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1714472628; cv=none; b=e0LLUWbjLS+gKXaD3cytyY+KNmiCnndLR+8nqAU3fA9nLYiNagOh8/owGssRBFnZ0qGnaY3QW16WV+0cJRIyRsNDM+Lw8lqBP5Kebdwr7uZuCFtf9++b0EyWcD5QqGARzDX2CUTxz/6mwB5HgdZGwexnx7AJcP1Z0iQvao0Ro3E= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1714472628; c=relaxed/simple; bh=eLH+METm0AsTFQ6Y4g1s5b5xJ/ljP9ZtdjDuXyD+Kmg=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=K9V23vwCBoDsM+cPYL75oc355T4wAmLop72kixsXsIIsECbsjcJvCqCctOOv5J33/mO1BdCTmjcQ7Q7J6X9PS3FBDru78AUfGkrRPx0/iwAvTeUQD0lfrhWqTGklK3e6OtyFCcx4Hoyg8PpREud5KI28JYD2L7AfquL1WM4ep7I= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; arc=none smtp.client-ip=217.140.110.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1C1B2113E for ; Tue, 30 Apr 2024 03:24:13 -0700 (PDT) Received: from e110455-lin.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 6716D3F73F for ; Tue, 30 Apr 2024 03:23:46 -0700 (PDT) Date: Tue, 30 Apr 2024 11:23:29 +0100 From: Liviu Dudau To: Jean-Philippe Brucker Cc: will@kernel.org, lpieralisi@kernel.org, kw@linux.com, robh@kernel.org, bhelgaas@google.com, krzk+dt@kernel.org, conor+dt@kernel.org, sudeep.holla@arm.com, joro@8bytes.org, robin.murphy@arm.com, nicolinc@nvidia.com, ketanp@nvidia.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, iommu@lists.linux.dev, devicetree@vger.kernel.org Subject: Re: [PATCH 2/3] iommu/of: Support ats-supported device-tree property Message-ID: References: <20240429113938.192706-2-jean-philippe@linaro.org> <20240429113938.192706-4-jean-philippe@linaro.org> Precedence: bulk X-Mailing-List: iommu@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20240429113938.192706-4-jean-philippe@linaro.org> On Mon, Apr 29, 2024 at 12:39:38PM +0100, Jean-Philippe Brucker wrote: > Device-tree declares whether a PCI root-complex supports ATS by setting > the "ats-supported" property. Copy this flag into device fwspec to let > IOMMU drivers quickly check if they can enable ATS for a device. > > Signed-off-by: Jean-Philippe Brucker > Tested-by: Ketan Patil Reviewed-by: Liviu Dudau > --- > drivers/iommu/of_iommu.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/iommu/of_iommu.c b/drivers/iommu/of_iommu.c > index 3afe0b48a48db..082b94c2b3291 100644 > --- a/drivers/iommu/of_iommu.c > +++ b/drivers/iommu/of_iommu.c > @@ -105,6 +105,14 @@ static int of_iommu_configure_device(struct device_node *master_np, > of_iommu_configure_dev(master_np, dev); > } > > +static void of_pci_check_device_ats(struct device *dev, struct device_node *np) > +{ > + struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); > + > + if (fwspec && of_property_read_bool(np, "ats-supported")) > + fwspec->flags |= IOMMU_FWSPEC_PCI_RC_ATS; > +} > + > /* > * Returns: > * 0 on success, an iommu was configured > @@ -147,6 +155,7 @@ int of_iommu_configure(struct device *dev, struct device_node *master_np, > pci_request_acs(); > err = pci_for_each_dma_alias(to_pci_dev(dev), > of_pci_iommu_init, &info); > + of_pci_check_device_ats(dev, master_np); > } else { > err = of_iommu_configure_device(master_np, dev, id); > } > -- > 2.44.0 > -- ==================== | I would like to | | fix the world, | | but they're not | | giving me the | \ source code! / --------------- ¯\_(ツ)_/¯ From mboxrd@z Thu Jan 1 00:00:00 1970 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 2BC9EC4345F for ; Tue, 30 Apr 2024 10:24:01 +0000 (UTC) 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:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=syVvNfrHwI0nJ1V5o0nKUuPaAbbryidbRbtbwJyGuvc=; b=KNpzMQimnzZ+Rn TOTco8udSrgkIT9kUO2VUIYSMhxvn1kGkIwphsieFlJdiZHDsZ2zoKashLLRA3TfSSvZT3AVZyV5q J1K+qYmJKZGaSCLgP+3Nx6v26nl512AIAJpL2ivq7a3IOD/JWckdAABIArOZISB4yETqkRzESmz/F o46C2/b1bQBY2F+E9Qaj+ujQiwlSHy+Y+PRtyUyyesCt6T8ZI9pU0WrOjN1mCZg6s0Sqo8TtNkzcz b6TIqO5nRLDwanOOiN8/DliCo3JsAl1n1zN8SxYHtE08tYUizKkPsDzo642GusOzCa5BJyegPHLhW ZMKJgUaHUUcN1ik6KVSQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s1keL-000000060I2-2Lg1; Tue, 30 Apr 2024 10:23:49 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s1keI-000000060Gn-3iQk for linux-arm-kernel@lists.infradead.org; Tue, 30 Apr 2024 10:23:48 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1A6E4339 for ; Tue, 30 Apr 2024 03:24:12 -0700 (PDT) Received: from e110455-lin.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 6562A3F73F for ; Tue, 30 Apr 2024 03:23:45 -0700 (PDT) Date: Tue, 30 Apr 2024 11:23:29 +0100 From: Liviu Dudau To: Jean-Philippe Brucker Cc: will@kernel.org, lpieralisi@kernel.org, kw@linux.com, robh@kernel.org, bhelgaas@google.com, krzk+dt@kernel.org, conor+dt@kernel.org, sudeep.holla@arm.com, joro@8bytes.org, robin.murphy@arm.com, nicolinc@nvidia.com, ketanp@nvidia.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, iommu@lists.linux.dev, devicetree@vger.kernel.org Subject: Re: [PATCH 2/3] iommu/of: Support ats-supported device-tree property Message-ID: References: <20240429113938.192706-2-jean-philippe@linaro.org> <20240429113938.192706-4-jean-philippe@linaro.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20240429113938.192706-4-jean-philippe@linaro.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240430_032347_002490_AB4E52AD X-CRM114-Status: GOOD ( 17.39 ) 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: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gTW9uLCBBcHIgMjksIDIwMjQgYXQgMTI6Mzk6MzhQTSArMDEwMCwgSmVhbi1QaGlsaXBwZSBC cnVja2VyIHdyb3RlOgo+IERldmljZS10cmVlIGRlY2xhcmVzIHdoZXRoZXIgYSBQQ0kgcm9vdC1j b21wbGV4IHN1cHBvcnRzIEFUUyBieSBzZXR0aW5nCj4gdGhlICJhdHMtc3VwcG9ydGVkIiBwcm9w ZXJ0eS4gQ29weSB0aGlzIGZsYWcgaW50byBkZXZpY2UgZndzcGVjIHRvIGxldAo+IElPTU1VIGRy aXZlcnMgcXVpY2tseSBjaGVjayBpZiB0aGV5IGNhbiBlbmFibGUgQVRTIGZvciBhIGRldmljZS4K PiAKPiBTaWduZWQtb2ZmLWJ5OiBKZWFuLVBoaWxpcHBlIEJydWNrZXIgPGplYW4tcGhpbGlwcGVA bGluYXJvLm9yZz4KPiBUZXN0ZWQtYnk6IEtldGFuIFBhdGlsIDxrZXRhbnBAbnZpZGlhLmNvbT4K ClJldmlld2VkLWJ5OiBMaXZpdSBEdWRhdSA8bGl2aXUuZHVkYXVAYXJtLmNvbT4KCj4gLS0tCj4g IGRyaXZlcnMvaW9tbXUvb2ZfaW9tbXUuYyB8IDkgKysrKysrKysrCj4gIDEgZmlsZSBjaGFuZ2Vk LCA5IGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9vZl9pb21t dS5jIGIvZHJpdmVycy9pb21tdS9vZl9pb21tdS5jCj4gaW5kZXggM2FmZTBiNDhhNDhkYi4uMDgy Yjk0YzJiMzI5MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2lvbW11L29mX2lvbW11LmMKPiArKysg Yi9kcml2ZXJzL2lvbW11L29mX2lvbW11LmMKPiBAQCAtMTA1LDYgKzEwNSwxNCBAQCBzdGF0aWMg aW50IG9mX2lvbW11X2NvbmZpZ3VyZV9kZXZpY2Uoc3RydWN0IGRldmljZV9ub2RlICptYXN0ZXJf bnAsCj4gIAkJICAgICAgb2ZfaW9tbXVfY29uZmlndXJlX2RldihtYXN0ZXJfbnAsIGRldik7Cj4g IH0KPiAgCj4gK3N0YXRpYyB2b2lkIG9mX3BjaV9jaGVja19kZXZpY2VfYXRzKHN0cnVjdCBkZXZp Y2UgKmRldiwgc3RydWN0IGRldmljZV9ub2RlICpucCkKPiArewo+ICsJc3RydWN0IGlvbW11X2Z3 c3BlYyAqZndzcGVjID0gZGV2X2lvbW11X2Z3c3BlY19nZXQoZGV2KTsKPiArCj4gKwlpZiAoZndz cGVjICYmIG9mX3Byb3BlcnR5X3JlYWRfYm9vbChucCwgImF0cy1zdXBwb3J0ZWQiKSkKPiArCQlm d3NwZWMtPmZsYWdzIHw9IElPTU1VX0ZXU1BFQ19QQ0lfUkNfQVRTOwo+ICt9Cj4gKwo+ICAvKgo+ ICAgKiBSZXR1cm5zOgo+ICAgKiAgMCBvbiBzdWNjZXNzLCBhbiBpb21tdSB3YXMgY29uZmlndXJl ZAo+IEBAIC0xNDcsNiArMTU1LDcgQEAgaW50IG9mX2lvbW11X2NvbmZpZ3VyZShzdHJ1Y3QgZGV2 aWNlICpkZXYsIHN0cnVjdCBkZXZpY2Vfbm9kZSAqbWFzdGVyX25wLAo+ICAJCXBjaV9yZXF1ZXN0 X2FjcygpOwo+ICAJCWVyciA9IHBjaV9mb3JfZWFjaF9kbWFfYWxpYXModG9fcGNpX2RldihkZXYp LAo+ICAJCQkJCSAgICAgb2ZfcGNpX2lvbW11X2luaXQsICZpbmZvKTsKPiArCQlvZl9wY2lfY2hl Y2tfZGV2aWNlX2F0cyhkZXYsIG1hc3Rlcl9ucCk7Cj4gIAl9IGVsc2Ugewo+ICAJCWVyciA9IG9m X2lvbW11X2NvbmZpZ3VyZV9kZXZpY2UobWFzdGVyX25wLCBkZXYsIGlkKTsKPiAgCX0KPiAtLSAK PiAyLjQ0LjAKPiAKCi0tIAo9PT09PT09PT09PT09PT09PT09PQp8IEkgd291bGQgbGlrZSB0byB8 CnwgZml4IHRoZSB3b3JsZCwgIHwKfCBidXQgdGhleSdyZSBub3QgfAp8IGdpdmluZyBtZSB0aGUg ICB8CiBcIHNvdXJjZSBjb2RlISAgLwogIC0tLS0tLS0tLS0tLS0tLQogICAgwq9cXyjjg4QpXy/C rwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgt YXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQu b3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJt LWtlcm5lbAo=