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 X-Spam-Level: X-Spam-Status: No, score=-14.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 69F52C47082 for ; Wed, 26 May 2021 17:49:00 +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 23BE860FEB for ; Wed, 26 May 2021 17:49:00 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 23BE860FEB Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=huawei.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@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:In-Reply-To:References: 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: List-Owner; bh=50d6F0JGRIeEv1r502yqVUB605WpfhCUdX+Ugnj1Cb0=; b=P9as2eKJ5C46xl dJL9PgykCxa/OE70AG6Yqu2iq/hKEX+pZUPjy8bFZk2sprR+uXMVUy/opZk9tJbVsYG8YH+c1RFXJ LG+cxcp9qrTjA8aHO2uUNTsNMCLTMO6trOwo3iN0WUyI7/Sf03DkUzMotS1n5xq7IWQsF96Vj4A+y WnRcOvwd9q4n97YNPusBzY9Q9jYr/mU0Tck8VdQX+VCcpmJwczmz2Z/+jlKPva4LlUelvpMSIUfiZ A9doNaub9INDMbQqWgy5dbyPKyHjNXH4eNVdLTfxRiC3MdxoUJPoMEsGLK2d4LQD53iXbEoeWDiuO RaL65SGx5Lh1tRLDNcPQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1llxc5-00GEWX-9P; Wed, 26 May 2021 17:46:38 +0000 Received: from szxga05-in.huawei.com ([45.249.212.191]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1llwWi-00Fn3O-FV for linux-arm-kernel@lists.infradead.org; Wed, 26 May 2021 16:37:02 +0000 Received: from dggems704-chm.china.huawei.com (unknown [172.30.72.58]) by szxga05-in.huawei.com (SkyGuard) with ESMTP id 4FqxMT3LlxzQrmn; Thu, 27 May 2021 00:33:09 +0800 (CST) Received: from dggema772-chm.china.huawei.com (10.1.198.214) by dggems704-chm.china.huawei.com (10.3.19.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.2176.2; Thu, 27 May 2021 00:36:47 +0800 Received: from lhreml710-chm.china.huawei.com (10.201.108.61) by dggema772-chm.china.huawei.com (10.1.198.214) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2176.2; Thu, 27 May 2021 00:36:45 +0800 Received: from lhreml710-chm.china.huawei.com ([169.254.81.184]) by lhreml710-chm.china.huawei.com ([169.254.81.184]) with mapi id 15.01.2176.012; Wed, 26 May 2021 17:36:44 +0100 From: Shameerali Kolothum Thodi To: Laurentiu Tudor , "linux-arm-kernel@lists.infradead.org" , "linux-acpi@vger.kernel.org" , "iommu@lists.linux-foundation.org" CC: "jon@solid-run.com" , Linuxarm , "steven.price@arm.com" , "Guohanjun (Hanjun Guo)" , yangyicong , "Sami.Mujawar@arm.com" , "robin.murphy@arm.com" , wanghuiqiang Subject: RE: [PATCH v5 3/8] ACPI/IORT: Add a helper to retrieve RMR memory regions Thread-Topic: [PATCH v5 3/8] ACPI/IORT: Add a helper to retrieve RMR memory regions Thread-Index: AQHXUIxzNCstxTr9F0iaZEElN6n+2Kr1Vn6AgACfpbA= Date: Wed, 26 May 2021 16:36:44 +0000 Message-ID: <260859e85c854b90b513599f4febfbad@huawei.com> References: <20210524110222.2212-1-shameerali.kolothum.thodi@huawei.com> <20210524110222.2212-4-shameerali.kolothum.thodi@huawei.com> <13c2499e-cc0c-d395-0d60-6c3437f206ac@nxp.com> In-Reply-To: <13c2499e-cc0c-d395-0d60-6c3437f206ac@nxp.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.47.87.129] MIME-Version: 1.0 X-CFilter-Loop: Reflected X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210526_093701_089526_41500546 X-CRM114-Status: GOOD ( 25.09 ) 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="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org > -----Original Message----- > From: Laurentiu Tudor [mailto:laurentiu.tudor@nxp.com] > Sent: 26 May 2021 08:53 > To: Shameerali Kolothum Thodi ; > linux-arm-kernel@lists.infradead.org; linux-acpi@vger.kernel.org; > iommu@lists.linux-foundation.org > Cc: jon@solid-run.com; Linuxarm ; > steven.price@arm.com; Guohanjun (Hanjun Guo) ; > yangyicong ; Sami.Mujawar@arm.com; > robin.murphy@arm.com; wanghuiqiang > Subject: Re: [PATCH v5 3/8] ACPI/IORT: Add a helper to retrieve RMR memory > regions > > Hi Shameer, > > On 5/24/2021 2:02 PM, Shameer Kolothum wrote: > > Add a helper function that retrieves RMR memory descriptors > > associated with a given IOMMU. This will be used by IOMMU > > drivers to setup necessary mappings. > > > > Now that we have this, invoke it from the generic helper > > interface. > > > > Signed-off-by: Shameer Kolothum > > > --- > > drivers/acpi/arm64/iort.c | 50 > +++++++++++++++++++++++++++++++++++++++ > > drivers/iommu/dma-iommu.c | 4 ++++ > > include/linux/acpi_iort.h | 7 ++++++ > > 3 files changed, 61 insertions(+) > > > > diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c > > index fea1ffaedf3b..01917caf58de 100644 > > --- a/drivers/acpi/arm64/iort.c > > +++ b/drivers/acpi/arm64/iort.c > > @@ -12,6 +12,7 @@ > > > > #include > > #include > > +#include > > #include > > #include > > #include > > @@ -837,6 +838,53 @@ static inline int iort_add_device_replay(struct > device *dev) > > return err; > > } > > > > +/** > > + * iort_iommu_get_rmrs - Helper to retrieve RMR info associated with > IOMMU > > + * @iommu: fwnode for the IOMMU > > + * @head: RMR list head to be populated > > + * > > + * Returns: 0 on success, <0 failure > > + */ > > +int iort_iommu_get_rmrs(struct fwnode_handle *iommu_fwnode, > > + struct list_head *head) > > +{ > > + struct iort_rmr_entry *e; > > + struct acpi_iort_node *iommu; > > + int rmrs = 0; > > + > > + iommu = iort_get_iort_node(iommu_fwnode); > > + if (!iommu || list_empty(&iort_rmr_list)) > > + return -ENODEV; > > + > > + list_for_each_entry(e, &iort_rmr_list, list) { > > + int prot = IOMMU_READ | IOMMU_WRITE | IOMMU_NOEXEC | > IOMMU_MMIO; > > We have a case with an IP block that needs EXEC rights on its reserved > memory, so could you please drop the IOMMU_NOEXEC flag? Ok, I think I can drop that one if there are no other concerns. I was not quite sure what to include here in the first place as the IORT spec is not giving any further details about the RMR regions(May be the flags field can be extended to describe these details). Thanks, Shameer _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel