Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp2190927ybf; Mon, 2 Mar 2020 03:55:15 -0800 (PST) X-Google-Smtp-Source: APXvYqx6GPpQ8gq0paRiE+o7Aw05W63ZPgIaHJcyQUzb0uK6GyO3bemQeRGp0I+KpSai5MlDtP+j X-Received: by 2002:a9d:6452:: with SMTP id m18mr12494226otl.366.1583150115490; Mon, 02 Mar 2020 03:55:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583150115; cv=none; d=google.com; s=arc-20160816; b=qA4Q+OpRwUHBp9a22eXHCa+JDQFmeMJZ0Ol81mXc7To6/I+mZL3OmNbIsA35K5CVXJ edK+V9js+nEWOlielI+3UE1ph78yXLzrZ5Ot60vO6mXIj2F/ZRsIHw038LBuquOxMw/P box6GL1m3oUtoVafHm7J2DYdK9JqTEfgk3ouxsWs+qDFSvQaqN8Tkzgx6V6xZnz4u7tw qCZrkx0fSCTFJavevRK5ZxyRl+mIMjgCtyBnDneZc09+IbM9VhWFX4Bz/ZJL5wyrKoy7 UVHcz30Rc69hRxGErXcQpmrVGOjbbxrBM/c+SHAmQYAGT8FuZHWOovGuZ3bla9UIzbFK cO+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:references:cc:to:from:subject:dkim-signature; bh=r1oFGQAljQ37WL7mkb3z3+k9czKzVZLG9ut5lfbWRS0=; b=ZKTx6cWY5P151GPUP56LstX0tPI7qCdSGgFTL4jNPx9g8xXvCOBHsrhGy0runT/W0W RGnvk3O3lsQ1VI/rEjB5B8+1LHWF7Iu+UMwkwOhYNFPn3O1lht1j0cFD0SVXYogoc60b ThomExvuimIiUnJtLT1O/D7MKSMvBkuP5NVC648Z66d70WZ/KG7qbfvPucb3ilxJR1Pc 4HrCngMjgygADHDeWjRLIR395ZghkltG8YasfCl+SagtP/14D64iShbZRheR7uDnf0uD 9+8Ol907wtTbAwVcqNhKBJ+hg/9uFizargzC+izkuGiHzPH3hWUKG1PxPP8iczYIIUFK Ftpg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=ZyDJyjbF; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v81si5515283oia.114.2020.03.02.03.55.03; Mon, 02 Mar 2020 03:55:15 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=ZyDJyjbF; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727799AbgCBLyE (ORCPT + 99 others); Mon, 2 Mar 2020 06:54:04 -0500 Received: from lelv0143.ext.ti.com ([198.47.23.248]:49236 "EHLO lelv0143.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727485AbgCBLyE (ORCPT ); Mon, 2 Mar 2020 06:54:04 -0500 Received: from lelv0266.itg.ti.com ([10.180.67.225]) by lelv0143.ext.ti.com (8.15.2/8.15.2) with ESMTP id 022BrpRx069790; Mon, 2 Mar 2020 05:53:51 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1583150031; bh=r1oFGQAljQ37WL7mkb3z3+k9czKzVZLG9ut5lfbWRS0=; h=Subject:From:To:CC:References:Date:In-Reply-To; b=ZyDJyjbFdtj+c7m1/sKMjH6zESrVG3Jrexn1gXjkpBtce83pmyl2gfvaXV/YwZfLH inh6NIM0A0p1DMJU61NPYukioclBBCbqpdbfVJhg+iwktZo4EQuvhqqYA9+TUB/XiJ VFiZNPGcBDKwugudEEuzzaA0hWdX7L3lUaFL6sfU= Received: from DLEE113.ent.ti.com (dlee113.ent.ti.com [157.170.170.24]) by lelv0266.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 022Brpmn110675 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Mon, 2 Mar 2020 05:53:51 -0600 Received: from DLEE110.ent.ti.com (157.170.170.21) by DLEE113.ent.ti.com (157.170.170.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1847.3; Mon, 2 Mar 2020 05:53:51 -0600 Received: from lelv0326.itg.ti.com (10.180.67.84) by DLEE110.ent.ti.com (157.170.170.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1847.3 via Frontend Transport; Mon, 2 Mar 2020 05:53:51 -0600 Received: from [192.168.2.6] (ileax41-snat.itg.ti.com [10.172.224.153]) by lelv0326.itg.ti.com (8.15.2/8.15.2) with ESMTP id 022Brn1F101010; Mon, 2 Mar 2020 05:53:50 -0600 Subject: Re: [PATCH v4 1/2] dmaengine: Add basic debugfs support From: Peter Ujfalusi To: Vinod Koul CC: , , , References: <20200228130747.22905-1-peter.ujfalusi@ti.com> <20200228130747.22905-2-peter.ujfalusi@ti.com> <20200302071146.GE4148@vkoul-mobl> <7b4f244d-0855-f979-414d-e2d3cb0f0c2f@ti.com> Message-ID: Date: Mon, 2 Mar 2020 13:53:52 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 In-Reply-To: <7b4f244d-0855-f979-414d-e2d3cb0f0c2f@ti.com> Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 8bit X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/03/2020 12.28, Peter Ujfalusi wrote: > Hi Vinod, > > On 02/03/2020 9.11, Vinod Koul wrote: >>> diff --git a/drivers/dma/dmaengine.h b/drivers/dma/dmaengine.h >>> index e8a320c9e57c..72cd7fe33638 100644 >>> --- a/drivers/dma/dmaengine.h >>> +++ b/drivers/dma/dmaengine.h >>> @@ -182,4 +182,10 @@ dmaengine_desc_callback_valid(struct dmaengine_desc_callback *cb) >>> struct dma_chan *dma_get_slave_channel(struct dma_chan *chan); >>> struct dma_chan *dma_get_any_slave_channel(struct dma_device *device); >>> >>> +#ifdef CONFIG_DEBUG_FS >>> +#include >>> + >>> +struct dentry *dmaengine_get_debugfs_root(void); >> >> this needs to have an else defined with NULL return so that we dont >> force users to wrap the code under CONFIG_DEBUG_FS.. > > Drivers would anyways should have their debugfs related code wrapped > within ifdef. There is no point of having the code complied when it can > not be used (no debugfs support). > > But I can add the else case if we really want to: > > #ifdef CONFIG_DEBUG_FS > #include > > struct dentry *dmaengine_get_debugfs_root(void); > > #else > struct dentry; > static inline struct dentry *dmaengine_get_debugfs_root(void) > { > return NULL; > } > #endif /* CONFIG_DEBUG_FS */ It might be even better if the core creates directories for the dma controllers in dma_async_device_register() and removes the whole directory in dma_async_device_unregister() Then drivers can get their per device root via: #ifdef CONFIG_DEBUG_FS static inline struct dentry * dmaengine_get_debugfs_root(struct dma_device *dma_dev) { return dma_dev->dbg_dev_root; } #else struct dentry; static inline struct dentry * dmaengine_get_debugfs_root(struct dma_device *dma_dev) { return NULL; } #endif /* CONFIG_DEBUG_FS */ - Péter Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki