From patchwork Wed Jan 4 12:57:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38898 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5132998wrt; Wed, 4 Jan 2023 05:07:23 -0800 (PST) X-Google-Smtp-Source: AMrXdXtTTAMntRnbFzyCuNobjf/a5Nvj0htHxtfkLfREx+Pdrv2QF/JyK8A+EzP+2BoN65+bN4Gw X-Received: by 2002:aa7:9a10:0:b0:582:33b4:4c57 with SMTP id w16-20020aa79a10000000b0058233b44c57mr15959692pfj.33.1672837643064; Wed, 04 Jan 2023 05:07:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837643; cv=none; d=google.com; s=arc-20160816; b=HUm8O+CjN/ujk16xp0qyehOO7lQDz6BIRtxM78t57BKQ5HdQNo5rvavP5K5AtV5TE9 Zpg2UkZiaX1vfCE0qsYZ+MeSJBUV452P3X+GPPJ9ZM5BfQypQioiaSmE5gvtaQfTy77T wiuwQ8FCD1msTyBzOALs9avz7T7cKdWEvtu6uLajPXr6tYw5LLysl4sAWlaab3XCor57 KK2YNxHfrkDZF8oKrjiXIWtbUfT3LB8qijrZpRisnfjLIrWVznhHzgZjm0oFOUlqVZNL 1021oux0bKVNIdVxxHcfb0Z5CKy0PtltTZlLkzs9ZeAuv1bFNHt6MOEOUpb+6hyMx08i ixsQ== 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; bh=c/qS03n8RBIn2zv8wsW+7KossYf0rzkY0Qexyyn4GYw=; b=GCpb7OpVaeCX4jtMo2qkwqj+Bd43QEUmcwUXHrmZceppHva6N10my8bgu9bRwEQq4x M7BGQzhNIzERQbfUmhEbWwZFiAiTQj0E98ncLWE9wCbjZXJN2tvF+K6H5zWcRGeOSK3a LaKLkxm05PHIAK5WxSaW0y0dtPMgEd+OCEbqRbZ66IGA933nyRZ7Gh8V1mvvaX1h8YBp R2D/kMRhXKVMtpqOtODX01UcfKy1LBshZ3UIfoK0dnUAaZHqfGqqiMy+FwBvCBiWABBt 7UL1a+jFc1vR9/C7rDy/IrD5T5LizTpPZ3VQodwUlPbN7ut+KYuz4SRlZ7YjI8PhHBjA E0gg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=XqGsS7ds; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id g22-20020a056a0023d600b00577e14babaesi37202460pfc.4.2023.01.04.05.07.05; Wed, 04 Jan 2023 05:07:23 -0800 (PST) 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=@intel.com header.s=Intel header.b=XqGsS7ds; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239319AbjADNFo (ORCPT + 99 others); Wed, 4 Jan 2023 08:05:44 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43608 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231130AbjADNF3 (ORCPT ); Wed, 4 Jan 2023 08:05:29 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EABBF1DF3A for ; Wed, 4 Jan 2023 05:05:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837528; x=1704373528; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=1xeeuRQM/dsTN33VxOfF8H61kIE4esUx5TqB4kEEMhw=; b=XqGsS7dsKWlMyoia0AexbFZUCD63G7c/xjHFwI/q/m40dXAh37l0rJTw tkWgpEcQZzdXZXlUWzFOq7TF4iRigPSwKk96AuD6DbImLgurITnQrAueI lS1cIbgAhkBI8tfOLG/+kH2lAQra9sxt5x0l+X2nRxHLoY/sfrXwI9Ndi t43vt3q3jKYrG7OWEogIz55ljbQ46eKrGb+kaKTGkKu4146ng6ux8C9+h 7eOtP0gHYcIGpMJDIWucWjHVcWKjSOa+FEyT1wC1AY+Q5Q0SpTU6rWB2D SIfZ3Cklu+5+BNYEb59GXfn/bK+4bV5s1YWE/EygzRrh740Dhj3f27yXV A==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639595" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639595" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:05:28 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529016" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529016" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:05:21 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 01/19] iommu/amd: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:07 +0800 Message-Id: <20230104125725.271850-2-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097404582477557?= X-GMAIL-MSGID: =?utf-8?q?1754097404582477557?= The AMD IOMMU supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Signed-off-by: Lu Baolu Reviewed-by: Vasant Hegde --- drivers/iommu/amd/iommu.c | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c index cbeaab55c0db..92319c9b877c 100644 --- a/drivers/iommu/amd/iommu.c +++ b/drivers/iommu/amd/iommu.c @@ -2126,31 +2126,6 @@ static void amd_iommu_domain_free(struct iommu_domain *dom) protection_domain_free(domain); } -static void amd_iommu_detach_device(struct iommu_domain *dom, - struct device *dev) -{ - struct iommu_dev_data *dev_data = dev_iommu_priv_get(dev); - struct amd_iommu *iommu; - - if (!check_device(dev)) - return; - - if (dev_data->domain != NULL) - detach_device(dev); - - iommu = rlookup_amd_iommu(dev); - if (!iommu) - return; - -#ifdef CONFIG_IRQ_REMAP - if (AMD_IOMMU_GUEST_IR_VAPIC(amd_iommu_guest_ir) && - (dom->type == IOMMU_DOMAIN_UNMANAGED)) - dev_data->use_vapic = 0; -#endif - - iommu_completion_wait(iommu); -} - static int amd_iommu_attach_device(struct iommu_domain *dom, struct device *dev) { @@ -2416,7 +2391,6 @@ const struct iommu_ops amd_iommu_ops = { .def_domain_type = amd_iommu_def_domain_type, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = amd_iommu_attach_device, - .detach_dev = amd_iommu_detach_device, .map_pages = amd_iommu_map_pages, .unmap_pages = amd_iommu_unmap_pages, .iotlb_sync_map = amd_iommu_iotlb_sync_map, From patchwork Wed Jan 4 12:57:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38900 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133007wrt; Wed, 4 Jan 2023 05:07:23 -0800 (PST) X-Google-Smtp-Source: AMrXdXt7Ejj65N8YJ9WF8/k1tGfjmJi1mEsQGFV9Q20ORnx7ftGHmJRQW4L4uewODRfsO4d2imAq X-Received: by 2002:a05:6a20:2d22:b0:b0:30d8:d48 with SMTP id g34-20020a056a202d2200b000b030d80d48mr61944821pzl.42.1672837643568; Wed, 04 Jan 2023 05:07:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837643; cv=none; d=google.com; s=arc-20160816; b=YIqLuOZmz2WVF/O/xBdBtllfQeTJzwNagC0BWJ5/SH5AZ+evt/lRj0NrkTwcDAdZvB nXhTDr7aqHsQveoyvuC5zfkGN/RRXlMzsHtbNbMW+RomGtcDI/sh2TjIiokRa48r4Pd9 PYMYJsOQZJo4h6tHD3oSUDU89Gpbnsj+fJ/x6oB0sOJA+i9d7tr9H+cTOnwkDYM3KYUy C7TKe95wCU+3uLXlRDuaG00U/bLjFyzHkDVz2vKqML8byEdlcli0UwNn07xc3FZWTI8R uQH/EgZM87wR5TnD3dH0rZNcvspIdSrACxQbIgdCOCV/F9gbWO05UKsyeytii5x3Kj9E WRPA== 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; bh=OBrKYo5CNiCZBnMJlG+MK0es5/Uxri8XyGuj4yI8F3I=; b=xxVk2FGj8BZT4yEZrc+gbNwrZlAqslMmHP6txENimuVpiBoNecH/SE8Wb0vrjcB7En VxXXzl2RUEt2vfmRMS/k3A6/BMm8cn3qq+C4eptw1Q3p/uYgStGG4+4MWUniT3NVXUeC a2+2xrfLuL2FltxLx2D4fyyQaoGYSjAHKn53dJbaMlYhBW8KEKNap4XZkgAU6PATV2dl qnfmOgS9pU3J5qC12wVnxozt11w6lwKBaY6gzQjg1GmaWuENzc3HTqvdyK/kjzCQpC/1 a12te+5hYwERZhHWTKAOgMUTBKK5bteCkulATZkzaH8m7emA1RvxhHTHnK0JyJVgGOHm cv3w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="P/A4Iqab"; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id r129-20020a632b87000000b0047947d45f57si36543038pgr.745.2023.01.04.05.07.10; Wed, 04 Jan 2023 05:07:23 -0800 (PST) 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=@intel.com header.s=Intel header.b="P/A4Iqab"; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239253AbjADNGQ (ORCPT + 99 others); Wed, 4 Jan 2023 08:06:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43742 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239285AbjADNFk (ORCPT ); Wed, 4 Jan 2023 08:05:40 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CCD741DF3A for ; Wed, 4 Jan 2023 05:05:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837535; x=1704373535; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=TB3vMqIiPfgVVIrkJxZ1YwxXb13IM9MbEZds9ge+394=; b=P/A4IqabUHLnKNLN3gan3nWtzaJxEw44Vi78TfsOBOuEEn1A32GYUerf clxe+Hx6xKjFwANeBSWTx157hRqww5AAj6u7XBhV6p8yh4xbuSnRJtP91 g3Ih5LehutqQgCi9XJQ8Eq2hzMPQjGvbCkFQNAmku5FMzCY9GqG/ZkYXY IBIDOcm+uI1n9BeUueIUYuO0ZDrTqgkZ9R7a/SqAq7Mb/C94A3sQeTbBw wx5bdR5YkAeZfNVTDUKe31dCV3NmEz8isYWni6Do3ok9UIc3K6yzxSofD OvKduhaFBK0gmepi90OQDOVbcclq/+sjftiphDHYs7TB3tER+aA6gP1Wp w==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639627" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639627" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:05:35 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529027" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529027" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:05:28 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 02/19] iommu/apple-dart: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:08 +0800 Message-Id: <20230104125725.271850-3-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097405043026232?= X-GMAIL-MSGID: =?utf-8?q?1754097405043026232?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Reviewed-by: Sven Peter Signed-off-by: Lu Baolu --- drivers/iommu/apple-dart.c | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/drivers/iommu/apple-dart.c b/drivers/iommu/apple-dart.c index 4f4a323be0d0..96843d468801 100644 --- a/drivers/iommu/apple-dart.c +++ b/drivers/iommu/apple-dart.c @@ -486,13 +486,6 @@ static int apple_dart_domain_add_streams(struct apple_dart_domain *domain, true); } -static int apple_dart_domain_remove_streams(struct apple_dart_domain *domain, - struct apple_dart_master_cfg *cfg) -{ - return apple_dart_mod_streams(domain->stream_maps, cfg->stream_maps, - false); -} - static int apple_dart_attach_dev(struct iommu_domain *domain, struct device *dev) { @@ -535,22 +528,6 @@ static int apple_dart_attach_dev(struct iommu_domain *domain, return ret; } -static void apple_dart_detach_dev(struct iommu_domain *domain, - struct device *dev) -{ - int i; - struct apple_dart_stream_map *stream_map; - struct apple_dart_master_cfg *cfg = dev_iommu_priv_get(dev); - struct apple_dart_domain *dart_domain = to_dart_domain(domain); - - for_each_stream_map(i, cfg, stream_map) - apple_dart_hw_disable_dma(stream_map); - - if (domain->type == IOMMU_DOMAIN_DMA || - domain->type == IOMMU_DOMAIN_UNMANAGED) - apple_dart_domain_remove_streams(dart_domain, cfg); -} - static struct iommu_device *apple_dart_probe_device(struct device *dev) { struct apple_dart_master_cfg *cfg = dev_iommu_priv_get(dev); @@ -780,7 +757,6 @@ static const struct iommu_ops apple_dart_iommu_ops = { .owner = THIS_MODULE, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = apple_dart_attach_dev, - .detach_dev = apple_dart_detach_dev, .map_pages = apple_dart_map_pages, .unmap_pages = apple_dart_unmap_pages, .flush_iotlb_all = apple_dart_flush_iotlb_all, From patchwork Wed Jan 4 12:57:09 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38901 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5132995wrt; Wed, 4 Jan 2023 05:07:23 -0800 (PST) X-Google-Smtp-Source: AMrXdXsGJia+fTTV5RpbVOk3lZ7v2C50J5/O2LFg9oSopdEgLMSkNb6G46gvy1RexE6M7jwlXfIa X-Received: by 2002:a17:90a:6a41:b0:225:f792:734d with SMTP id d1-20020a17090a6a4100b00225f792734dmr35285203pjm.7.1672837642847; Wed, 04 Jan 2023 05:07:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837642; cv=none; d=google.com; s=arc-20160816; b=09mkmBPSOrpUZzPuV7yc6d4Up1gNkl8N59iGfS1JdReMQz4/GGsMhYoie3RlrmjF76 zqD2HfxMtY7nt/jdELC8dyEc2kHrx7PaDNie1pIlU8gsVEcFwFPSxCmsItzyPAKvR0fm nji+CG+JlWnxOKfRw7WkDp7upaQWLFvQrjKpTfg/abZ++yHegiPKjnrsatHuC5j5uq55 j1hobyJs28bhgcYS882aQY/4USKtl4W9Kfj+pHXK/8Rg+m9ONkxkRUC24PjPAaEX3RDk SybPFQn4AXnnmRpaI8Mom6yd1bpAsLE1KXqRtPxOsg6W7Li2MJ79LnuwdIGpkjnb8OE/ mTnA== 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; bh=KIlZnYJbH/wqARyQHDezYzVutdQQz4awN6SCc3JHrhY=; b=VSd9ndeooh5A35puiNUK8Qc5jjp1LxV/yFMNBpIWaYOHk6Du19DwLX6jFpAqBworau WMOubgZACb9xbhKjV0alIoPmbLO3T8g2GFHQLJV4+t/4hsvZl0JCpqe0Ra9EBPBqdomm Up3XIaCHuzZsMkK2JKO9EHVf7ODapntls/VIFm7EHemL3YxhNB6DpVOR8KgSKLdy9JF/ tpiGhCing+dUK/ptwxGUWop5NWd7hFYMGYPE9Qsle+cTmnEEWA0RjO/DxxWxwGY/C5g2 fUpOel0hIBSJyeXMQbqdhuYz/8eLwazocIzZteBB5gTjn5WE5pomZbO07M/cqnCs+drV qttg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=BjQ54+0s; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id px7-20020a17090b270700b0021918bc9a47si33186871pjb.174.2023.01.04.05.07.05; Wed, 04 Jan 2023 05:07:22 -0800 (PST) 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=@intel.com header.s=Intel header.b=BjQ54+0s; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234429AbjADNGE (ORCPT + 99 others); Wed, 4 Jan 2023 08:06:04 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43872 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239344AbjADNFt (ORCPT ); Wed, 4 Jan 2023 08:05:49 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6915C3739D for ; Wed, 4 Jan 2023 05:05:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837542; x=1704373542; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Ly1CFFQsdha64HGKM2XxpjbOlFYepHT9+afzlH0HDzc=; b=BjQ54+0snMrgndXDoGEmY//s9CmOtYlRGo+Hoh+eKELcNGyEJHz64Dpy sM3oKJCJ00X0GX8LSfWUzQmJBNczGQV9ORbrNWf0FyihbTNBAFfxxcYft HpmwQ6s3/DY7fd3VbOGlglbdcf1IyEw9/5e2FRUF/UfGnaw3LAGCfLzuP AZRinBX+iSjdPFYk4nso6GaHzc9wSqFxt7nE4rBneapx1LU4FuT7dDwvz qXO25Jvr2i7XO5vWnPLfTLVXDrgiRpIYrSaU++FLREvFnmiYOuddtETjI Mv7uFD3oU9ctf83JD0YobPWC2ctrfMy4aE0QPUTi/V5yg/kVIE1tdRTM9 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639665" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639665" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:05:41 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529035" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529035" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:05:35 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 03/19] iommu/qcom: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:09 +0800 Message-Id: <20230104125725.271850-4-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097404494307424?= X-GMAIL-MSGID: =?utf-8?q?1754097404494307424?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Signed-off-by: Lu Baolu --- drivers/iommu/arm/arm-smmu/qcom_iommu.c | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/drivers/iommu/arm/arm-smmu/qcom_iommu.c b/drivers/iommu/arm/arm-smmu/qcom_iommu.c index 270c3d9128ba..d7be3adee426 100644 --- a/drivers/iommu/arm/arm-smmu/qcom_iommu.c +++ b/drivers/iommu/arm/arm-smmu/qcom_iommu.c @@ -387,28 +387,6 @@ static int qcom_iommu_attach_dev(struct iommu_domain *domain, struct device *dev return 0; } -static void qcom_iommu_detach_dev(struct iommu_domain *domain, struct device *dev) -{ - struct qcom_iommu_domain *qcom_domain = to_qcom_iommu_domain(domain); - struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); - struct qcom_iommu_dev *qcom_iommu = to_iommu(dev); - unsigned i; - - if (WARN_ON(!qcom_domain->iommu)) - return; - - pm_runtime_get_sync(qcom_iommu->dev); - for (i = 0; i < fwspec->num_ids; i++) { - struct qcom_iommu_ctx *ctx = to_ctx(qcom_domain, fwspec->ids[i]); - - /* Disable the context bank: */ - iommu_writel(ctx, ARM_SMMU_CB_SCTLR, 0); - - ctx->domain = NULL; - } - pm_runtime_put_sync(qcom_iommu->dev); -} - static int qcom_iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, int prot, gfp_t gfp, size_t *mapped) @@ -583,7 +561,6 @@ static const struct iommu_ops qcom_iommu_ops = { .pgsize_bitmap = SZ_4K | SZ_64K | SZ_1M | SZ_16M, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = qcom_iommu_attach_dev, - .detach_dev = qcom_iommu_detach_dev, .map_pages = qcom_iommu_map, .unmap_pages = qcom_iommu_unmap, .flush_iotlb_all = qcom_iommu_flush_iotlb_all, From patchwork Wed Jan 4 12:57:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38899 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133002wrt; Wed, 4 Jan 2023 05:07:23 -0800 (PST) X-Google-Smtp-Source: AMrXdXsN1CzieWg7+1YKSd+lUSYJgvu/tV7P7fz+Cnr9IbWiVG7pJzNbUdDmfrOrl6mlMnX0NnXD X-Received: by 2002:a05:6a20:1715:b0:b0:25ba:1764 with SMTP id bn21-20020a056a20171500b000b025ba1764mr50108590pzb.26.1672837643148; Wed, 04 Jan 2023 05:07:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837643; cv=none; d=google.com; s=arc-20160816; b=XmymfhbMCQXePk5mtT9QTHtMFSMiiYnLnOCCquqRGhn/oIeInP2oHALtFfMcVBaet9 c9f8iOYo9zeas4RTgOooPhYBmCOAgCi4bEXGD02NGX9jLEiJrkJ8OjY1aWNSTk9yHlTS O/fBrU33YNKFfGxs57bnz4gg7QSJZaOqME3aSGPrJTSediZWb/eVIQ2kL2pgEurdUBXv UNLixIXOp/DCQHcR/g7FO5+N0Ao7JL/v12EBXcMjy3bNqzoKAuTHHIBcxO01nTOGOhqp RopLDdjy5nO6qngO9EwT3fftyYcVty8irshCZ1KYO7xTwbTQwd187lUoEMHwi03Ii+IL 19Zg== 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; bh=bvBVgxvYexJ5QPl2G0v6v97FphlOB+DeGfDZcV0EGZo=; b=MnNI2bUEzGqSYsZeMx9wNnheTNbGQn9evz4asvP6R9IkcOpdMfdvXwQIrnyPDSaTw+ 5L4VQeU7xG67Nj/tuX/FDLLZrtEz188YwPHbgeU6V1qX8EvusPmTWEnOGU9bTEqOOS0n dSwhVs1yQ6QHAk9Tj0g483owopwJcBa8jzfUhHM8Fh00eaYsXn94rB90E0bEf2ys2kME 3zY8qEoKvPPwTIqMkttCShMmZxMsM9sQgFFIst+FkOCw4mhy0W/WQ9J2YE3oFsoCnVaB Rd/kfUD43Ye3OmWYmrFIoMI+bmZSIPlsXgk88AmyUm0g68fOdv0C9BmgSkWDXoZ2I7GB dWCA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="nGmT/9St"; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d31-20020a630e1f000000b00479018afb14si35266122pgl.49.2023.01.04.05.07.08; Wed, 04 Jan 2023 05:07:23 -0800 (PST) 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=@intel.com header.s=Intel header.b="nGmT/9St"; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239133AbjADNGN (ORCPT + 99 others); Wed, 4 Jan 2023 08:06:13 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44254 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239171AbjADNF4 (ORCPT ); Wed, 4 Jan 2023 08:05:56 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 301D8B4B2 for ; Wed, 4 Jan 2023 05:05:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837549; x=1704373549; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=I/VfrjLUBWPAYQJBDRBjLOcCQ9XfMy3A9aZ5hKuLdMA=; b=nGmT/9Stg4ngI8bn2Tsp0cacXZ8p3csGdePcaBj5JMkqhHFZ3yHOtaxk 4f7oPyCXQy2aetLlrzQwIyhdVmxwew8Bj3bLW7xJIlbCG+rdn3N/W4FL4 5YBpzEwXpWLuQGSRlmTwX902/vhNxabkQuKXlhaRafVM9CEFiaxkCfO2K idRV9Ugpo16avqxCyOVE4cYTO4dN2x3J+ZfKdfbckv4btVPPnzychvpj9 uWRijXx488puzQpt/MhJ4evkVXogbhU3iHJJXUsEKRsDa093273uQcNyO ffLYXXppzh37bC/NL8ZICA716A/VMs2MJvk+UPdeECVffo6ihFRJ9bKKx A==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639705" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639705" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:05:48 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529043" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529043" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:05:41 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 04/19] iommu/exynos: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:10 +0800 Message-Id: <20230104125725.271850-5-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097404404776215?= X-GMAIL-MSGID: =?utf-8?q?1754097404404776215?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Signed-off-by: Lu Baolu --- drivers/iommu/exynos-iommu.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/iommu/exynos-iommu.c b/drivers/iommu/exynos-iommu.c index b0cde2211987..29ec713e8a21 100644 --- a/drivers/iommu/exynos-iommu.c +++ b/drivers/iommu/exynos-iommu.c @@ -1404,7 +1404,6 @@ static const struct iommu_ops exynos_iommu_ops = { .of_xlate = exynos_iommu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = exynos_iommu_attach_device, - .detach_dev = exynos_iommu_detach_device, .map = exynos_iommu_map, .unmap = exynos_iommu_unmap, .iova_to_phys = exynos_iommu_iova_to_phys, From patchwork Wed Jan 4 12:57:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38903 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133125wrt; Wed, 4 Jan 2023 05:07:37 -0800 (PST) X-Google-Smtp-Source: AMrXdXtc2dT5A7YswfxVWXHzZVBcoxrS0FWDQD24IpIaRsz0sn8OlHdYk0hreIu0qLhPLREvHTlg X-Received: by 2002:a17:90a:460a:b0:223:ed96:e3ca with SMTP id w10-20020a17090a460a00b00223ed96e3camr51002049pjg.28.1672837657313; Wed, 04 Jan 2023 05:07:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837657; cv=none; d=google.com; s=arc-20160816; b=IKC/Rn2Ywmdc3YSHuyfVoNA5o26lMqgmyvWPgHyFVKAcYRqPpAeSrYQzhDQSCGfl3m Y2aFNWfM8pIAswYVe56BFyArj8uVUwLkhJ0sITQxsQOA2be04qLKnRZUtXYUeMP0oB4q 5hYjd3SPHYMYyIe/WV7tmNMX/CmKnRStNeqhv3jcu1JEx+RkF9XSe5xR/y1WK95uRmWR PXRy0WMzwPKg3Wu2oDXz/jvRVC74qum8I9M2n15Q4qfSlzm7zUF5IDvs+ahjwoJDmw88 tUQyTccePnzFr/xX2kkMTzCKMrh/YRyRUEqUvSvw4uBrkx4kwVxr8VieYbi1YKozEWIK unbw== 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; bh=vvyKEqSytVDp1GCetS2WVVez0J6h2bZFiQaBgz1eA3E=; b=WznGUXY//eKGpCelic544N4kpzgwpw0Y7ZqZqrmfdAegCgh+a5dFvbXvY3QKBwUY33 ZotOV4/anrcCIXyLnTL9fF6iTVdqiGZFeS3RNR/aqU1w/NiogWI6UBwhEQqPZNnjubyI 69bZn/rPR/UNd/L5XU425wNa+Ij4WC4JMTQrKv6cGa7lVpdC8rquabLd+AwCPMzSyvpX xetOk7mIS+j6wMTlHZxxJvnsYMVGz7JrNjuYfps37c5qr/vetHCfNQrRjekVvDa5mWSu 92ecQiBc3w8KFGbj6KUkSbg0U8i+iiezattB281I4Hx1dckS/RkVQe2dqokfhFn34PZ9 Iu2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="Gwqgw/8F"; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n127-20020a634085000000b00479079b77a6si34355842pga.105.2023.01.04.05.07.25; Wed, 04 Jan 2023 05:07:37 -0800 (PST) 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=@intel.com header.s=Intel header.b="Gwqgw/8F"; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239178AbjADNGm (ORCPT + 99 others); Wed, 4 Jan 2023 08:06:42 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44308 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239381AbjADNF7 (ORCPT ); Wed, 4 Jan 2023 08:05:59 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1D71213E01 for ; Wed, 4 Jan 2023 05:05:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837556; x=1704373556; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=3Hfgn3HaMy2m0Id9NRgFBnnjXsgWJay8WBgNiBr3taA=; b=Gwqgw/8FXSyGFjjJnhiRs9hkN2s7pFp7Ua5ciZ8XTxBuFEzFAwpx24h2 Mr9Hl9/AEY1GBQez/3XmuNZxaE/wuAPPX2djyTvS9Y2FmICkuo721MHZR 2NkaZCRlArvffjdFmG+1Dnwb8LcW4WXTjY5PltV1DjyLh2j/QV4XklcaN wGXXv7vFk2BtzUiwMaCninbKCxOwoZ0WRz/bpE7bdMVk73kFd1o5ZZmtJ 0F60GboNPXvLiC/QXiBrzhPQ8A5WfidLxbevsiybKHkEx1i4o0z3HOrbE dFV72wfr2QJ6AsHukmGV6NUKn0kld29S9pddVIZeBJVkVdIkPci/rFCQz w==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639743" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639743" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:05:55 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529050" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529050" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:05:48 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 05/19] iommu/ipmmu: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:11 +0800 Message-Id: <20230104125725.271850-6-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097419318497078?= X-GMAIL-MSGID: =?utf-8?q?1754097419318497078?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Signed-off-by: Lu Baolu --- drivers/iommu/ipmmu-vmsa.c | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c index a003bd5fc65c..3112822ac7be 100644 --- a/drivers/iommu/ipmmu-vmsa.c +++ b/drivers/iommu/ipmmu-vmsa.c @@ -643,21 +643,6 @@ static int ipmmu_attach_device(struct iommu_domain *io_domain, return 0; } -static void ipmmu_detach_device(struct iommu_domain *io_domain, - struct device *dev) -{ - struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); - struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain); - unsigned int i; - - for (i = 0; i < fwspec->num_ids; ++i) - ipmmu_utlb_disable(domain, fwspec->ids[i]); - - /* - * TODO: Optimize by disabling the context when no device is attached. - */ -} - static int ipmmu_map(struct iommu_domain *io_domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, int prot, gfp_t gfp, size_t *mapped) @@ -876,7 +861,6 @@ static const struct iommu_ops ipmmu_ops = { .of_xlate = ipmmu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = ipmmu_attach_device, - .detach_dev = ipmmu_detach_device, .map_pages = ipmmu_map, .unmap_pages = ipmmu_unmap, .flush_iotlb_all = ipmmu_flush_iotlb_all, From patchwork Wed Jan 4 12:57:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38902 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133083wrt; Wed, 4 Jan 2023 05:07:32 -0800 (PST) X-Google-Smtp-Source: AMrXdXsXuTfHTS0n9MD6was8+TpZoapFVPuqF545So2IEoIi3TqGvdJtJLr0PrBURawRjlcJKHiv X-Received: by 2002:a17:90a:1957:b0:225:a78a:942f with SMTP id 23-20020a17090a195700b00225a78a942fmr51530571pjh.5.1672837652173; Wed, 04 Jan 2023 05:07:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837652; cv=none; d=google.com; s=arc-20160816; b=aE+Xb3P+aFJYgP1ylvg0edy3E/AXBufFCEqWYdsCuTYKJzIv8rSeqONKEbE+zcNBMy mrFrZY90hXMuc3Nnh7oEE0+idpKRNqVVjh1uUIsyFONyLcP0V1r4/nZ63xfAWGVVaxvw 098FO9EX4XGsO01zKM1vV/Q8GmfJXhoei2kK3jMEuQmgid4hGdEq8We7FrTD2ieuOKEc e2yltGyOkoxIfjo+grfeYqyK6/+wWw47d5LL1VUrq6B4C7AIBisGsbGyUOgYOrvBynep GAbjPFaPCXWUEz8aX3+N0YhJGtrzMO2I4Vh3LobbMoGUtprmllItxjFrKozYZVbtkhaw WjWQ== 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; bh=eCOtFU7GFvs0jIEchngf8XVXomOfZHlJRPaCvIYUixw=; b=Dw9NwbedZ61Ut6LzV0tQ8Ckfohur/oSYuua2rnEvdBHmJTqrHLQ57Zx1vI2FrtRSYj o6ptX/K8ws/3yb/E4ZehEg2XygccedJ4COOQ5RsN53Ss3UgYMiwcX6YfdQGexAvvAWLl zPw2VfQHZLUE124Uh34Z2DHaBaCAUj7NLY4fr7lL6Cj7e1KjZ+zE9X/dmNU2axFUma+A PlxmVDg2WoKJjRBF79olc9nLQalxusOwlBAauyDjTQgiBSSTCfJLL9d00f+ouyUWssT5 CLnoX+E7K39IJ6zAsQYpPPX4vqZa3nUt14Ee6mufmQW2oScKTuK3R+HdYXneKvi0MSfU B8KQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mar6kklp; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d23-20020a63fd17000000b0047688fc8acdsi34943662pgh.474.2023.01.04.05.07.19; Wed, 04 Jan 2023 05:07:32 -0800 (PST) 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=@intel.com header.s=Intel header.b=mar6kklp; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234548AbjADNGg (ORCPT + 99 others); Wed, 4 Jan 2023 08:06:36 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44348 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233028AbjADNGC (ORCPT ); Wed, 4 Jan 2023 08:06:02 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1579A13CC4 for ; Wed, 4 Jan 2023 05:06:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837562; x=1704373562; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+SzowCr9VibyAQ07C1GMexR24eLRziCKELoBzuCji8k=; b=mar6kklpscJnyV9X3kjWaXwbNhi6WOphHVYnCbENYa2OdtqhaTkpciFA ze1g5UncePbnku2w2DHGXX1pcvy45W32RzqhQ//qXF1j8oalE6+w//cBp J6lQK0Wk4j8/+gP3K47fhjv5DYBq+Vj49VF5uhr1azj3gZftuNF2Bgzzk Tq/wOXbC1hYWcE0PFxoAxcZgtE6f7i2N05MouosZbjKJhiVKD0Z57+o2t b745hvZNA9c385kuRb/f6NHSj8souaReNU15AQilgsZzYeZ3nMfNNQ/nP ldXFfyx04UwGBjKeYrWHftwFrXM7ClYIoZH4HD4AlaqS72lBfG0zH1zlx Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639773" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639773" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:01 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529062" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529062" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:05:55 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 06/19] iommu/mtk: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:12 +0800 Message-Id: <20230104125725.271850-7-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097413811138072?= X-GMAIL-MSGID: =?utf-8?q?1754097413811138072?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/mtk_iommu.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c index 2badd6acfb23..d5a4955910ff 100644 --- a/drivers/iommu/mtk_iommu.c +++ b/drivers/iommu/mtk_iommu.c @@ -710,14 +710,6 @@ static int mtk_iommu_attach_device(struct iommu_domain *domain, return ret; } -static void mtk_iommu_detach_device(struct iommu_domain *domain, - struct device *dev) -{ - struct mtk_iommu_data *data = dev_iommu_priv_get(dev); - - mtk_iommu_config(data, dev, false, 0); -} - static int mtk_iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, int prot, gfp_t gfp, size_t *mapped) @@ -946,7 +938,6 @@ static const struct iommu_ops mtk_iommu_ops = { .owner = THIS_MODULE, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = mtk_iommu_attach_device, - .detach_dev = mtk_iommu_detach_device, .map_pages = mtk_iommu_map, .unmap_pages = mtk_iommu_unmap, .flush_iotlb_all = mtk_iommu_flush_iotlb_all, From patchwork Wed Jan 4 12:57:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38904 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133142wrt; Wed, 4 Jan 2023 05:07:39 -0800 (PST) X-Google-Smtp-Source: AMrXdXs7QxduP4lQ/zzXkueRgdyTa4LiQVxEYiTziDPnyhVRuNecAQRNP+q6wE+FS1+o3PaJPZXT X-Received: by 2002:a05:6a21:2d09:b0:a4:aa40:2253 with SMTP id tw9-20020a056a212d0900b000a4aa402253mr56912067pzb.21.1672837659418; Wed, 04 Jan 2023 05:07:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837659; cv=none; d=google.com; s=arc-20160816; b=KCGzGDBVWNJ73V+Fz6GnteKvnFOoJuIyctHb257w2Uw3kzhXrBkp3B2CVcGWIZAVPm 6pknMHRiUNsyo3vruFYHbcoRJKYfEAirA4E2MppQyO6XbrOWOOITZrqDQ9hR4CQP1+f1 B/yn/DYvPQWPIsrBCPfPTqJPvr0O/na12cjyv1utxDn5V0+Tb+MG+7L1JQq1ZL+WoJds 7DFFeluJv36eBtK6vHV9vXo35fqP2WpZrLD5+ILIrkx6uKdiH1nFBKJH55bc+ufisxwG Wj5WOOfJpul20JCj7mYYRCLfA6+yiT+9gaOOmHA9eGaWFRYPA5IW23AowsbJUF4htvWe R5mw== 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; bh=jBTA6mFGSpA0sWqDa/OqRssIj5wrY5+oAZVBAQppDUE=; b=A0XH7ZRjw1Ra9t0pMl11TXYp0u2b/eEjvKs5Fl8jEf7ZjTcIpsFD0Wgy4FzubGl7HM VUnnkXkjrSgLGTqbQGqMGWHOT5tTgjMcOjb6fao9l+37jUs0ehBBDZzWucZmuM5OzhyS sxYzaG/kCwYxzny5HNMV26IDpMm3paACp/vDWWbs9urIH9IRbotQKLJ9i/yrHwUWjX3w c8pmhnJ1JXcs86bR62K3pZM6TfKyLPyUE5j1MMrRoelxyiPmS3+hGQpQQlbWcCL7xtCg Jmv+fKwjKWes7uhOuixteZ+V3/QwJCwkFc18kEqAa2dSbL66k8bVAMEOJLn01mr9SE6x aHBg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=N7IJWMIy; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i4-20020a17090a974400b00225f76112d4si25228675pjw.59.2023.01.04.05.07.27; Wed, 04 Jan 2023 05:07:39 -0800 (PST) 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=@intel.com header.s=Intel header.b=N7IJWMIy; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239274AbjADNGq (ORCPT + 99 others); Wed, 4 Jan 2023 08:06:46 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44858 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239275AbjADNGY (ORCPT ); Wed, 4 Jan 2023 08:06:24 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 97BD43739D for ; Wed, 4 Jan 2023 05:06:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837568; x=1704373568; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=j/iXixzsGRWj5E6ijTkILdhIPqIl2Z1b8966w9/FggU=; b=N7IJWMIyGixBftpnXA0Td97OM7MG19tNoXh0/K4cmwuBtCq/F0MDrPu8 F6DySTA+T38TTYGbJekK58Tl1L+uuhTpMQU+wv6oQDw/4iFrN0occ/OAI asD+wkFMoUBwGJ/bV4C653upqtyMNRbiNF7fB+lReFSVQOK62mp596VyA r8HlqXt9jgLMv5mJJcq6F+3nGI8YRNcJq8kQIlaEB9Ngsyv93KSqCNMEo 35eegvt0rRDXwPCM1NSkaCVWRUbjChCYO+ULgTh1/KxKnEAv4RimscY5+ F4/wi+c+STHNSlgDQb6LCbRNtGdbHQobM5kTgjsqKBS2zJ6wVdhG21o4D Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639816" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639816" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529071" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529071" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:01 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 07/19] iommu/rockchip: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:13 +0800 Message-Id: <20230104125725.271850-8-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097421398584464?= X-GMAIL-MSGID: =?utf-8?q?1754097421398584464?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Signed-off-by: Lu Baolu --- drivers/iommu/rockchip-iommu.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/iommu/rockchip-iommu.c b/drivers/iommu/rockchip-iommu.c index a68eadd64f38..f30db22ea5d7 100644 --- a/drivers/iommu/rockchip-iommu.c +++ b/drivers/iommu/rockchip-iommu.c @@ -1192,7 +1192,6 @@ static const struct iommu_ops rk_iommu_ops = { .of_xlate = rk_iommu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = rk_iommu_attach_device, - .detach_dev = rk_iommu_detach_device, .map = rk_iommu_map, .unmap = rk_iommu_unmap, .iova_to_phys = rk_iommu_iova_to_phys, From patchwork Wed Jan 4 12:57:14 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38906 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133611wrt; Wed, 4 Jan 2023 05:08:32 -0800 (PST) X-Google-Smtp-Source: AMrXdXv8mOebBxU0HthU8xtDNr0/B+zXNrBYUZop9KYRpCL/CxDxnaWawpJwpr90lbynWUQF4igW X-Received: by 2002:a62:794e:0:b0:581:5b79:a7ad with SMTP id u75-20020a62794e000000b005815b79a7admr36535009pfc.8.1672837712253; Wed, 04 Jan 2023 05:08:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837712; cv=none; d=google.com; s=arc-20160816; b=VYeoJZRw9C2twXLkexUaFh6vY5syT71JemoZKZFDXCBWn32jR1RGnqmgy27JgOU0py L3YjMCMKt63MTRRRwFCq7aR0iLEGRh8NwvgoNL0rifMXZVV3a5odm6LhETUpJrrT2JkF sV/jjRUBkKojxLqchn/HgdRD898XVC/bP6eIP4NVA5UBpQKMI11m9gSs7au/8OTjSWy1 sXChrYZyjblXSjuTGSU1+10ZQD2mKMgI08h4caaVHr+aZ/YCzbVMQXbdeKfH9c9D4kCe sM0UM8Fle3jzvC3FGVo5Uin9EHH21Vx1ySoj+PGOittBpEDy9YjYR9bQwTGl7G9tqPoP v4EQ== 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; bh=1bCm9quf2a7hFLLzs7jjBA5RV4WSbZwV2FEk9fvO+gA=; b=GyY9wiWSIhJL9CpfsCblodKUVbrKBcmnJhI/h5BBLwKfa43JjVNvQ6H4DzZU3gg2Ve wpHHnGpF3hYpo/9U3iZlWk1wj3gX/AS/Ic+ENv34bmEF0b+0IM3v/hciPuadWembKImG pkTBcv/4VpUPOxvJAZGPnzksUV9OtKSHkfyaFV3otcdh6EyvolSAjt+D4lj5/1Ic0lI8 amcg2wbThGIr0d3SHGGKrv9Hz9AkcUHIUqZmurzG0V/rq1AJzpfVnZRL55ec9qNzcvu1 d1zbfGDBVSjM25dojk7AEgFvMaMgE3MdsdvWJ3MEEOaNtboXoatIt2Ef5bWE1iQHpsbj aIWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=UO1yZ01+; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u22-20020a056a00125600b0056cb8f6f027si37357818pfi.357.2023.01.04.05.08.20; Wed, 04 Jan 2023 05:08:32 -0800 (PST) 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=@intel.com header.s=Intel header.b=UO1yZ01+; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237524AbjADNHN (ORCPT + 99 others); Wed, 4 Jan 2023 08:07:13 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44314 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239347AbjADNGa (ORCPT ); Wed, 4 Jan 2023 08:06:30 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4C72537517 for ; Wed, 4 Jan 2023 05:06:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837575; x=1704373575; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=LJMM7gEaI2hxsNih1EgB3wunRnyqdXlkoKPFLMX6xOs=; b=UO1yZ01+5nbitr12vWZYauAH/6Ljxa3nXkVhQhZSFT6OTx6RB9jsSg17 QSafmfDtxDaWzu+Vxso+fgVjVYMm422iwcn87TVl5mRiLGKPrqS3qkl5M QlHNHEHbyk+tH5nryNJp40dzmiIxjZWX1TNLCsQHhvLxMYOmqZ67mTKG4 fOi/39F85+u+WvEWyey1/zqAvapBFYmDt6qCaW0Ru1XAaqoGV36Ow7Zcd C7YqjqHijPzUAyUXyprhe6WQdSvn67Xrr3asUNXiqRlua5eIxUeWfgTM0 XsK8hU8bG6IecRKTe9pRmaATCpur+8jD7eXw3STATGcrmw7o38OqrVZTJ w==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639875" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639875" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:14 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529076" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529076" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:08 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 08/19] iommu/sprd: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:14 +0800 Message-Id: <20230104125725.271850-9-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097476884443556?= X-GMAIL-MSGID: =?utf-8?q?1754097476884443556?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Acked-by: Chunyan Zhang Signed-off-by: Lu Baolu --- drivers/iommu/sprd-iommu.c | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/drivers/iommu/sprd-iommu.c b/drivers/iommu/sprd-iommu.c index 219bfa11f7f4..ae94d74b73f4 100644 --- a/drivers/iommu/sprd-iommu.c +++ b/drivers/iommu/sprd-iommu.c @@ -255,21 +255,6 @@ static int sprd_iommu_attach_device(struct iommu_domain *domain, return 0; } -static void sprd_iommu_detach_device(struct iommu_domain *domain, - struct device *dev) -{ - struct sprd_iommu_domain *dom = to_sprd_domain(domain); - struct sprd_iommu_device *sdev = dom->sdev; - size_t pgt_size = sprd_iommu_pgt_size(domain); - - if (!sdev) - return; - - dma_free_coherent(sdev->dev, pgt_size, dom->pgt_va, dom->pgt_pa); - sprd_iommu_hw_en(sdev, false); - dom->sdev = NULL; -} - static int sprd_iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, int prot, gfp_t gfp, size_t *mapped) @@ -414,7 +399,6 @@ static const struct iommu_ops sprd_iommu_ops = { .owner = THIS_MODULE, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = sprd_iommu_attach_device, - .detach_dev = sprd_iommu_detach_device, .map_pages = sprd_iommu_map, .unmap_pages = sprd_iommu_unmap, .iotlb_sync_map = sprd_iommu_sync_map, From patchwork Wed Jan 4 12:57:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38907 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133890wrt; Wed, 4 Jan 2023 05:09:03 -0800 (PST) X-Google-Smtp-Source: AMrXdXtNhkr0C6cQqIUvxUBTyy/Ja5ybfLKJEuLeSY8gbmFmVSfAq3/5ymkyG59sZ0AWR/hzpVOi X-Received: by 2002:a05:6a20:3c93:b0:9d:efbe:a113 with SMTP id b19-20020a056a203c9300b0009defbea113mr64016277pzj.35.1672837742927; Wed, 04 Jan 2023 05:09:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837742; cv=none; d=google.com; s=arc-20160816; b=EcBVs1FS4KuWcrqTnxUL6rNGn3A5RolXpo2SXE89YizqULeanVnTcMgLU+POfNQ4n+ lk96jJJXMXJp8sWrpRiCrwPEUtpVMEB2nPnkBwfSBW3cmZrAa+gKEJjp+WDAPsYeaYj2 bBCmXHZyUn8wlheygfkyTDybYl7Q2v2eSjc0yEmZY4pyfjjOrTesfvNE4YQmPeHLdKM2 ERj+0JLgFhpijpYxuyvxKSdcyjgi77+DZJ4HoGpCA2Nb+OScp8kEVpsQahd06kgyg23O dYLM175uVUuJ66XoPajMkiPUZ7zrrWj9j7L/9VpJo/r+FcJFXCjAd+RoxRL/hqBnTlCl DbYA== 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; bh=20osE87v4GBOai7gBIglQxiyjkyEc1FMCkAq8l9tyG4=; b=0Oufb/OGDu69U80Dpv5XyYJMoYzHHT0PrQ2lY08pX5utlcMpV+zcapo/Yusi8txxPR V7dF8oz/Ro+tPNafKOfyV377QwdiBhqCDjf35YqJi0jcZ2uO4KN1Kv/B1JlBj91Nany4 ENjN6VWDFRvs0MC/t9ymOrVXOZbINJeDuGXq4072j1NU1d6b6lJln9ROVY0cHkwKtzv/ DRormQstcEU14+YjFBzPKvdV4rwTWwNGf5cln0RY+n7LmXti4zzcKlNZnMd63Zx1dnff VkPqRNxsZb5OJp4StXepylGfssKquBx1715xucJMrvtX+2t9VbxO45P/9yz9v8qIkZtH m32Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=cKbaUosI; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b24-20020a631b18000000b0047caad28cdbsi34528942pgb.621.2023.01.04.05.08.50; Wed, 04 Jan 2023 05:09:02 -0800 (PST) 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=@intel.com header.s=Intel header.b=cKbaUosI; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239295AbjADNHZ (ORCPT + 99 others); Wed, 4 Jan 2023 08:07:25 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45090 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239173AbjADNGh (ORCPT ); Wed, 4 Jan 2023 08:06:37 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7418B3753E for ; Wed, 4 Jan 2023 05:06:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837581; x=1704373581; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+FAqxiLeKTjC5EQBIkZoPJaAUfpQlzWcuzFJW+dcWDQ=; b=cKbaUosIVxQJlhUfHm+bLYaylBqQpBfnuiraFRM7tox6eUL9HaXWu4nN i7bvH30DzYWHo9VcOKWUUeU8gg5pT8HesyRGra7enjT9JciSSCGwnsqSB H7AuKg7iuaMR/ekauiNYlo5S0LZkRtSvpp8VyDJN6Cx2VCg9EuyZevNzs CwggdyNSBVwo8+CiXz7fbFIZjLz+LN9X3/reTog1CTBBKIvzcjfEf0Wvs AQHpVDSzkjKgu1reXHSkT+Z/CSTAJfQS1Ug7WIWfOd98p9giye4OtoXLY fXAaV5FjT8ji0UqeLFTF1EMIlqOTV1TF0g9eDm8XccY1GLSZDaAssftgw w==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639913" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639913" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:20 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529095" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529095" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:14 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 09/19] iommu/sun50i: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:15 +0800 Message-Id: <20230104125725.271850-10-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097508807387874?= X-GMAIL-MSGID: =?utf-8?q?1754097508807387874?= The IOMMU driver supports default domain, so the detach_dev op will never be called. Remove it to avoid dead code. Reviewed-by: Jason Gunthorpe Signed-off-by: Lu Baolu --- drivers/iommu/sun50i-iommu.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/iommu/sun50i-iommu.c b/drivers/iommu/sun50i-iommu.c index 5b585eace3d4..2d993d0cea7d 100644 --- a/drivers/iommu/sun50i-iommu.c +++ b/drivers/iommu/sun50i-iommu.c @@ -834,7 +834,6 @@ static const struct iommu_ops sun50i_iommu_ops = { .probe_device = sun50i_iommu_probe_device, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = sun50i_iommu_attach_device, - .detach_dev = sun50i_iommu_detach_device, .flush_iotlb_all = sun50i_iommu_flush_iotlb_all, .iotlb_sync_map = sun50i_iommu_iotlb_sync_map, .iotlb_sync = sun50i_iommu_iotlb_sync, From patchwork Wed Jan 4 12:57:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38909 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133980wrt; Wed, 4 Jan 2023 05:09:13 -0800 (PST) X-Google-Smtp-Source: AMrXdXu0tODM+uAg//1ENt5H/2qIv9psbkLgF1mZiBpbDUwLChYcOOgxTLUsiBi8n3+Oyntcrj8K X-Received: by 2002:a17:90a:5d08:b0:219:4578:6409 with SMTP id s8-20020a17090a5d0800b0021945786409mr51264392pji.41.1672837753444; Wed, 04 Jan 2023 05:09:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837753; cv=none; d=google.com; s=arc-20160816; b=vv6gdk5T4GU6XwxabH9Nmo6i6/YJGsevZFrNMHYz+D5STf6OdamRdNbaHQ3RyZgPD6 AMHhoGqpu0ViZFV76PJeBl2WzqGikHD5ZNeQym0OVAW3/68IF0ffIUZC8yC2uNV9KxFg Hiy0XoQIosM80ActsEiBdynsZzRXuh6mDM5NWL6MOQmv0LABw7OGOVrD3f4lTk4CjIPF f0rdnIF4om7RkSmQVHHl4Cz8w9kQaWbGQpl/ZBn/TVnMnorkCJU2sU7KuZxyCh0whS1r QljCLjffsYjajBdePqfDoE6LjnXx5AxL/sCUno+TbCWmZQQCulsfYPyL4i2+HTGfr90C ciCg== 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; bh=5VH2S4nI3FNargaYEhSNXwqpoV08iAbdsxF7HU55tvQ=; b=YvWVOs8Mtfk4wn1bwnGQj+GYFUSGmj5VNn4Z6zx2SjBaba23eLxcPiCgmtOmcUGloQ RW/VhOjdrCfsdsSAbFJt0E1aYVJl6UJ7R/FdlgscPmtxtVkUYRfB7K37ZCeQcnCcLQbG NgyQzZ/eDZuz+mJC6fa/gE1mwicaq8xaFs9dA/ybJ3axNSqFxIe6umZtHtxBmb+gd4JK 3njwRaqmbswAPjwgNKWhXWpu6VhxXfUaY5DjlcTwGjRYdzzH0/wTxHuIcQL9Ha4162Ni weniIq1AA+7tIpAL9K2/V/VtiOK6ivSLOmK2E8eCoyIC+hw9KLtEn34mCHVA1xM0THP8 bc1A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=lWpQjES+; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i21-20020a17090adc1500b00223b1092804si37670603pjv.163.2023.01.04.05.08.50; Wed, 04 Jan 2023 05:09:13 -0800 (PST) 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=@intel.com header.s=Intel header.b=lWpQjES+; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239305AbjADNH2 (ORCPT + 99 others); Wed, 4 Jan 2023 08:07:28 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45456 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239294AbjADNGu (ORCPT ); Wed, 4 Jan 2023 08:06:50 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 097F7E45 for ; Wed, 4 Jan 2023 05:06:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837588; x=1704373588; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=1DSM4fHz5l5HcYyLuKZ27aWJHPiNFSeHrlfd99N8Mho=; b=lWpQjES+ZHcguUi0H5ibzy0IZwpUPiM6OBjo6PAjrR63okVYveqfZpR0 J8mNPR9HCid+Kko/ihZS33gw+YpdHZ9fV+zBdnHC1ce5DxUd2XIyCORza MjxgGDopdPxmAGe25JijzpniQBbleqd3xYnMryUYIHkltm0nK3c8V5/qF ssO1xojZa6Uoty7Vqn9jronKGjA4KJs2AVgtJWPre8FtX0gJVhlv4mpdL QMdaC06BKF0anrF6KyA+nCP0uKrio5zRAYd0bMIzyzKnxIoKanoV0wzD8 Qq7BcAY9Y+/XInH+xQ+FoUrvrhsX1N3NEJFC1yiyO5Xp7LPBd59lCdrU5 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639955" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639955" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:27 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529106" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529106" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:21 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 10/19] iommu: Add set_platform_dma_ops iommu ops Date: Wed, 4 Jan 2023 20:57:16 +0800 Message-Id: <20230104125725.271850-11-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097520453765468?= X-GMAIL-MSGID: =?utf-8?q?1754097520453765468?= When VFIO finishes assigning a device to user space and calls iommu_group_release_dma_owner() to return the device to kernel, the IOMMU core will attach the default domain to the device. Unfortunately, some IOMMU drivers don't support default domain, hence in the end, the core calls .detach_dev instead. This adds set_platform_dma_ops iommu ops to make it clear that what it does is returning control back to the platform DMA ops. Suggested-by: Jason Gunthorpe Reviewed-by: Jason Gunthorpe Signed-off-by: Lu Baolu --- include/linux/iommu.h | 4 ++++ drivers/iommu/iommu.c | 23 +++++++++++++++++++---- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/include/linux/iommu.h b/include/linux/iommu.h index 46e1347bfa22..7b3e3775b069 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -228,6 +228,9 @@ struct iommu_iotlb_gather { * @release_device: Remove device from iommu driver handling * @probe_finalize: Do final setup work after the device is added to an IOMMU * group and attached to the groups domain + * @set_platform_dma_ops: Returning control back to the platform DMA ops. This op + * is to support old IOMMU drivers, new drivers should use + * default domains, and the common IOMMU DMA ops. * @device_group: find iommu group for a particular device * @get_resv_regions: Request list of reserved regions for a device * @of_xlate: add OF master IDs to iommu grouping @@ -256,6 +259,7 @@ struct iommu_ops { struct iommu_device *(*probe_device)(struct device *dev); void (*release_device)(struct device *dev); void (*probe_finalize)(struct device *dev); + void (*set_platform_dma_ops)(struct device *dev); struct iommu_group *(*device_group)(struct device *dev); /* Request/Free a list of reserved regions for a device */ diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c index de91dd88705b..4e35a9f94873 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -2163,6 +2163,17 @@ static int iommu_group_do_detach_device(struct device *dev, void *data) return 0; } +static int iommu_group_do_set_platform_dma(struct device *dev, void *data) +{ + const struct iommu_ops *ops = dev_iommu_ops(dev); + + if (!ops->set_platform_dma_ops) + return -EINVAL; + + ops->set_platform_dma_ops(dev); + return 0; +} + static int __iommu_group_set_domain(struct iommu_group *group, struct iommu_domain *new_domain) { @@ -2177,10 +2188,14 @@ static int __iommu_group_set_domain(struct iommu_group *group, * platform specific behavior. */ if (!new_domain) { - if (WARN_ON(!group->domain->ops->detach_dev)) - return -EINVAL; - __iommu_group_for_each_dev(group, group->domain, - iommu_group_do_detach_device); + ret = __iommu_group_for_each_dev(group, NULL, + iommu_group_do_set_platform_dma); + if (ret) { + if (WARN_ON(!group->domain->ops->detach_dev)) + return -EINVAL; + __iommu_group_for_each_dev(group, group->domain, + iommu_group_do_detach_device); + } group->domain = NULL; return 0; } From patchwork Wed Jan 4 12:57:17 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38905 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133346wrt; Wed, 4 Jan 2023 05:08:08 -0800 (PST) X-Google-Smtp-Source: AMrXdXuzoN11yj7dKb96Tn2bgS91kASB/tbOewaanw9y28Xuc3XHeUZ4RGIb6a4YkoOa06f1E5nO X-Received: by 2002:a05:6a20:a682:b0:af:fcb6:2ef6 with SMTP id ba2-20020a056a20a68200b000affcb62ef6mr67141902pzb.23.1672837687952; Wed, 04 Jan 2023 05:08:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837687; cv=none; d=google.com; s=arc-20160816; b=joTPd2l9WqLn1YSi+cOgSnPa3teHbZCfIpLb1oM7wMHFLnKzVEBGO9VCOzeJEVTBwW WidYL/DiW4v8lHouYXbpg/Pbk/fk5pKZWBHPsgJjQkO7tYN1SgTslaVPs6ijTBOcIVr5 /i5/uUiB0LiXxoNy3tbYtcuRsA+Madna3cIJ/btdrXhoD665d1dZzlS13UiMsC8jks9C XQuOi+px24k4eOB6piej64lIChrF27NRzqnMHidGk4j9mTElOblWTl7h5Fyxdeu1KKAZ Dkt3dRm6Ttj7/B9OgTOWo736al7RrlJVsWAI3im1OteJxOR8Jb0e9n3YVyH0hci18Dpn OZzw== 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; bh=v9S2bLYP0UdoEHacmDarVc/XBB05QvZ1ofSmXEl9HAY=; b=qTQAwa+Itq1G+yZfZ6CEuXatq9ooYeI2iJXuVlKVUjFFqKgr/l+X7Ed5yCZB6wD8R9 m20xIAjbYaRDzBK34OyMqWca5EfnrUFxc6d8rqMEJL79EECUuMk8FZkTAR9AEn3uo/1M tuJMKNK6n2om9WqW1LyxukeXq+ykUzkISG7ieQC8vZVx+wqq5A9wgSJx2KRDDJtMTpiq DQf4ecoW4IyeP+PoDHM3JLsgPfF+teFOOnfwYOJGVCQrJ8Grn058TINh3fOIqHIakLFc JBa7vk/zCZfimA64qMQwqEUvvpGwzZ7565H5NpEU1iiqBhjuJIWJYolGboWA6TQ9Wp+J l2BA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=QGhIfr59; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p24-20020a63e658000000b004787004c8dasi35924293pgj.123.2023.01.04.05.07.54; Wed, 04 Jan 2023 05:08:07 -0800 (PST) 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=@intel.com header.s=Intel header.b=QGhIfr59; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234884AbjADNHJ (ORCPT + 99 others); Wed, 4 Jan 2023 08:07:09 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45476 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239303AbjADNGu (ORCPT ); Wed, 4 Jan 2023 08:06:50 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DA7A61E3F7 for ; Wed, 4 Jan 2023 05:06:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837594; x=1704373594; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=W4kgWJ13KkfOnFNvqJ626ui344bVCUNFAhn6AsaS62k=; b=QGhIfr59Z4JHsKb9iSPsKMKvWoStPG80Ok0uApMWd29pRD2lTN93muVt 1QqJJEgC7ZU+eaGKkeLsP5JA/DGZssim5v52MTpHRV9ubS9Rb/BYS9sJ0 hoMdZYkPp8T8KenP4osrmXpKv6C6+kpUHux0bAQ4BtWsRSpxWbyMnpn6V PX+JPzJBhtF79NXFkC/X5w9ngdIV1xkMJOcJtY6r1CwHUIA5hV+vJS6fz To7D6Mlkex2bYXtZdu8AvfG6WhwSicRYlF3mlWMkxTM2yyQqWIBCkUNjI qvUtzcP7UbtWE9cPv6tofJbILUftqn1LSWw31/cydGXEQeJNk4h2+8bJ3 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320639997" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320639997" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:34 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529117" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529117" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:27 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 11/19] iommu/fsl_pamu: Add set_platform_dma_ops callback Date: Wed, 4 Jan 2023 20:57:17 +0800 Message-Id: <20230104125725.271850-12-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097451347455602?= X-GMAIL-MSGID: =?utf-8?q?1754097451347455602?= This IOMMU driver doesn't support default domain. Add the implementation of set_platform_dma_ops callback so that the IOMMU core could return the DMA control. With the set_platform_dma_ops implemented, there's no need for detach_dev. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/fsl_pamu_domain.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/iommu/fsl_pamu_domain.c b/drivers/iommu/fsl_pamu_domain.c index 4408ac3c49b6..e123161c211a 100644 --- a/drivers/iommu/fsl_pamu_domain.c +++ b/drivers/iommu/fsl_pamu_domain.c @@ -283,9 +283,9 @@ static int fsl_pamu_attach_device(struct iommu_domain *domain, return ret; } -static void fsl_pamu_detach_device(struct iommu_domain *domain, - struct device *dev) +static void fsl_pamu_set_platform_dma(struct device *dev) { + struct iommu_domain *domain = iommu_get_domain_for_dev(dev); struct fsl_dma_domain *dma_domain = to_fsl_dma_domain(domain); const u32 *prop; int len; @@ -452,9 +452,9 @@ static const struct iommu_ops fsl_pamu_ops = { .domain_alloc = fsl_pamu_domain_alloc, .probe_device = fsl_pamu_probe_device, .device_group = fsl_pamu_device_group, + .set_platform_dma_ops = fsl_pamu_set_platform_dma; .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = fsl_pamu_attach_device, - .detach_dev = fsl_pamu_detach_device, .iova_to_phys = fsl_pamu_iova_to_phys, .free = fsl_pamu_domain_free, } From patchwork Wed Jan 4 12:57:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38908 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133978wrt; Wed, 4 Jan 2023 05:09:13 -0800 (PST) X-Google-Smtp-Source: AMrXdXsMmQ/FESMGABamuy0ote66QqrDNyERCwIIchm02uQV20KC++euKm5I4WAgq7hDloP5H6IT X-Received: by 2002:a62:1c84:0:b0:576:e4c7:97bf with SMTP id c126-20020a621c84000000b00576e4c797bfmr47460720pfc.15.1672837753483; Wed, 04 Jan 2023 05:09:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837753; cv=none; d=google.com; s=arc-20160816; b=xdy6+dIq5jXDooRvpJ4mdZozdHRZmYNKf+bZD3yuEvsw1dYH0B5f3yA9cfIPXl6YOg H9TlyOlbI3OiyncemAr9XyDDFjNoDu1GKVGFdejvprbhOd8/TZ3s9JtkiDqMu1iCEvWI cTE/kdy0a+IzsW19UARJRd8Hofe36G7nExI6oo1FNd3yRP93DhYpdntOqjuex6xFRN4a C5A30QFjztjjBbM73RBo8JNYOdjGI2sjpliQINjObKDcYCSDIt0QM0GzupxsyzSIGP3e ru16rNHjf7z0mu35npGtthEm3TPThq8ROp2doGWIo6hIjbhbomRaskLEKkZx/SI75EbL aVNw== 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; bh=mRYBurpZZLOInoZl/2P5wqP1nXSyPihfY1U3ozGzByA=; b=OucQgC7ZTBFsdSC7p7jCnUyxbQAPg0JEjy+bFaZ+gY6sRk0y31iUGEOx541GXpLiP0 zEFY/WH0zYIk61cG2EDxl57f7O+Iqeg8Qa7mJ4IJ9f1WzqkFeelj22ubAYlV7d09Udu4 brvRuWlv+dCzZA10Litu5QueU+yF7xyxuI49yDkXa7hGbXwBdJo2LIHMBJB17u/juczx chKD94pfGihuzpjtKm0UFXVzLgECB42/XDDobHqGZO9lEYSRIsiEhVKG9mQ46LIa2Dae YhRbiHc9Zx2v108k+855B6Tt9tPRCDjNwMDlSzYzxRfi1jxlcKF4MYLUIlfPeQIReP67 kF1w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=LebyiJ4G; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j67-20020a625546000000b00577c17000e1si32130606pfb.280.2023.01.04.05.08.53; Wed, 04 Jan 2023 05:09:13 -0800 (PST) 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=@intel.com header.s=Intel header.b=LebyiJ4G; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239287AbjADNIV (ORCPT + 99 others); Wed, 4 Jan 2023 08:08:21 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45446 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239365AbjADNHs (ORCPT ); Wed, 4 Jan 2023 08:07:48 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF8A83753F for ; Wed, 4 Jan 2023 05:07:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837626; x=1704373626; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Iko82bs3XyVMHXHooIhs56+RqC7yt7lL9TP+oKjcj1Y=; b=LebyiJ4GssdL5TrjQrihgBH9zENwrLGnK0uDMOj/bY3145bXx/pa+Ylv zCIZkc8D9O3n6uwKbix/r9XBKeBqBEEwZ+LBu3I6Q/0GRd4A/VQQMZZ0L HJlyi0e2p5ggBOT1fDPHwdOYA1SXQRocagofJdOfYQl134XOHBIWnV31x YG2seRLWtaWyN/3ghmokFe620plfJfPwlS8th8smPPQtcQTh4EOL/BZF5 GX4vSVqtI88l6kRFkY6ZI8zjzRIs+klK4jnZJmunV8xM04ADvHpHyIyV9 +YayqIYnIuGH05rcG+NffyzypzA5FeQ/Lfd1VoAHIrtL0tDXn843JcSKv g==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640061" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320640061" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:40 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529125" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529125" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:34 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 12/19] iommu/msm: Add set_platform_dma_ops callback Date: Wed, 4 Jan 2023 20:57:18 +0800 Message-Id: <20230104125725.271850-13-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097520291745976?= X-GMAIL-MSGID: =?utf-8?q?1754097520291745976?= This IOMMU driver doesn't support default domain. Add the implementation of set_platform_dma_ops callback so that the IOMMU core could return the DMA control. With the set_platform_dma_ops implemented, there's no need for detach_dev. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/msm_iommu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/iommu/msm_iommu.c b/drivers/iommu/msm_iommu.c index c60624910872..454f6331c889 100644 --- a/drivers/iommu/msm_iommu.c +++ b/drivers/iommu/msm_iommu.c @@ -443,9 +443,9 @@ static int msm_iommu_attach_dev(struct iommu_domain *domain, struct device *dev) return ret; } -static void msm_iommu_detach_dev(struct iommu_domain *domain, - struct device *dev) +static void msm_iommu_set_platform_dma(struct device *dev) { + struct iommu_domain *domain = iommu_get_domain_for_dev(dev); struct msm_priv *priv = to_msm_priv(domain); unsigned long flags; struct msm_iommu_dev *iommu; @@ -678,11 +678,11 @@ static struct iommu_ops msm_iommu_ops = { .domain_alloc = msm_iommu_domain_alloc, .probe_device = msm_iommu_probe_device, .device_group = generic_device_group, + .set_platform_dma_ops = msm_iommu_set_platform_dma, .pgsize_bitmap = MSM_IOMMU_PGSIZES, .of_xlate = qcom_iommu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = msm_iommu_attach_dev, - .detach_dev = msm_iommu_detach_dev, .map_pages = msm_iommu_map, .unmap_pages = msm_iommu_unmap, /* From patchwork Wed Jan 4 12:57:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38910 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5133996wrt; Wed, 4 Jan 2023 05:09:15 -0800 (PST) X-Google-Smtp-Source: AMrXdXuLRXpaIlWFgO/P3KJ6Sr9T+9FVIhBjQ9dfz6kzruwHfV59cADvBdvbYBGRNroZsMUfa/CU X-Received: by 2002:a05:6a00:1d03:b0:573:a0a0:c5d2 with SMTP id a3-20020a056a001d0300b00573a0a0c5d2mr55574643pfx.7.1672837755216; Wed, 04 Jan 2023 05:09:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837755; cv=none; d=google.com; s=arc-20160816; b=cTH77Em5WB7zONKvgKM1dNlSV+9QTzw62kiDblW4/Uq8A+8s6F6higWYdocby6gbKB SahzrWOQrwVlYaXwgm2GEPMfB0WfVmbE2E6tJd3IXrMcRzvKmUWtqYGKTUIZTe8AehWF gGK+6tGmGPb70BcBtHifI6ySYXcpUXmbUEUBiNrMm6WYDPcWU7CcOSY9NoRratHnzhkR RFNA1AVHQ4a8i80nZUkyF+CjLd/us/ZKE6ErL0YoI86TlHHompoSorR5Xmixe7thkdOY UOAut95cu4D6EcQy1GiDpx0OQDk8EjNNFlJJVFhsck3q/R4SbUDpHdOTF67uKAFcJroa 4Zsw== 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; bh=jFrhMAqBpXI5tO8J+qzs+hyFm5JLXDdmFr6L6dhaTGI=; b=Yxo3DYMzCrvim9vxyxJCq6OOSHTE6ALE3t9XTmjgyomqqIaMVFLtWLxscA5IpHGcnx kqpBNvkcx6bopLYfoS7nqVgWBNL/Jv2omG4J60f8ROUeKtbTLfL+4TkscSfrUJfy9LtW Kzg2efP91/x1WiAHcP5Y+sLLpLymJoDa/bPUcjpxZ57mmYbu1BsEvcg/IWTXH9Q6Wd+i mnA5jEm2rywR+Inppy7KuZVTy8GX6kAafhUbCf4TYLWuWG/49chDm7gWtdcDpIdZlfrJ jvLXl3GM5bm0EaCUKGo8vjrxfhqSe7+9O0UxuOZofVpTnDRtY0RzotzQbTgWoNNqwCeF HnIQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=DBmtpkqL; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 7-20020a620507000000b00574c8aba4d3si32899706pff.153.2023.01.04.05.09.02; Wed, 04 Jan 2023 05:09:15 -0800 (PST) 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=@intel.com header.s=Intel header.b=DBmtpkqL; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239341AbjADNI1 (ORCPT + 99 others); Wed, 4 Jan 2023 08:08:27 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44904 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239364AbjADNHs (ORCPT ); Wed, 4 Jan 2023 08:07:48 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF81C3753E for ; Wed, 4 Jan 2023 05:07:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837626; x=1704373626; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=6/1FMqG3xZJDtfDShWWRJkd9e9miluKjPk+ZSlf8fww=; b=DBmtpkqL5ZRnQXacZ2W6AkKaANIh3XXcKwq89y9fX9A3pyJaBvc8nAHd +aQlGhEKLxIHm7/Q3cELMorUNntCMI9ccVcMbAb03MEWptDf8OFeXgZvw T2Ivmb1Kd+ZO9X2Rh6/0EsYzPqE9QhuqWUT53TqmKbetfTG/oI2XYtW/T 2lcAMX22dXik7r97PE86RF6ck8Log5XcYHh/MF4o4MoshxiPrnt0J/UxW JY1uozc6kvk0uGVzko2+DF7le9mW4McVJKDOsGZhOkY02/X3wJQtf6w5Y zBnRxfFyPUY0NCpodAdRseEhw771wScDTlOKdjOsZJw2tMUqLewiMpYrP A==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640099" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320640099" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:47 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529136" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529136" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:40 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 13/19] iommu/mtk_v1: Add set_platform_dma_ops callback Date: Wed, 4 Jan 2023 20:57:19 +0800 Message-Id: <20230104125725.271850-14-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097521871070296?= X-GMAIL-MSGID: =?utf-8?q?1754097521871070296?= This IOMMU driver doesn't support default domain. Add the implementation of set_platform_dma_ops callback so that the IOMMU core could return the DMA control. With the set_platform_dma_ops implemented, there's no need for detach_dev. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/mtk_iommu_v1.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/iommu/mtk_iommu_v1.c b/drivers/iommu/mtk_iommu_v1.c index 69682ee068d2..78d0a84c704f 100644 --- a/drivers/iommu/mtk_iommu_v1.c +++ b/drivers/iommu/mtk_iommu_v1.c @@ -319,7 +319,7 @@ static int mtk_iommu_v1_attach_device(struct iommu_domain *domain, struct device return 0; } -static void mtk_iommu_v1_detach_device(struct iommu_domain *domain, struct device *dev) +static void mtk_iommu_v1_set_platform_dma(struct device *dev) { struct mtk_iommu_v1_data *data = dev_iommu_priv_get(dev); @@ -585,10 +585,10 @@ static const struct iommu_ops mtk_iommu_v1_ops = { .def_domain_type = mtk_iommu_v1_def_domain_type, .device_group = generic_device_group, .pgsize_bitmap = MT2701_IOMMU_PAGE_SIZE, + .set_platform_dma_ops = mtk_iommu_v1_set_platform_dma, .owner = THIS_MODULE, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = mtk_iommu_v1_attach_device, - .detach_dev = mtk_iommu_v1_detach_device, .map_pages = mtk_iommu_v1_map, .unmap_pages = mtk_iommu_v1_unmap, .iova_to_phys = mtk_iommu_v1_iova_to_phys, From patchwork Wed Jan 4 12:57:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38911 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5134001wrt; Wed, 4 Jan 2023 05:09:15 -0800 (PST) X-Google-Smtp-Source: AMrXdXtNvRNx7uDB4VwaLeWnG0f+odBYmU0EZbGhindC1b+L2Km+kGW1RU4+QXZV7ZkQBHy8HbWZ X-Received: by 2002:a17:902:b08e:b0:192:6195:44b6 with SMTP id p14-20020a170902b08e00b00192619544b6mr39785040plr.58.1672837755570; Wed, 04 Jan 2023 05:09:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837755; cv=none; d=google.com; s=arc-20160816; b=rZd9bEnLPsqd7ITDMorEYLwv1mjJ2IEavqLSzSiXfXXAdbE6HWCeJcCxmFaGiskXqM ZJgOQ4K+Zm0jgXLqJGtEi5bUBULAqPAY1hk6Wx+zMeuMuqPUkZ6HYSHZnA2DM23mqnEG jkZSibGLBz0KjTU3fIUC0IBzt9O1fP1eFJSQMotm41G5tAvDNNFV3pt1lKMB3E9v0uMq zZ3CTZhPL8b+0ZBC8EeQNgEWyjZhyTvzf9n8HlMcdZtciQaf3OVXN7dyuG8eu//g7Rgc IwEfJbY7zfNqxPOFs33xN94J0Qr2TcVPQCvhToZlehz1NgYob+NAq7yBQ5GkOhDkpxLJ peRg== 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; bh=kFY6akA5JUGyUp6mHVaTr58S5I1rJpn7bg3WaaibIOc=; b=h5iCoXDiDmFvno2P2HYqx++lZZ8h3b3vXrHOCgKhMbyOJzUSSzo0SVAmDvGn5xZZcv 2uJ2IcftAzfItGrhW4YD+FYTtoGynWrfjPkCCzR4vdAVxJEBMBJtJwrxalP7gzhAVXws wQSeI14Wxy93sbawl8LCW7AoEJRKEyohm4eHKPHAfII6k2R339tLJI9jHDr2USZYFK2b OwLro54wktA5qcQIeymWWoTaMPmtKtqq6cw23nTp9tEkl9doiNz7BYT2ZjgyO7eETLKA kaj/vjOALelYZR1YMiE9F/Uq5/XThnfZsday67o7Vuy1az2GOco8IOBWMgHH2OKbjbIo 7BeA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=WFHi+D5i; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id k70-20020a638449000000b004910ae954casi35264266pgd.421.2023.01.04.05.09.02; Wed, 04 Jan 2023 05:09:15 -0800 (PST) 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=@intel.com header.s=Intel header.b=WFHi+D5i; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239352AbjADNId (ORCPT + 99 others); Wed, 4 Jan 2023 08:08:33 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44902 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239362AbjADNHt (ORCPT ); Wed, 4 Jan 2023 08:07:49 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E4E5D395C2 for ; Wed, 4 Jan 2023 05:07:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837626; x=1704373626; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=gxJLHmezjsBYFySYnAyva9RMyCE4Jcahplt9m+F0/+g=; b=WFHi+D5iBPo74VzbRcv88jdv//tVFUmRHGoG4cx83rKu2hFBzvaDoIsF TpWZl+phJgeHLXu8YgstW9GwhfXqx/4DeOh1tyA6NW/Bi2+FFatuJGX5Q 2GeVEHJRXaUZx5kgDWesB1PlMbkN0GovNQPddS43QedXbdQdudMJolpMk TKYDJXh1FYBc83a4IQbJqsskVNbXuMxANzRryYg7ZFuUemRr4TuMe9eWn hKuVWiKhmeSqW6P8wTL2sHlzeBjyFyXPJ6tuD76fgpunWCu8n0RAsC4Jg oQeSxRkjjo762nM6GDWkBnJZpjwbmOJBH8oXfzTcuXL+Lx6gI+tou9jB+ Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640135" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="320640135" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:06:54 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529142" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529142" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:47 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 14/19] iommu/omap: Add set_platform_dma_ops callback Date: Wed, 4 Jan 2023 20:57:20 +0800 Message-Id: <20230104125725.271850-15-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097522316170705?= X-GMAIL-MSGID: =?utf-8?q?1754097522316170705?= This IOMMU driver doesn't support default domain. Add the implementation of set_platform_dma_ops callback so that the IOMMU core could return the DMA control. With the set_platform_dma implemented, there's no need for detach_dev. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/omap-iommu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/iommu/omap-iommu.c b/drivers/iommu/omap-iommu.c index 2fd7702c6709..3ab078112a7c 100644 --- a/drivers/iommu/omap-iommu.c +++ b/drivers/iommu/omap-iommu.c @@ -1556,9 +1556,9 @@ static void _omap_iommu_detach_dev(struct omap_iommu_domain *omap_domain, omap_domain->dev = NULL; } -static void omap_iommu_detach_dev(struct iommu_domain *domain, - struct device *dev) +static void omap_iommu_set_platform_dma(struct device *dev) { + struct iommu_domain *domain = iommu_get_domain_for_dev(dev); struct omap_iommu_domain *omap_domain = to_omap_domain(domain); spin_lock(&omap_domain->lock); @@ -1737,10 +1737,10 @@ static const struct iommu_ops omap_iommu_ops = { .probe_device = omap_iommu_probe_device, .release_device = omap_iommu_release_device, .device_group = omap_iommu_device_group, + .set_platform_dma_ops = omap_iommu_set_platform_dma, .pgsize_bitmap = OMAP_IOMMU_PGSIZES, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = omap_iommu_attach_dev, - .detach_dev = omap_iommu_detach_dev, .map = omap_iommu_map, .unmap = omap_iommu_unmap, .iova_to_phys = omap_iommu_iova_to_phys, From patchwork Wed Jan 4 12:57:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38912 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5134282wrt; Wed, 4 Jan 2023 05:09:50 -0800 (PST) X-Google-Smtp-Source: AMrXdXtPNR8jHZ/gsnxS34ybV48BUFjFFRRJMfgZAKeGFmQxqf6l3jSRRdX7w5u4D6dAsp0jjNse X-Received: by 2002:a17:90a:800b:b0:219:ef02:824d with SMTP id b11-20020a17090a800b00b00219ef02824dmr54983480pjn.38.1672837789739; Wed, 04 Jan 2023 05:09:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837789; cv=none; d=google.com; s=arc-20160816; b=V6kVqRbK6++ZGxisNWgq2sXbB+BXSZBbJ5TlgsdbqDimJ+6LrL/sggDxa+HHE/iHwe th+b1/tQkj7LXtIe2va8f0JhElcQh8ceHVtmZm318DofMojqpvcbVbd23HTEe17G3vUy 5aUx568ZdPUS16CbvhzSqhf94fCEd1tvd1Z4ndSlaE5NRar6dvcCz7OuZbpcW57efaSb u9sHZQB/Y/5u9y61fL3TqSusrb8oypzAK6q3jFznPUUGGeh40MuUgmVXoRmoyFkChdGz QNaWqbRgsYKHaLFJk5QX6P8Q27LBSU9vVp4+utl5v7nHeXtfsummlHH+AjSBPaDheBQ+ pi5w== 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; bh=Z0RVRiyJAHMYMLV2AIh6q5wStaRQqcJX6nVPd1P/QyM=; b=eYclxXH0SIsgqAg2CZ9y9gXKiMCq8QRu+3m6K+NapjaMlywj2FpBE69xyVCifTsxJg Bt91THgtZXTHNVO3A2rnRAwSOPxazFInqH6+EIJbcSHXvjF+wlwSFNrnxL2fgMUsoYio MUjkSKYowe95/tI3dvBYdPOF1i5PM+mTQMqP9cbnZaaxRzy1yzIoWZqKY0KZL/AVqn/r Qw8iEYN/bxrXsrvKG6rugJUb88G62iyuCQo2TtoC6omyv2VF8HEm7d2mSb7bw4TpHj6O lOiEMBsAhsK/60qeNygwdNC6P6ifJ7iUG0c9/dd5l81VttnowoFPPu9ChJiLJgVfqKhG GgHA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=NF02FhD1; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bc22-20020a656d96000000b00491c2c993b8si36664433pgb.763.2023.01.04.05.09.37; Wed, 04 Jan 2023 05:09:49 -0800 (PST) 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=@intel.com header.s=Intel header.b=NF02FhD1; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237542AbjADNIw (ORCPT + 99 others); Wed, 4 Jan 2023 08:08:52 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44894 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239466AbjADNIP (ORCPT ); Wed, 4 Jan 2023 08:08:15 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A75A737387 for ; Wed, 4 Jan 2023 05:07:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837646; x=1704373646; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=NqpK1UK4zC2YasbUe6iVPvT9t2cN4N0bRVM1VXzIvT0=; b=NF02FhD1eQM8nLxU8MfxJIF+u/my/1K27BVf1gMkLbLLjiuSeKr5a0Fm niM6Jr5o2h414Bgcp2/6C/+MOm99E1OEMXCnn+CygQNjvSUTL23aj3HNK nM7J+uIXVMcqa8brT0zft6ZU76wyHe1rjEcSvoaV/3FNRXTyE6UQ2pKs/ b6pngtha8x9/k+N8N/56WARCcMI3hryh5lx7KbeZePsJMdd4cO9oYcgk2 aevOlXJF6wIeRB9pnW4it6d6p5Yitysnz8d8y21q6skBIBLvhia1YtX29 fooK1hrOea/r6iGb5OGKybUO5fhs5xB2kNIn9Axdur+xiYJCMhzRRWwE6 g==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640190" X-IronPort-AV: E=Sophos;i="5.96,300,1665471600"; d="scan'208";a="320640190" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:07:00 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529147" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529147" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:06:54 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 15/19] iommu/s390: Add set_platform_dma_ops callback Date: Wed, 4 Jan 2023 20:57:21 +0800 Message-Id: <20230104125725.271850-16-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097558348110172?= X-GMAIL-MSGID: =?utf-8?q?1754097558348110172?= This IOMMU driver doesn't support default domain. Add the implementation of set_platform_dma_ops callback so that the IOMMU core could return the DMA control. With the set_platform_dma implemented, there's no need for detach_dev. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/s390-iommu.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/iommu/s390-iommu.c b/drivers/iommu/s390-iommu.c index ed33c6cce083..5591dab99446 100644 --- a/drivers/iommu/s390-iommu.c +++ b/drivers/iommu/s390-iommu.c @@ -144,13 +144,10 @@ static int s390_iommu_attach_device(struct iommu_domain *domain, return 0; } -static void s390_iommu_detach_device(struct iommu_domain *domain, - struct device *dev) +static void s390_iommu_set_platform_dma(struct device *dev) { struct zpci_dev *zdev = to_zpci_dev(dev); - WARN_ON(zdev->s390_domain != to_s390_domain(domain)); - __s390_iommu_detach_device(zdev); zpci_dma_init_device(zdev); } @@ -435,11 +432,11 @@ static const struct iommu_ops s390_iommu_ops = { .probe_device = s390_iommu_probe_device, .release_device = s390_iommu_release_device, .device_group = generic_device_group, + .set_platform_dma_ops = s390_iommu_set_platform_dma, .pgsize_bitmap = SZ_4K, .get_resv_regions = s390_iommu_get_resv_regions, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = s390_iommu_attach_device, - .detach_dev = s390_iommu_detach_device, .map_pages = s390_iommu_map_pages, .unmap_pages = s390_iommu_unmap_pages, .flush_iotlb_all = s390_iommu_flush_iotlb_all, From patchwork Wed Jan 4 12:57:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38913 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5135390wrt; Wed, 4 Jan 2023 05:12:09 -0800 (PST) X-Google-Smtp-Source: AMrXdXudPqbYuDJT/fySr91VScCC1ZKZafTASsJbQow3PDr83o03SNwv1IPq3TV435MQ5MU+8jlc X-Received: by 2002:a17:906:308b:b0:7ae:cda1:76d0 with SMTP id 11-20020a170906308b00b007aecda176d0mr39120746ejv.15.1672837929658; Wed, 04 Jan 2023 05:12:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672837929; cv=none; d=google.com; s=arc-20160816; b=fX1bFxaZwAGVn2XeNwREuMBZsYG8kOS1pzE3V1D1mUNRfLqvCLVXOq4NzW4irOmQRH 86XZU38LYn9i/Q2KgqN71E+fwEmPoroUOMajBrSMMhTMWZA8rqub/f51MDzkmEjR8t5D 367e1OLxbagnK6lYA88/nGGBwG2Q2EbUeanJVgb5yXizfIpR5ZeN1GMoeslwFB9LCeQ6 3dQn3fYptfzMBkOwW73YZDV75kis2n/x3UnOvZEuu/NUg9FtqNyEGopRG/StKNEHG1pJ a4JNqfiU+dGDVKNgJvZ5T/4lMRwmar1nElZpn/awtNa46lsIrsL83iwFSrnHikbiVnuF 3YfQ== 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; bh=k4JsrtVNApeGintkdJThbjhKhAnHnCkgdHzhn8eXcrw=; b=Z6G9352XF1xkDdsItQjjf4dRYBkHn8EA2OVfKNeO/aUUh5xPnzKZTPUq4k8ZktCHoX 5QIKkTXt5GAKJ8Wh5j8zGNz8HHvk1iGZciyHGWSFo0PZStxZIlTdG7R+jbYd2VFEJNBD CBOhr7faz9vMprDI8ekctTq1+zAFL/iA8DxRHzoHomuVltb0UTv9xqvgzwxj9rOItj8q 1TYPxEtYh7bSk3T8kIotPwzolARZ5GVy/cHypglNoKFi4Bs14IcJ98Dblb11UeGGdKpU TaTC9UzNEeF6lKCAjtFd2a9xRb8CYYizAbE3e8qc289mHPYwiepnJ6xVkD0tN7wlmMxz w5GQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=KGG6mN+8; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id xa8-20020a170906fd8800b007b8b7da6480si28959667ejb.659.2023.01.04.05.11.45; Wed, 04 Jan 2023 05:12:09 -0800 (PST) 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=@intel.com header.s=Intel header.b=KGG6mN+8; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239315AbjADNI5 (ORCPT + 99 others); Wed, 4 Jan 2023 08:08:57 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44320 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239321AbjADNIV (ORCPT ); Wed, 4 Jan 2023 08:08:21 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5427A3E0F7 for ; Wed, 4 Jan 2023 05:07:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837652; x=1704373652; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Xleto1bNcJbkoJR+rItuVcszZ5LEAV28VIm/LQTaL2s=; b=KGG6mN+8e5MPITVi6+TTaycglDqIk8rdmnQBtz5eyjFryRSn0WYo7YPO mwyLCmLTSCSnKR5s1Bfof9kcdLOpqF02OpkOqN4t/YH5PmGZoMlZfMGTb GCjsbtx0EOqVn+g2Y2IRyCn25BS13P9SZajq7cgOgZ0s4DlZhzhwpN6bn IzHVvV9aBTy5tQUtkYTfhTp8qddDZjl3P/hEQ6AoCv7Ilxv5PtpEhx/nN YoUdIeCq3nsxHtj/i7Bwk71jInHEq4N7F/ZzpSvBGS19wai5SsJG0Cpkq 6gkwvwkXWDYKvQfJFsf/ydyxawbq8VOrCcVSaW8dkVpHqb046Kly6/ZC6 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640234" X-IronPort-AV: E=Sophos;i="5.96,300,1665471600"; d="scan'208";a="320640234" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:07:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529180" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529180" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:07:00 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 16/19] iommu/gart: Add set_platform_dma_ops callback Date: Wed, 4 Jan 2023 20:57:22 +0800 Message-Id: <20230104125725.271850-17-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754097704900021981?= X-GMAIL-MSGID: =?utf-8?q?1754097704900021981?= This IOMMU driver doesn't support default domain. Add the implementation of set_platform_dma_ops callback so that the IOMMU core could return the DMA control. With set_platform_dma_ops implemented, there's no need for detach_dev. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/tegra-gart.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/iommu/tegra-gart.c b/drivers/iommu/tegra-gart.c index ed53279d1106..a482ff838b53 100644 --- a/drivers/iommu/tegra-gart.c +++ b/drivers/iommu/tegra-gart.c @@ -124,9 +124,9 @@ static int gart_iommu_attach_dev(struct iommu_domain *domain, return ret; } -static void gart_iommu_detach_dev(struct iommu_domain *domain, - struct device *dev) +static void gart_iommu_set_platform_dma(struct device *dev) { + struct iommu_domain *domain = iommu_get_domain_for_dev(dev); struct gart_device *gart = gart_handle; spin_lock(&gart->dom_lock); @@ -270,11 +270,11 @@ static const struct iommu_ops gart_iommu_ops = { .domain_alloc = gart_iommu_domain_alloc, .probe_device = gart_iommu_probe_device, .device_group = generic_device_group, + .set_platform_dma_ops = gart_iommu_set_platform_dma, .pgsize_bitmap = GART_IOMMU_PGSIZES, .of_xlate = gart_iommu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = gart_iommu_attach_dev, - .detach_dev = gart_iommu_detach_dev, .map = gart_iommu_map, .unmap = gart_iommu_unmap, .iova_to_phys = gart_iommu_iova_to_phys, From patchwork Wed Jan 4 12:57:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38916 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5139021wrt; Wed, 4 Jan 2023 05:19:27 -0800 (PST) X-Google-Smtp-Source: AMrXdXuxbVVgabqBZC2vW7LTQpgOa9y/O1n8VUhbU+/4DZpH481QHOdWT7j9pFPJfoCZKsxPT3jA X-Received: by 2002:a05:6402:220b:b0:475:32d2:74a5 with SMTP id cq11-20020a056402220b00b0047532d274a5mr37154831edb.42.1672838367459; Wed, 04 Jan 2023 05:19:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672838367; cv=none; d=google.com; s=arc-20160816; b=CqPFhZ/OnBIwzdDVFvKV+wHulTUQ1KujZsOZ1e1JeP248KaZCBD1bvo7RBDc3pORaf tFSSaDdl4aANLiV28/tIvLT4Reqe/sgO66Pp3ddBOcr5zQlFdXo7fN5vA42L4UC0oZbL rICpqYmHO5LFdry2FzYdtTfxJ3y/QsrrxMjjfJD5YMrwUpPkwxOstFzY2qnD+OTEET7H Fh2Kvo6XChq41Jd2SO3WroKqYjPURYHIzPvgxI2iSKqSEUMBADBztr3OG4PNPqxqTSsf 4oyRzhzM+7uzJxoaGZhUctYQvdTnLG6nEzhccOQDwVpGiaA17fnfzHPiq0dreXr0ZOgO CcwA== 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; bh=jIv3fDEp3/nHBigape/rWZXFN7Epv/N1p9MNMbfuj+U=; b=AaXxVzAVRB1rge/tZfx2Rt7SmN6zFH49efcuJlCHAOQTFDrXsQ2yAFfCDZc7dVdZDY Z/U6O229nBSJ149UTQBw9jBDMOgJMrnApWNSIS1dKdw1v5gWeIhmae/qPLTe9SQVSRdU YL2xokIg2pdknaCnOZ3iCRJjdCVE5ccwEq7cqMd8DgWgFGpP4L+zLZ27ayOb0yH1QVf7 9bVwkhwQuofOCFADCc4gzABnucM7LrvMJSszsvReJ+L9Vs8RucvzehiHwbCaGQPgWjw7 F0Gag4yn8cMjIZgKt5lySuNe7qiCrp2+gyhPzM0Fa/2vK3FKON23x59FkS5JSUCCOnjO RXqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=BmCfGWe6; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i20-20020a0564020f1400b00482457d1e83si27005322eda.589.2023.01.04.05.19.03; Wed, 04 Jan 2023 05:19:27 -0800 (PST) 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=@intel.com header.s=Intel header.b=BmCfGWe6; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230087AbjADNL0 (ORCPT + 99 others); Wed, 4 Jan 2023 08:11:26 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45482 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239405AbjADNLC (ORCPT ); Wed, 4 Jan 2023 08:11:02 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E4CD63FA06 for ; Wed, 4 Jan 2023 05:09:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837751; x=1704373751; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=AeIus9biOgp1nN+2vk2ulQschotD0WiAc9w42SrZDaQ=; b=BmCfGWe6roZ9VQjwfD2pWwk7z9xacGfjYtpWeJtch18XmEp0uDRP5EPa J9MF6XBLqoNAF4fjBQMhdVX1xo0+1m4SavlE+KzJYPtUfzJQV8TuXM4Dm 4ZxViWrDTp9a2ndPqDq2Q+qU9vKz+h3A8gw5dRBp+tfjsSQt5YeJWoRLQ JPkCR5YXRuu15i8rw156EtdWm5p/Anepu/NFx5UZ0Lne+gXKrkrmt9Syz xgQ8kG+Z15EivIpv7d5Fd/1J5GW6q1KmjYtVswZJSYKaYWCtm3j2PJphG /r5miP8h3rxsKlI+p21LatD+wrY/kD/tYMuw058HYQwBXZTU1RD/zIbtf w==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640291" X-IronPort-AV: E=Sophos;i="5.96,300,1665471600"; d="scan'208";a="320640291" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:07:14 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529267" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529267" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:07:07 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 17/19] iommu/tegra: Add set_platform_dma_ops callback Date: Wed, 4 Jan 2023 20:57:23 +0800 Message-Id: <20230104125725.271850-18-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754098163781143799?= X-GMAIL-MSGID: =?utf-8?q?1754098163781143799?= This IOMMU driver doesn't support default domain. Add the implementation of set_platform_dma_ops callback so that the IOMMU core could return the DMA control. With the set_platform_dma_ops implemented, there's no need for detach_dev. Remove it to avoid dead code. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- drivers/iommu/tegra-smmu.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/iommu/tegra-smmu.c b/drivers/iommu/tegra-smmu.c index 5b1af40221ec..4c4ac22d5fb1 100644 --- a/drivers/iommu/tegra-smmu.c +++ b/drivers/iommu/tegra-smmu.c @@ -511,8 +511,9 @@ static int tegra_smmu_attach_dev(struct iommu_domain *domain, return err; } -static void tegra_smmu_detach_dev(struct iommu_domain *domain, struct device *dev) +static void tegra_smmu_set_platform_dma(struct device *dev) { + struct iommu_domain *domain = iommu_get_domain_for_dev(dev); struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); struct tegra_smmu_as *as = to_smmu_as(domain); struct tegra_smmu *smmu = as->smmu; @@ -965,11 +966,11 @@ static const struct iommu_ops tegra_smmu_ops = { .domain_alloc = tegra_smmu_domain_alloc, .probe_device = tegra_smmu_probe_device, .device_group = tegra_smmu_device_group, + .set_platform_dma_ops = tegra_smmu_set_platform_dma, .of_xlate = tegra_smmu_of_xlate, .pgsize_bitmap = SZ_4K, .default_domain_ops = &(const struct iommu_domain_ops) { .attach_dev = tegra_smmu_attach_dev, - .detach_dev = tegra_smmu_detach_dev, .map = tegra_smmu_map, .unmap = tegra_smmu_unmap, .iova_to_phys = tegra_smmu_iova_to_phys, From patchwork Wed Jan 4 12:57:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38918 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5139338wrt; Wed, 4 Jan 2023 05:20:17 -0800 (PST) X-Google-Smtp-Source: AMrXdXulIQgLfFUrFeu5knh1rCtCrGPIu9m22abUr3ZbHhFjzC/EkuowDRgO+rrO/RrAnJzRPmrS X-Received: by 2002:a17:907:c019:b0:7c0:b569:8efe with SMTP id ss25-20020a170907c01900b007c0b5698efemr38757027ejc.60.1672838416853; Wed, 04 Jan 2023 05:20:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672838416; cv=none; d=google.com; s=arc-20160816; b=mrfXRt1hG5Bx3pWYl9Zkg+y0AByio369ygbKLvKpb4PvoWioN9ta4B5g/q5sxsMEW0 Dn0bs4lRe8+h2Oc5Kq/OolaYPrNwRpBGaA6wzOXE9SK4o3TXzUswdIeX7NTUiQS8lVq3 Pkjc6ugfvtVZQv2A+DHhUixsyd/LXCuS1B1XBxLy7Rc3jl0vefQFLFTB2ngHSYZ+jfx2 eb0+Jwe8RYSpkTavGzzXQLUtbR7RTKntlKezQc4hg13GEcyjdJjOZerLyTJ4/WAr6XxR Q0/iXEYilkJaEka2h8eXRGxoEk1Si9J6+Sy+JRHA1EikXsyziHQ+ZFlsnZxz02tW07RQ +U8g== 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; bh=PMyfcXoqoyyU8yurHd19CYR+2J+werQyZ+959n92JDM=; b=vDR4I3OhwbweAyOt0n1RpvMW1ABOAf6SMkPJxrvO7aC+skptpjZXk1ZecanRZ84+SB julZfSZ33iw1jjcPxsTxoq+f/rD7kqllX2mtwLFhDnxXrwglmU0Fckdfa1Ps+ol6/Zbp eMlaEtA9Axfoty2N9K3AEkSv2X/KNu457+ALPYMggzihSSty3f637dLYqQ1pvxGAvv0w 0iOORBqCfYZFArp7EeHsTTaUaZncXCYx1a1J3G00j4JDbhqPxMR5SRmvEwc4dn9JUBAX wMnZ0FRzbINOqQ7rMydIFsiiZPg0xZim/NgYChqShepJQaew0S3IaVLatUMtPmWnGyIL BB1w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=OKT1ire+; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id dd21-20020a1709069b9500b0078def76da94si32351974ejc.437.2023.01.04.05.19.53; Wed, 04 Jan 2023 05:20:16 -0800 (PST) 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=@intel.com header.s=Intel header.b=OKT1ire+; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232753AbjADNLs (ORCPT + 99 others); Wed, 4 Jan 2023 08:11:48 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44928 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239444AbjADNLG (ORCPT ); Wed, 4 Jan 2023 08:11:06 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9846B395C8 for ; Wed, 4 Jan 2023 05:09:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837754; x=1704373754; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=etvQ4VuCYjgoc+S/bXFKsFRT2trDWdnEQJZuwIpkWNE=; b=OKT1ire+nXckr3/1b5FzlbgR+jtyRi7WInoKH0G6q+fNyux906jxNBln qBieaUiQ7UKWI2KRaja6Yu4vFPjAB7h4nMqHGNYLihixsFv2LkQus+Rvx QOzqLVz//I0MoRx2V3Z73EAmSAyTNMoEDVsQNfiQbIu6OjyJApAeY6DwP 2NJLHyNyBIw/AmGwfQK80VsCLFcaR++1ipdUGCbHj2cMySNoNRW9tdZh8 tqSH5D0FOWEW/UfhlE7RCzE0d4yoyCS/XbfXWjh7rORaIThLjLzNhXukx gqcIiQRw94JiaUio51YeEkxakIEBfU3iHB5iCvHGLzoijzTA+dOBGuean g==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640320" X-IronPort-AV: E=Sophos;i="5.96,300,1665471600"; d="scan'208";a="320640320" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:07:20 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529378" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529378" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:07:14 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 18/19] iommu: Remove deferred attach check from __iommu_detach_device() Date: Wed, 4 Jan 2023 20:57:24 +0800 Message-Id: <20230104125725.271850-19-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754098215732841295?= X-GMAIL-MSGID: =?utf-8?q?1754098215732841295?= From: Jason Gunthorpe At the current moment, __iommu_detach_device() is only called via call chains that are after the device driver is attached - eg via explicit attach APIs called by the device driver. Commit bd421264ed30 ("iommu: Fix deferred domain attachment") has removed deferred domain attachment check from __iommu_attach_device() path, so it should just unconditionally work in the __iommu_detach_device() path. It actually looks like a bug that we were blocking detach on these paths since the attach was unconditional and the caller is going to free the (probably) UNAMANGED domain once this returns. The only place we should be testing for deferred attach is during the initial point the dma device is linked to the group, and then again during the dma api calls. Signed-off-by: Jason Gunthorpe Signed-off-by: Lu Baolu --- include/linux/iommu.h | 2 ++ drivers/iommu/iommu.c | 70 ++++++++++++++++++++++--------------------- 2 files changed, 38 insertions(+), 34 deletions(-) diff --git a/include/linux/iommu.h b/include/linux/iommu.h index 7b3e3775b069..0d10566b3cb2 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -405,6 +405,7 @@ struct iommu_fault_param { * @iommu_dev: IOMMU device this device is linked to * @priv: IOMMU Driver private data * @max_pasids: number of PASIDs this device can consume + * @attach_deferred: the dma domain attachment is deferred * * TODO: migrate other per device data pointers under iommu_dev_data, e.g. * struct iommu_group *iommu_group; @@ -417,6 +418,7 @@ struct dev_iommu { struct iommu_device *iommu_dev; void *priv; u32 max_pasids; + u32 attach_deferred:1; }; int iommu_device_register(struct iommu_device *iommu, diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c index 4e35a9f94873..c7bd8663f1f5 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -371,6 +371,30 @@ static int __iommu_probe_device(struct device *dev, struct list_head *group_list return ret; } +static bool iommu_is_attach_deferred(struct device *dev) +{ + const struct iommu_ops *ops = dev_iommu_ops(dev); + + if (ops->is_attach_deferred) + return ops->is_attach_deferred(dev); + + return false; +} + +static int iommu_group_do_dma_first_attach(struct device *dev, void *data) +{ + struct iommu_domain *domain = data; + + lockdep_assert_held(&dev->iommu_group->mutex); + + if (iommu_is_attach_deferred(dev)) { + dev->iommu->attach_deferred = 1; + return 0; + } + + return __iommu_attach_device(domain, dev); +} + int iommu_probe_device(struct device *dev) { const struct iommu_ops *ops; @@ -401,7 +425,7 @@ int iommu_probe_device(struct device *dev) * attach the default domain. */ if (group->default_domain && !group->owner) { - ret = __iommu_attach_device(group->default_domain, dev); + ret = iommu_group_do_dma_first_attach(dev, group->default_domain); if (ret) { mutex_unlock(&group->mutex); iommu_group_put(group); @@ -947,16 +971,6 @@ static int iommu_create_device_direct_mappings(struct iommu_group *group, return ret; } -static bool iommu_is_attach_deferred(struct device *dev) -{ - const struct iommu_ops *ops = dev_iommu_ops(dev); - - if (ops->is_attach_deferred) - return ops->is_attach_deferred(dev); - - return false; -} - /** * iommu_group_add_device - add a device to an iommu group * @group: the group into which to add the device (reference should be held) @@ -1009,8 +1023,8 @@ int iommu_group_add_device(struct iommu_group *group, struct device *dev) mutex_lock(&group->mutex); list_add_tail(&device->list, &group->devices); - if (group->domain && !iommu_is_attach_deferred(dev)) - ret = __iommu_attach_device(group->domain, dev); + if (group->domain) + ret = iommu_group_do_dma_first_attach(dev, group->domain); mutex_unlock(&group->mutex); if (ret) goto err_put_group; @@ -1776,21 +1790,10 @@ static void probe_alloc_default_domain(struct bus_type *bus, } -static int iommu_group_do_dma_attach(struct device *dev, void *data) -{ - struct iommu_domain *domain = data; - int ret = 0; - - if (!iommu_is_attach_deferred(dev)) - ret = __iommu_attach_device(domain, dev); - - return ret; -} - -static int __iommu_group_dma_attach(struct iommu_group *group) +static int __iommu_group_dma_first_attach(struct iommu_group *group) { return __iommu_group_for_each_dev(group, group->default_domain, - iommu_group_do_dma_attach); + iommu_group_do_dma_first_attach); } static int iommu_group_do_probe_finalize(struct device *dev, void *data) @@ -1855,7 +1858,7 @@ int bus_iommu_probe(struct bus_type *bus) iommu_group_create_direct_mappings(group); - ret = __iommu_group_dma_attach(group); + ret = __iommu_group_dma_first_attach(group); mutex_unlock(&group->mutex); @@ -1987,9 +1990,11 @@ static int __iommu_attach_device(struct iommu_domain *domain, return -ENODEV; ret = domain->ops->attach_dev(domain, dev); - if (!ret) - trace_attach_device_to_domain(dev); - return ret; + if (ret) + return ret; + dev->iommu->attach_deferred = 0; + trace_attach_device_to_domain(dev); + return 0; } /** @@ -2034,7 +2039,7 @@ EXPORT_SYMBOL_GPL(iommu_attach_device); int iommu_deferred_attach(struct device *dev, struct iommu_domain *domain) { - if (iommu_is_attach_deferred(dev)) + if (dev->iommu && dev->iommu->attach_deferred) return __iommu_attach_device(domain, dev); return 0; @@ -2043,9 +2048,6 @@ int iommu_deferred_attach(struct device *dev, struct iommu_domain *domain) static void __iommu_detach_device(struct iommu_domain *domain, struct device *dev) { - if (iommu_is_attach_deferred(dev)) - return; - domain->ops->detach_dev(domain, dev); trace_detach_device_from_domain(dev); } From patchwork Wed Jan 4 12:57:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolu Lu X-Patchwork-Id: 38915 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp5138485wrt; Wed, 4 Jan 2023 05:18:17 -0800 (PST) X-Google-Smtp-Source: AMrXdXvZag2IQHobT5bBSc4uaVYpfEMEdxNZL6U1liEgzY9kNVGSLtQE5pvwY/ir9VskHNM/QROG X-Received: by 2002:a05:6402:2217:b0:48b:c8de:9d15 with SMTP id cq23-20020a056402221700b0048bc8de9d15mr13672038edb.1.1672838297006; Wed, 04 Jan 2023 05:18:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672838296; cv=none; d=google.com; s=arc-20160816; b=pGy/XbWfN7Bu5je3vWJZW1B/QVRhIcFrbxx6VEcrEREyw1eptkE6VGhc7ai8B9g2lu BTkuR37RMikUkUmneztRERBjnFspntYEBgE5HlpU4nEK8o+4wac6Xt5milrZ7chlXArL ST9Jsh7Sh0xq5mpQq6DHI94dCHY+IGz+q7Fp2m9H3QmmwZnlTFDrRTS+IPWmWPAMFoaq Gbz5ZzuLtvwH9ZWITUERRbSlpsl/YbvtumIjgAvxo4BSEw6ZKKEpQeKMO8B/DzX3xUy1 yjT40U3awcTBpMN4/wi6al30PPeAmclb7NE3cKOPI2iE8DUaOV/s6fM7j94ahywuXlQQ /41w== 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; bh=1XAnlxGMe2AZzMEqKYNKOyK9ehx0FlucnEt6lHR78b8=; b=MSNNSZOHH3cJpMO8jleOGN5QWcbX9j4d6G4vWHoCez9QJi5ZzW3sLXJiNOLqTwEG7S bdM6Rdqv28pbGedNM+sE1ugk/8SE1LsChSliSqrElKd3wvBYb2c+OKhVVS0p8o85dMy0 hvEFmJkIWV9a2xvn4Lg/p3SPRq+k21jq/dsd9TPMA4NWG7Y4QUb+cbRAMMTsbVHmMbXj eQL2i1/iXPWfdg1O8Hog6wC/RIFNZE3EOZIVhlXU4OyIgpy3yeNGGcnX1fFC2eaBQAf4 160YZIZImu10SUJ5cqG8rfRmbH2oannqtap0pGDpG5zJEI0oWmaF81/s1wpDwixPfDU0 GiLA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=hgZ3FoRP; 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=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id z11-20020a056402274b00b0045c93142111si34922511edd.70.2023.01.04.05.17.53; Wed, 04 Jan 2023 05:18:16 -0800 (PST) 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=@intel.com header.s=Intel header.b=hgZ3FoRP; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239392AbjADNMM (ORCPT + 99 others); Wed, 4 Jan 2023 08:12:12 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45508 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239445AbjADNLG (ORCPT ); Wed, 4 Jan 2023 08:11:06 -0500 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9A4CC3E0FA for ; Wed, 4 Jan 2023 05:09:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1672837754; x=1704373754; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=6JspMSxf4tOO5N5gZs/+2wzcZApAr4SYcbdCKphs0Zg=; b=hgZ3FoRPHtl0CywouVL0CTVU3nF7zVOAUxzcBfOytbH9zGfPZqjhjTR1 r+EUA25Oj/2Qj/czO+G1OjzdTX/VK2zgPlNOsuVznTiQtq0i97byRtRN/ 3LTQgv6VDXX4oyJTlA/4uhdT23WSQNFA9GPrm//kiNo9af1kdeK8usYoD Y/oJGTYeHXj9dkOTQzQ2tT9uNQGWw+1J+MDdJJclffK+OLw0lJ3jkAiIb utgMbF7I3HosGcLNUE8z7pRuftTdykT6sG8Gtd/bj4Nv/yj73RtzTxDGw 4mkaup7QPR04k2URRW7pa+lGY+DZRT/B7U4Gm6pSFtDSKTY+uaxUqGWvU A==; X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="320640359" X-IronPort-AV: E=Sophos;i="5.96,300,1665471600"; d="scan'208";a="320640359" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2023 05:07:28 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10579"; a="797529492" X-IronPort-AV: E=Sophos;i="5.96,299,1665471600"; d="scan'208";a="797529492" Received: from allen-box.sh.intel.com ([10.239.159.48]) by fmsmga001.fm.intel.com with ESMTP; 04 Jan 2023 05:07:20 -0800 From: Lu Baolu To: Joerg Roedel , Jason Gunthorpe , Christoph Hellwig , Kevin Tian , Will Deacon , Robin Murphy , Jean-Philippe Brucker Cc: Suravee Suthikulpanit , Hector Martin , Sven Peter , Rob Clark , Marek Szyprowski , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Yong Wu , Matthias Brugger , Heiko Stuebner , Matthew Rosato , Orson Zhai , Baolin Wang , Chunyan Zhang , Chen-Yu Tsai , Thierry Reding , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, Lu Baolu Subject: [PATCH v4 19/19] iommu: Remove detach_dev callback Date: Wed, 4 Jan 2023 20:57:25 +0800 Message-Id: <20230104125725.271850-20-baolu.lu@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230104125725.271850-1-baolu.lu@linux.intel.com> References: <20230104125725.271850-1-baolu.lu@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754098089819937345?= X-GMAIL-MSGID: =?utf-8?q?1754098089819937345?= The detach_dev callback of domain ops is not called in the IOMMU core. Remove this callback to avoid dead code. The trace event for detaching domain from device is removed accordingly. Signed-off-by: Lu Baolu Reviewed-by: Jason Gunthorpe --- include/linux/iommu.h | 2 -- include/trace/events/iommu.h | 7 ------- drivers/iommu/iommu-traces.c | 1 - drivers/iommu/iommu.c | 29 +++++------------------------ 4 files changed, 5 insertions(+), 34 deletions(-) diff --git a/include/linux/iommu.h b/include/linux/iommu.h index 0d10566b3cb2..a8063f26ff69 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -299,7 +299,6 @@ struct iommu_ops { * * EBUSY - device is attached to a domain and cannot be changed * * ENODEV - device specific errors, not able to be attached * * - treated as ENODEV by the caller. Use is discouraged - * @detach_dev: detach an iommu domain from a device * @set_dev_pasid: set an iommu domain to a pasid of device * @map: map a physically contiguous memory region to an iommu domain * @map_pages: map a physically contiguous set of pages of the same size to @@ -320,7 +319,6 @@ struct iommu_ops { */ struct iommu_domain_ops { int (*attach_dev)(struct iommu_domain *domain, struct device *dev); - void (*detach_dev)(struct iommu_domain *domain, struct device *dev); int (*set_dev_pasid)(struct iommu_domain *domain, struct device *dev, ioasid_t pasid); diff --git a/include/trace/events/iommu.h b/include/trace/events/iommu.h index 29096fe12623..70743db1fb75 100644 --- a/include/trace/events/iommu.h +++ b/include/trace/events/iommu.h @@ -76,13 +76,6 @@ DEFINE_EVENT(iommu_device_event, attach_device_to_domain, TP_ARGS(dev) ); -DEFINE_EVENT(iommu_device_event, detach_device_from_domain, - - TP_PROTO(struct device *dev), - - TP_ARGS(dev) -); - TRACE_EVENT(map, TP_PROTO(unsigned long iova, phys_addr_t paddr, size_t size), diff --git a/drivers/iommu/iommu-traces.c b/drivers/iommu/iommu-traces.c index 1e9ca7789de1..23416bf76df9 100644 --- a/drivers/iommu/iommu-traces.c +++ b/drivers/iommu/iommu-traces.c @@ -18,7 +18,6 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(remove_device_from_group); /* iommu_device_event */ EXPORT_TRACEPOINT_SYMBOL_GPL(attach_device_to_domain); -EXPORT_TRACEPOINT_SYMBOL_GPL(detach_device_from_domain); /* iommu_map_unmap */ EXPORT_TRACEPOINT_SYMBOL_GPL(map); diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c index c7bd8663f1f5..d2b3210170a8 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -2045,13 +2045,6 @@ int iommu_deferred_attach(struct device *dev, struct iommu_domain *domain) return 0; } -static void __iommu_detach_device(struct iommu_domain *domain, - struct device *dev) -{ - domain->ops->detach_dev(domain, dev); - trace_detach_device_from_domain(dev); -} - void iommu_detach_device(struct iommu_domain *domain, struct device *dev) { struct iommu_group *group; @@ -2156,15 +2149,6 @@ int iommu_attach_group(struct iommu_domain *domain, struct iommu_group *group) } EXPORT_SYMBOL_GPL(iommu_attach_group); -static int iommu_group_do_detach_device(struct device *dev, void *data) -{ - struct iommu_domain *domain = data; - - __iommu_detach_device(domain, dev); - - return 0; -} - static int iommu_group_do_set_platform_dma(struct device *dev, void *data) { const struct iommu_ops *ops = dev_iommu_ops(dev); @@ -2185,19 +2169,16 @@ static int __iommu_group_set_domain(struct iommu_group *group, return 0; /* - * New drivers should support default domains and so the detach_dev() op - * will never be called. Otherwise the NULL domain represents some + * New drivers should support default domains and so set_platform_dma() + * op will never be called. Otherwise the NULL domain represents some * platform specific behavior. */ if (!new_domain) { ret = __iommu_group_for_each_dev(group, NULL, iommu_group_do_set_platform_dma); - if (ret) { - if (WARN_ON(!group->domain->ops->detach_dev)) - return -EINVAL; - __iommu_group_for_each_dev(group, group->domain, - iommu_group_do_detach_device); - } + if (ret) + return ret; + group->domain = NULL; return 0; }