From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.3 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 53DFFC4727C for ; Wed, 30 Sep 2020 16:25:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 071DB20674 for ; Wed, 30 Sep 2020 16:25:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="T+KQ1Wug" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725860AbgI3QZp (ORCPT ); Wed, 30 Sep 2020 12:25:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51114 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725355AbgI3QZp (ORCPT ); Wed, 30 Sep 2020 12:25:45 -0400 Received: from mail-lj1-x241.google.com (mail-lj1-x241.google.com [IPv6:2a00:1450:4864:20::241]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E4AEEC061755; Wed, 30 Sep 2020 09:25:44 -0700 (PDT) Received: by mail-lj1-x241.google.com with SMTP id c2so2108720ljj.12; Wed, 30 Sep 2020 09:25:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=eyUZYRPbpEe8Xucnlf6VT0i7AdXH7hbbrA44nxtiGcs=; b=T+KQ1WugVPRaX8Oz2opiwH3BBdNvtzqut2uC9HwY8ZKQH/OmXc2yqrDJ4mB3coJAur NYbu4kQe85gxMWot76j1r6+IjNXXUylNt0TuJJWVTrO2yNDkFE7HmU+Y22Uw72axKXEx xS59j2a+4HCVNkrGQugCvUV3WQmasSY8kUCskOBGhvtz8893s9eHZtjtWUipzQ02+VF8 V5m4WVZR3DybUuEwvmHnbCQyy3OelFRNwnfZKCa5Ve2Y4/jfrOAxtYQ5MyhxJRoTsudS h3Tl3lEzQaPCqSm6fiz8mLDFejnCcoYVmO3RRyvLmajHEMAxBaSS1rUBxZZZFQFnfgsM VXyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=eyUZYRPbpEe8Xucnlf6VT0i7AdXH7hbbrA44nxtiGcs=; b=qBd1t95gFy8USOuoiwhRBiYAo+uXl70TCjRFaMn0KfX/ZH02Nf7pSD0zh9J8avBVIm FQD2Zsu2JYwinhdFIAjp36J+yLfTiJBmphezC9eU8OZ0pxIUiRS8TAT0iPBXJ9EFsjgb yozy2+3VI169b+o6CBw48CMIBd/2H7Pe+ij5lGUF5/jtvV8FBke3pRrnVIA7s3eCYxhz 1KWZVw5bE9tO7UMz/3E8tIWLTGSGNXFeoXYGMPFVzvHCHwiNAWaEw47xapSAM5sdKZs6 rnPzNacZcHAraJolVfQGUrYYveZLJ1nXYW/IKfTS3S+BtQMIRKoMwwicNOII61BNUJj2 Xo3w== X-Gm-Message-State: AOAM530j/dvgJSvnRaS9hbDKvZxi6Ec2BfKRhkUMBmEy6Wlj6qXZoWHa Rx1iPISoS56IB14VLyfDhalnISkZRQY= X-Google-Smtp-Source: ABdhPJzISBhhY0DYwhpMSG3iAvAG8GJXBj4u1poszj5WLUWEX2TwbwUe1hDFPGPXltlCSMgrEb76BQ== X-Received: by 2002:a2e:b5d9:: with SMTP id g25mr1015028ljn.335.1601483143047; Wed, 30 Sep 2020 09:25:43 -0700 (PDT) Received: from [192.168.2.145] (109-252-170-211.dynamic.spd-mgts.ru. [109.252.170.211]) by smtp.googlemail.com with ESMTPSA id l3sm243635lfc.34.2020.09.30.09.25.41 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 30 Sep 2020 09:25:42 -0700 (PDT) Subject: Re: [PATCH v3 2/3] iommu/tegra-smmu: Rework .probe_device and .attach_dev To: Thierry Reding Cc: Nicolin Chen , joro@8bytes.org, krzk@kernel.org, vdumpa@nvidia.com, jonathanh@nvidia.com, linux-tegra@vger.kernel.org, iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org References: <20200930084258.25493-1-nicoleotsuka@gmail.com> <20200930084258.25493-3-nicoleotsuka@gmail.com> <20200930153131.GB3833404@ulmo> <20200930160626.GD3833404@ulmo> From: Dmitry Osipenko Message-ID: Date: Wed, 30 Sep 2020 19:25:41 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <20200930160626.GD3833404@ulmo> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-tegra@vger.kernel.org 30.09.2020 19:06, Thierry Reding пишет: > On Wed, Sep 30, 2020 at 06:36:52PM +0300, Dmitry Osipenko wrote: >> I'... >>>> + struct tegra_mc *mc = devm_tegra_get_memory_controller(dev); >>>> + struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); >>> >>> It looks to me like the only reason why you need this new global API is >>> because PCI devices may not have a device tree node with a phandle to >>> the IOMMU. However, SMMU support for PCI will only be enabled if the >>> root complex has an iommus property, right? In that case, can't we >>> simply do something like this: >>> >>> if (dev_is_pci(dev)) >>> np = find_host_bridge(dev)->of_node; >>> else >>> np = dev->of_node; >>> >>> ? I'm not sure exactly what find_host_bridge() is called, but I'm pretty >>> sure that exists. >>> >>> Once we have that we can still iterate over the iommus property and do >>> not need to rely on this global variable. >> >> This sounds more complicated than the current variant. >> >> Secondly, I'm already about to use the new tegra_get_memory_controller() >> API for all the T20/30/124/210 EMC and devfreq drivers. > > Why do we need it there? They seem to work fine without it right now. All the Tegra30/124/210 EMC drivers are already duplicating that MC lookup code and only the recent T210 driver does it properly. > If it is required for new functionality, we can always make the dependent > on a DT reference via phandle without breaking any existing code. That's correct, it will be also needed for the new functionality as well, hence even more drivers will need to perform the MC lookup. I don't quite understand why you're asking for the phandle reference, it's absolutely not needed for the MC lookup and won't work for the older DTs if DT change will be needed. Please give a detailed explanation. From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.0 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DC1EDC4727E for ; Wed, 30 Sep 2020 16:25:48 +0000 (UTC) Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3BD8D20759 for ; Wed, 30 Sep 2020 16:25:48 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="T+KQ1Wug" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3BD8D20759 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=iommu-bounces@lists.linux-foundation.org Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id C77F485124; Wed, 30 Sep 2020 16:25:47 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id b-6jYApHpaXS; Wed, 30 Sep 2020 16:25:47 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by fraxinus.osuosl.org (Postfix) with ESMTP id 5226384FB2; Wed, 30 Sep 2020 16:25:47 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 3A4C8C0889; Wed, 30 Sep 2020 16:25:47 +0000 (UTC) Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 1287EC0051 for ; Wed, 30 Sep 2020 16:25:46 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id EC920857CB for ; Wed, 30 Sep 2020 16:25:45 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jaZs0Y8R8OTx for ; Wed, 30 Sep 2020 16:25:45 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-lj1-f194.google.com (mail-lj1-f194.google.com [209.85.208.194]) by whitealder.osuosl.org (Postfix) with ESMTPS id DD42D8553C for ; Wed, 30 Sep 2020 16:25:44 +0000 (UTC) Received: by mail-lj1-f194.google.com with SMTP id v23so2130402ljd.1 for ; Wed, 30 Sep 2020 09:25:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=eyUZYRPbpEe8Xucnlf6VT0i7AdXH7hbbrA44nxtiGcs=; b=T+KQ1WugVPRaX8Oz2opiwH3BBdNvtzqut2uC9HwY8ZKQH/OmXc2yqrDJ4mB3coJAur NYbu4kQe85gxMWot76j1r6+IjNXXUylNt0TuJJWVTrO2yNDkFE7HmU+Y22Uw72axKXEx xS59j2a+4HCVNkrGQugCvUV3WQmasSY8kUCskOBGhvtz8893s9eHZtjtWUipzQ02+VF8 V5m4WVZR3DybUuEwvmHnbCQyy3OelFRNwnfZKCa5Ve2Y4/jfrOAxtYQ5MyhxJRoTsudS h3Tl3lEzQaPCqSm6fiz8mLDFejnCcoYVmO3RRyvLmajHEMAxBaSS1rUBxZZZFQFnfgsM VXyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=eyUZYRPbpEe8Xucnlf6VT0i7AdXH7hbbrA44nxtiGcs=; b=MC4HgXeWARz0mm6aoqLe6s4jQEketWoWEeZpFM1ujKb5jPVo0UL8G/hyOECIfx0Yoa p21r6RortIT6uje2JTT/BxZ9nusLudzPpT12EVmpZCoTxQnc7QAerMRa3uXCqc2ga4Sa c+rq01q8y+5d7o/rKHEGAWnUTChRSe1CVr3JiRLn95MteaAraZVhp4nPEkrUZLhnRxUK /Lu9GKwQGu6sQwolL0CnnTtMNa+175jxDqgOEdw65kWO5VrqsKYE1WZEXl9e8KXnIHjM MpRMTB5O4bHCK5XAsqlZvVlnhXhTh88IW5P9DtWv9o49UuttOynhxyenh/DmWxrn0Nc+ DMHA== X-Gm-Message-State: AOAM531dwzhxC5xSt8/nU5O9GZ/wAPqSWSsa+vsCEqSLcSnsOL9fWHzc nJd+NyXEu2/qbOoe8B7Yaag= X-Google-Smtp-Source: ABdhPJzISBhhY0DYwhpMSG3iAvAG8GJXBj4u1poszj5WLUWEX2TwbwUe1hDFPGPXltlCSMgrEb76BQ== X-Received: by 2002:a2e:b5d9:: with SMTP id g25mr1015028ljn.335.1601483143047; Wed, 30 Sep 2020 09:25:43 -0700 (PDT) Received: from [192.168.2.145] (109-252-170-211.dynamic.spd-mgts.ru. [109.252.170.211]) by smtp.googlemail.com with ESMTPSA id l3sm243635lfc.34.2020.09.30.09.25.41 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 30 Sep 2020 09:25:42 -0700 (PDT) Subject: Re: [PATCH v3 2/3] iommu/tegra-smmu: Rework .probe_device and .attach_dev To: Thierry Reding References: <20200930084258.25493-1-nicoleotsuka@gmail.com> <20200930084258.25493-3-nicoleotsuka@gmail.com> <20200930153131.GB3833404@ulmo> <20200930160626.GD3833404@ulmo> From: Dmitry Osipenko Message-ID: Date: Wed, 30 Sep 2020 19:25:41 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <20200930160626.GD3833404@ulmo> Content-Language: en-US Cc: linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org, krzk@kernel.org, jonathanh@nvidia.com, linux-tegra@vger.kernel.org X-BeenThere: iommu@lists.linux-foundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Development issues for Linux IOMMU support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: iommu-bounces@lists.linux-foundation.org Sender: "iommu" MzAuMDkuMjAyMCAxOTowNiwgVGhpZXJyeSBSZWRpbmcg0L/QuNGI0LXRgjoKPiBPbiBXZWQsIFNl cCAzMCwgMjAyMCBhdCAwNjozNjo1MlBNICswMzAwLCBEbWl0cnkgT3NpcGVua28gd3JvdGU6Cj4+ ICBJJy4uLgo+Pj4+ICsJc3RydWN0IHRlZ3JhX21jICptYyA9IGRldm1fdGVncmFfZ2V0X21lbW9y eV9jb250cm9sbGVyKGRldik7Cj4+Pj4gKwlzdHJ1Y3QgaW9tbXVfZndzcGVjICpmd3NwZWMgPSBk ZXZfaW9tbXVfZndzcGVjX2dldChkZXYpOwo+Pj4KPj4+IEl0IGxvb2tzIHRvIG1lIGxpa2UgdGhl IG9ubHkgcmVhc29uIHdoeSB5b3UgbmVlZCB0aGlzIG5ldyBnbG9iYWwgQVBJIGlzCj4+PiBiZWNh dXNlIFBDSSBkZXZpY2VzIG1heSBub3QgaGF2ZSBhIGRldmljZSB0cmVlIG5vZGUgd2l0aCBhIHBo YW5kbGUgdG8KPj4+IHRoZSBJT01NVS4gSG93ZXZlciwgU01NVSBzdXBwb3J0IGZvciBQQ0kgd2ls bCBvbmx5IGJlIGVuYWJsZWQgaWYgdGhlCj4+PiByb290IGNvbXBsZXggaGFzIGFuIGlvbW11cyBw cm9wZXJ0eSwgcmlnaHQ/IEluIHRoYXQgY2FzZSwgY2FuJ3Qgd2UKPj4+IHNpbXBseSBkbyBzb21l dGhpbmcgbGlrZSB0aGlzOgo+Pj4KPj4+IAlpZiAoZGV2X2lzX3BjaShkZXYpKQo+Pj4gCQlucCA9 IGZpbmRfaG9zdF9icmlkZ2UoZGV2KS0+b2Zfbm9kZTsKPj4+IAllbHNlCj4+PiAJCW5wID0gZGV2 LT5vZl9ub2RlOwo+Pj4KPj4+ID8gSSdtIG5vdCBzdXJlIGV4YWN0bHkgd2hhdCBmaW5kX2hvc3Rf YnJpZGdlKCkgaXMgY2FsbGVkLCBidXQgSSdtIHByZXR0eQo+Pj4gc3VyZSB0aGF0IGV4aXN0cy4K Pj4+Cj4+PiBPbmNlIHdlIGhhdmUgdGhhdCB3ZSBjYW4gc3RpbGwgaXRlcmF0ZSBvdmVyIHRoZSBp b21tdXMgcHJvcGVydHkgYW5kIGRvCj4+PiBub3QgbmVlZCB0byByZWx5IG9uIHRoaXMgZ2xvYmFs IHZhcmlhYmxlLgo+Pgo+PiBUaGlzIHNvdW5kcyBtb3JlIGNvbXBsaWNhdGVkIHRoYW4gdGhlIGN1 cnJlbnQgdmFyaWFudC4KPj4KPj4gU2Vjb25kbHksIEknbSBhbHJlYWR5IGFib3V0IHRvIHVzZSB0 aGUgbmV3IHRlZ3JhX2dldF9tZW1vcnlfY29udHJvbGxlcigpCj4+IEFQSSBmb3IgYWxsIHRoZSBU MjAvMzAvMTI0LzIxMCBFTUMgYW5kIGRldmZyZXEgZHJpdmVycy4KPiAKPiBXaHkgZG8gd2UgbmVl ZCBpdCB0aGVyZT8gVGhleSBzZWVtIHRvIHdvcmsgZmluZSB3aXRob3V0IGl0IHJpZ2h0IG5vdy4K CkFsbCB0aGUgVGVncmEzMC8xMjQvMjEwIEVNQyBkcml2ZXJzIGFyZSBhbHJlYWR5IGR1cGxpY2F0 aW5nIHRoYXQgTUMKbG9va3VwIGNvZGUgYW5kIG9ubHkgdGhlIHJlY2VudCBUMjEwIGRyaXZlciBk b2VzIGl0IHByb3Blcmx5LgoKPiBJZiBpdCBpcyByZXF1aXJlZCBmb3IgbmV3IGZ1bmN0aW9uYWxp dHksIHdlIGNhbiBhbHdheXMgbWFrZSB0aGUgZGVwZW5kZW50Cj4gb24gYSBEVCByZWZlcmVuY2Ug dmlhIHBoYW5kbGUgd2l0aG91dCBicmVha2luZyBhbnkgZXhpc3RpbmcgY29kZS4KClRoYXQncyBj b3JyZWN0LCBpdCB3aWxsIGJlIGFsc28gbmVlZGVkIGZvciB0aGUgbmV3IGZ1bmN0aW9uYWxpdHkg YXMKd2VsbCwgaGVuY2UgZXZlbiBtb3JlIGRyaXZlcnMgd2lsbCBuZWVkIHRvIHBlcmZvcm0gdGhl IE1DIGxvb2t1cC4KCkkgZG9uJ3QgcXVpdGUgdW5kZXJzdGFuZCB3aHkgeW91J3JlIGFza2luZyBm b3IgdGhlIHBoYW5kbGUgcmVmZXJlbmNlLAppdCdzIGFic29sdXRlbHkgbm90IG5lZWRlZCBmb3Ig dGhlIE1DIGxvb2t1cCBhbmQgd29uJ3Qgd29yayBmb3IgdGhlCm9sZGVyIERUcyBpZiBEVCBjaGFu Z2Ugd2lsbCBiZSBuZWVkZWQuIFBsZWFzZSBnaXZlIGEgZGV0YWlsZWQgZXhwbGFuYXRpb24uCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmlvbW11IG1haWxp bmcgbGlzdAppb21tdUBsaXN0cy5saW51eC1mb3VuZGF0aW9uLm9yZwpodHRwczovL2xpc3RzLmxp bnV4Zm91bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0aW5mby9pb21tdQ==