From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lee Jones Subject: Re: [PATCH v4 2/4] mfd: Add Samsung Exynos Low Power Audio Subsystem driver Date: Wed, 10 Aug 2016 12:19:18 +0100 Message-ID: <20160810111918.GS1581@dell> References: <1467738804-31460-1-git-send-email-s.nawrocki@samsung.com> <20160809150502.GQ5243@dell> <61d700f7-ef66-8278-54ea-8e6e2f1a029e@samsung.com> <20160809205031.GD1581@dell> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f53.google.com (mail-wm0-f53.google.com [74.125.82.53]) by alsa0.perex.cz (Postfix) with ESMTP id 9E268265B93 for ; Wed, 10 Aug 2016 13:17:50 +0200 (CEST) Received: by mail-wm0-f53.google.com with SMTP id q128so86734403wma.1 for ; Wed, 10 Aug 2016 04:17:50 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: Sylwester Nawrocki Cc: robh@kernel.org, alsa-devel@alsa-project.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, b.zolnierkie@samsung.com, linux-kernel@vger.kernel.org, inki.dae@samsung.com, broonie@kernel.org, Beomho Seo , ideal.song@samsung.com List-Id: alsa-devel@alsa-project.org T24gV2VkLCAxMCBBdWcgMjAxNiwgU3lsd2VzdGVyIE5hd3JvY2tpIHdyb3RlOgoKPiBPbiAwOC8w OS8yMDE2IDEwOjUwIFBNLCBMZWUgSm9uZXMgd3JvdGU6Cj4gPiBPbiBUdWUsIDA5IEF1ZyAyMDE2 LCBTeWx3ZXN0ZXIgTmF3cm9ja2kgd3JvdGU6Cj4gPiAKPiA+PiA+IE9uIDA4LzA5LzIwMTYgMDU6 MDUgUE0sIExlZSBKb25lcyB3cm90ZToKPiA+Pj4+ID4gPj4gK3N0YXRpYyBTSU1QTEVfREVWX1BN X09QUyhscGFzc19wbV9vcHMsIGV4eW5vc19scGFzc19zdXNwZW5kLAo+ID4+Pj4+ID4gPj4gPiAr CQkJCQlleHlub3NfbHBhc3NfcmVzdW1lKTsKPiA+Pj4gPiA+IFB1dCB0aGlzIHVwIGJ5IHRoZSBQ TSBmdW5jdGlvbnMuCj4gPj4gPiAKPiA+PiA+IFNvcnJ5LCBJIGRvbid0IHVuZGVyc3RhbmQgdGhp cyBjb21tZW50LCB3aGljaCBQTSBmdW5jdGlvbnMgZG8geW91Cj4gPj4gPiBtZWFuIGV4YWN0bHk/ Cj4gPiAqX3N1c3BlbmQgYW5kICpfcmVzdW1lLiAgUE0gPT0gUG93ZXIgTWFuYWdlbWVudC4KPiA+ IAo+ID4gWW91IGFsc28gbmVlZCB0byBwbGFjZSB0aGUgZnVuY3Rpb25zIGluIHNpZGUgc29tZSBD T05GSUdfUE1fU0xFRVAKPiA+IGd1YXJkcy4gIEdyZXAgYXJvdW5kLCB5b3UnbGwgc2VlIHdoYXQg SSBtZWFuLgo+IAo+IE9LLCBidXQgY291bGRuJ3Qgd2UganVzdCBsZWF2ZSBpdCB3aXRoIHRoYXQg U0lNUExFX0RFVl9QTV9PUFMoKQo+IG1hY3JvPyAgSXQgc2F2ZXMgdXMgYW4gI2lmZGVmIHVnbGlu ZXNzIGFuZCBpZiBJIGFjdHVhbGx5IGdyZXAKPiBkcml2ZXJzL21mZCBtb3N0IG9mIHRoZSBkcml2 ZXJzIHVzZSBlaXRoZXIgU0lNUExFX0RFVl9QTV9PUFMoKSBvcgo+IFNFVF9TWVNURU1fU0xFRVBf UE1fT1BTLiBBcmUgeW91IGFza2luZyBtZSB0byBjaGFuZ2UgdGhlIGFib3ZlIHRvOgo+IAo+IHN0 YXRpYyBjb25zdCBzdHJ1Y3QgZGV2X3BtX29wcyBleHlub3NfbHBhc3NfcG1fb3BzID0gewo+ICNp ZmRlZiBDT05GSUdfUE1fU0xFRVAKPiAJLnN1c3BlbmQgPSBleHlub3NfbHBhc3Nfc3VzcGVuZCwK PiAJLnJlc3VtZSA9IGV4eW5vc19scGFzc19yZXN1bWUsCj4gCS5mcmVlemUgPSBleHlub3NfbHBh c3Nfc3VzcGVuZCwKPiAJLnRoYXcgPSBleHlub3NfbHBhc3NfcmVzdW1lLAo+IAkucG93ZXJvZmYg PSBleHlub3NfbHBhc3Nfc3VzcGVuZCwKPiAJLnJlc3RvcmUgPSBleHlub3NfbHBhc3NfcmVzdW1l LAo+ICNlbmRpZgo+IH0KPiAKPiBvciBwZXJoYXBzCj4gCj4gc3RhdGljIGNvbnN0IHN0cnVjdCBk ZXZfcG1fb3BzIGV4eW5vc19scGFzc19wbV9vcHMgPSB7Cj4gCVNFVF9TWVNURU1fU0xFRVBfUE1f T1BTKGV4eW5vc19scGFzc19zdXNwZW5kLCBleHlub3NfbHBhc3NfcmVzdW1lKQo+IH0KPiAKPiA/ CgpOb3QgbGlrZSB0aGF0LiAgR3JlcCAnZHJpdmVycy9tZmQnIGZvciAiQ09ORklHX1BNX1NMRUVQ IiBhcwpzdWdnZXN0ZWQuICBZb3Ugd2lsbCBmaW5kIHRoYXQgdGhlIGFjdHVhbCAqX3N1c3BlbmQg YW5kICpfcmVzdW1lCmZ1bmN0aW9ucyBhcmUgZ3VhcmRlZCBpbiBvcmRlciB0byBzYXZlIHNwYWNl LgoKPiBJIGFncmVlIGFib3V0IHRoZSBDT05GSUdfUE1fU0xFRVAgZ3VhcmRzLiAgVGhlcmUgaXMg dmVyeSBsaXR0bGUKPiBjaGFuY2UgdGhvdWdoIHRoZSBMUEFTUyBkcml2ZXIgd2lsbCBldmVyIGJl IHVzZWQgd2l0aAo+IENPTkZJR19QTV9TTEVFUCBkaXNhYmxlZC4gSG93IGFib3V0IGFkZGluZyBf X21heWJlX3VudXNlZCBhdHRyaWJ1dGUKPiB0byB0aGUgKl9zdXNwZW5kLypfcmVzdW1lIGZ1bmN0 aW9ucyB0aGVuPyAgSSBjYW4gc2VlIHRoaXMgcGF0dGVybgo+IHVzZWQgYWxyZWFkeSBpbiBkcml2 ZXJzL21mZC4KCkl0J3MgbW9yZSBjb21tb24gcHJhY3RpY2UgdG8gdXNlIENPTkZJR19QTV9TTEVF UDoKCiQgZ2l0IGdyZXAgX19tYXliZV91bnVzZWQgLS0gZHJpdmVycy9tZmQvIHwgd2MgLWwKNwok IGdpdCBncmVwIENPTkZJR19QTV9TTEVFUCAtLSBkcml2ZXJzL21mZC8gfCB3YyAtbAozMQoKLS0g CkxlZSBKb25lcwpMaW5hcm8gU1RNaWNyb2VsZWN0cm9uaWNzIExhbmRpbmcgVGVhbSBMZWFkCkxp bmFyby5vcmcg4pSCIE9wZW4gc291cmNlIHNvZnR3YXJlIGZvciBBUk0gU29DcwpGb2xsb3cgTGlu YXJvOiBGYWNlYm9vayB8IFR3aXR0ZXIgfCBCbG9nCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkFsc2EtZGV2ZWwgbWFpbGluZyBsaXN0CkFsc2EtZGV2ZWxA YWxzYS1wcm9qZWN0Lm9yZwpodHRwOi8vbWFpbG1hbi5hbHNhLXByb2plY3Qub3JnL21haWxtYW4v bGlzdGluZm8vYWxzYS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752923AbcHJSJF (ORCPT ); Wed, 10 Aug 2016 14:09:05 -0400 Received: from mail-wm0-f46.google.com ([74.125.82.46]:35613 "EHLO mail-wm0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751839AbcHJSJC (ORCPT ); Wed, 10 Aug 2016 14:09:02 -0400 Date: Wed, 10 Aug 2016 12:19:18 +0100 From: Lee Jones To: Sylwester Nawrocki Cc: broonie@kernel.org, robh@kernel.org, alsa-devel@alsa-project.org, devicetree@vger.kernel.org, ideal.song@samsung.com, inki.dae@samsung.com, b.zolnierkie@samsung.com, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, Beomho Seo Subject: Re: [PATCH v4 2/4] mfd: Add Samsung Exynos Low Power Audio Subsystem driver Message-ID: <20160810111918.GS1581@dell> References: <1467738804-31460-1-git-send-email-s.nawrocki@samsung.com> <20160809150502.GQ5243@dell> <61d700f7-ef66-8278-54ea-8e6e2f1a029e@samsung.com> <20160809205031.GD1581@dell> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.6.2 (2016-07-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 10 Aug 2016, Sylwester Nawrocki wrote: > On 08/09/2016 10:50 PM, Lee Jones wrote: > > On Tue, 09 Aug 2016, Sylwester Nawrocki wrote: > > > >> > On 08/09/2016 05:05 PM, Lee Jones wrote: > >>>> > >> +static SIMPLE_DEV_PM_OPS(lpass_pm_ops, exynos_lpass_suspend, > >>>>> > >> > + exynos_lpass_resume); > >>> > > Put this up by the PM functions. > >> > > >> > Sorry, I don't understand this comment, which PM functions do you > >> > mean exactly? > > *_suspend and *_resume. PM == Power Management. > > > > You also need to place the functions in side some CONFIG_PM_SLEEP > > guards. Grep around, you'll see what I mean. > > OK, but couldn't we just leave it with that SIMPLE_DEV_PM_OPS() > macro? It saves us an #ifdef ugliness and if I actually grep > drivers/mfd most of the drivers use either SIMPLE_DEV_PM_OPS() or > SET_SYSTEM_SLEEP_PM_OPS. Are you asking me to change the above to: > > static const struct dev_pm_ops exynos_lpass_pm_ops = { > #ifdef CONFIG_PM_SLEEP > .suspend = exynos_lpass_suspend, > .resume = exynos_lpass_resume, > .freeze = exynos_lpass_suspend, > .thaw = exynos_lpass_resume, > .poweroff = exynos_lpass_suspend, > .restore = exynos_lpass_resume, > #endif > } > > or perhaps > > static const struct dev_pm_ops exynos_lpass_pm_ops = { > SET_SYSTEM_SLEEP_PM_OPS(exynos_lpass_suspend, exynos_lpass_resume) > } > > ? Not like that. Grep 'drivers/mfd' for "CONFIG_PM_SLEEP" as suggested. You will find that the actual *_suspend and *_resume functions are guarded in order to save space. > I agree about the CONFIG_PM_SLEEP guards. There is very little > chance though the LPASS driver will ever be used with > CONFIG_PM_SLEEP disabled. How about adding __maybe_unused attribute > to the *_suspend/*_resume functions then? I can see this pattern > used already in drivers/mfd. It's more common practice to use CONFIG_PM_SLEEP: $ git grep __maybe_unused -- drivers/mfd/ | wc -l 7 $ git grep CONFIG_PM_SLEEP -- drivers/mfd/ | wc -l 31 -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog