From mboxrd@z Thu Jan 1 00:00:00 1970 From: Huan Wang Subject: Re: [PATCH] audio: sai: Add Power Management support Date: Thu, 30 Oct 2014 14:56:42 +0000 Message-ID: <1414680990680.12980@freescale.com> References: <1414552896-20797-1-git-send-email-b18965@freescale.com>, Mime-Version: 1.0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org To: Fabio Estevam Cc: "perex@perex.cz" , Takashi Iwai , Liam Girdwood , Mark Brown , "alsa-devel@alsa-project.org" , "linux-arm-kernel@lists.infradead.org" , linux-kernel , Nicolin Chen , "Li.Xiubo@freescale.com" List-Id: alsa-devel@alsa-project.org SGksIEZhYmlvLAoKUGxlYXNlIGFsd2F5cyBhZGQgdGhlIGRyaXZlciBtYWludGFpbmVycyAoWGl1 Ym8gTGkgYW5kIE5pY29saW4gQ2hlbikuCltBbGlzb24gV2FuZ10gb2ssIHRoYW5rcyBmb3IgeW91 ciByZW1pbmRlci4KCk9uIFdlZCwgT2N0IDI5LCAyMDE0IGF0IDE6MjEgQU0sIEFsaXNvbiBXYW5n IDxiMTg5NjVAZnJlZXNjYWxlLmNvbT4gd3JvdGU6Cgo+ICsjaWZkZWYgQ09ORklHX1BNX1NMRUVQ Cj4gK3N0YXRpYyBpbnQgZnNsX3NhaV9zdXNwZW5kKHN0cnVjdCBkZXZpY2UgKmRldikKPiArewo+ ICsgICAgICAgc3RydWN0IGZzbF9zYWkgKnNhaSA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+ICsK PiArICAgICAgIHJlZ2NhY2hlX2NhY2hlX29ubHkoc2FpLT5yZWdtYXAsIHRydWUpOwo+ICsgICAg ICAgcmVnY2FjaGVfbWFya19kaXJ0eShzYWktPnJlZ21hcCk7Cj4gKwo+ICsgICAgICAgcmV0dXJu IDA7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgZnNsX3NhaV9yZXN1bWUoc3RydWN0IGRldmljZSAq ZGV2KQo+ICt7Cj4gKyAgICAgICBzdHJ1Y3QgZnNsX3NhaSAqc2FpID0gZGV2X2dldF9kcnZkYXRh KGRldik7Cj4gKwo+ICsgICAgICAgLyogUmVzdG9yZSBhbGwgcmVnaXN0ZXJzICovCj4gKyAgICAg ICByZWdjYWNoZV9jYWNoZV9vbmx5KHNhaS0+cmVnbWFwLCBmYWxzZSk7Cj4gKyAgICAgICByZWdj YWNoZV9zeW5jKHNhaS0+cmVnbWFwKTsKPiArCj4gKyAgICAgICByZXR1cm4gMDsKPiArfTsKPiAr I2VuZGlmIC8qIENPTkZJR19QTV9TTEVFUCAqLwo+ICsKPiArc3RhdGljIGNvbnN0IHN0cnVjdCBk ZXZfcG1fb3BzIGZzbF9zYWlfcG0gPSB7Cj4gKyAgICAgICBTRVRfU1lTVEVNX1NMRUVQX1BNX09Q Uyhmc2xfc2FpX3N1c3BlbmQsIGZzbF9zYWlfcmVzdW1lKQoKVGhpcyBjb3VsZCBiZSBzaW1wbGlm aWVkIHRvOgpzdGF0aWMgU0lNUExFX0RFVl9QTV9PUFMoZnNsX3NhaV9wbSwgZnNsX3NhaV9zdXNw ZW5kLCBmc2xfc2FpX3Jlc3VtZSk7CltBbGlzb24gV2FuZ10gb2suCgpJIGFtIGFsc28gY3VyaW91 cyBhcyB0byBob3cgeW91IHRlc3RlZCBpdCwgYXMgSSBub3RpY2VkIHRoYXQKc3VzcGVuZC9yZXN1 bWUgaXMgYnJva2VuIG9uIDMuMTgtcmMgZm9yIG14NnN4LgoKQXJlIHlvdSBhYmxlIHRvIGRvIHN1 c3BlbmQvcmVzdW1lIG9uIDMuMTgtcmMgb24gYSBteDZzeCBzZGIgYm9hcmQ/CltBbGlzb24gV2Fu Z10gTm8sIEkgZG9uJ3QgaGF2ZSB0aGF0IGJvYXJkLiBJIHRlc3RlZCBvbiBMUzEwMjFBIFFEUyBi b2FyZCB3aGljaCBzdXBwb3J0cyBkZWVwIHNsZWVwLgoKQmVzdCBSZWdhcmRzLApBbGlzb24gV2Fu Zw== From mboxrd@z Thu Jan 1 00:00:00 1970 From: alison.wang@freescale.com (Huan Wang) Date: Thu, 30 Oct 2014 14:56:42 +0000 Subject: [PATCH] audio: sai: Add Power Management support In-Reply-To: References: <1414552896-20797-1-git-send-email-b18965@freescale.com>, Message-ID: <1414680990680.12980@freescale.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, Fabio, Please always add the driver maintainers (Xiubo Li and Nicolin Chen). [Alison Wang] ok, thanks for your reminder. On Wed, Oct 29, 2014 at 1:21 AM, Alison Wang wrote: > +#ifdef CONFIG_PM_SLEEP > +static int fsl_sai_suspend(struct device *dev) > +{ > + struct fsl_sai *sai = dev_get_drvdata(dev); > + > + regcache_cache_only(sai->regmap, true); > + regcache_mark_dirty(sai->regmap); > + > + return 0; > +} > + > +static int fsl_sai_resume(struct device *dev) > +{ > + struct fsl_sai *sai = dev_get_drvdata(dev); > + > + /* Restore all registers */ > + regcache_cache_only(sai->regmap, false); > + regcache_sync(sai->regmap); > + > + return 0; > +}; > +#endif /* CONFIG_PM_SLEEP */ > + > +static const struct dev_pm_ops fsl_sai_pm = { > + SET_SYSTEM_SLEEP_PM_OPS(fsl_sai_suspend, fsl_sai_resume) This could be simplified to: static SIMPLE_DEV_PM_OPS(fsl_sai_pm, fsl_sai_suspend, fsl_sai_resume); [Alison Wang] ok. I am also curious as to how you tested it, as I noticed that suspend/resume is broken on 3.18-rc for mx6sx. Are you able to do suspend/resume on 3.18-rc on a mx6sx sdb board? [Alison Wang] No, I don't have that board. I tested on LS1021A QDS board which supports deep sleep. Best Regards, Alison Wang From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934481AbaJ3O4p (ORCPT ); Thu, 30 Oct 2014 10:56:45 -0400 Received: from mail-bn1on0116.outbound.protection.outlook.com ([157.56.110.116]:20143 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932860AbaJ3O4o (ORCPT ); Thu, 30 Oct 2014 10:56:44 -0400 From: Huan Wang To: Fabio Estevam CC: "perex@perex.cz" , Takashi Iwai , "Liam Girdwood" , Mark Brown , "alsa-devel@alsa-project.org" , "linux-arm-kernel@lists.infradead.org" , linux-kernel , Nicolin Chen , "Li.Xiubo@freescale.com" Subject: Re: [PATCH] audio: sai: Add Power Management support Thread-Topic: [PATCH] audio: sai: Add Power Management support Thread-Index: AQHP83SZa8Mh/U0xYkW2IwDuBTMksJxItVl+ Date: Thu, 30 Oct 2014 14:56:42 +0000 Message-ID: <1414680990680.12980@freescale.com> References: <1414552896-20797-1-git-send-email-b18965@freescale.com>, In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [221.223.183.133] x-microsoft-antispam: BCL:0;PCL:0;RULEID:;SRVR:BN1PR0301MB0610; x-forefront-prvs: 038002787A x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(6009001)(24454002)(377454003)(199003)(189002)(122556002)(76176999)(86362001)(97736003)(76482002)(46102003)(36756003)(54356999)(80022003)(117636001)(77096002)(50986999)(40100003)(21056001)(110136001)(92566001)(92726001)(120916001)(85852003)(99286002)(95666004)(66066001)(107046002)(2656002)(19580405001)(19580395003)(106116001)(106356001)(101416001)(87936001)(31966008)(20776003)(64706001)(85306004)(4396001)(105586002);DIR:OUT;SFP:1102;SCL:1;SRVR:BN1PR0301MB0610;H:BN1PR0301MB0689.namprd03.prod.outlook.com;FPR:;MLV:sfv;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Content-Type: text/plain; charset="gb2312" MIME-Version: 1.0 X-OriginatorOrg: freescale.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by nfs id s9UEuoNR013134 Hi, Fabio, Please always add the driver maintainers (Xiubo Li and Nicolin Chen). [Alison Wang] ok, thanks for your reminder. On Wed, Oct 29, 2014 at 1:21 AM, Alison Wang wrote: > +#ifdef CONFIG_PM_SLEEP > +static int fsl_sai_suspend(struct device *dev) > +{ > + struct fsl_sai *sai = dev_get_drvdata(dev); > + > + regcache_cache_only(sai->regmap, true); > + regcache_mark_dirty(sai->regmap); > + > + return 0; > +} > + > +static int fsl_sai_resume(struct device *dev) > +{ > + struct fsl_sai *sai = dev_get_drvdata(dev); > + > + /* Restore all registers */ > + regcache_cache_only(sai->regmap, false); > + regcache_sync(sai->regmap); > + > + return 0; > +}; > +#endif /* CONFIG_PM_SLEEP */ > + > +static const struct dev_pm_ops fsl_sai_pm = { > + SET_SYSTEM_SLEEP_PM_OPS(fsl_sai_suspend, fsl_sai_resume) This could be simplified to: static SIMPLE_DEV_PM_OPS(fsl_sai_pm, fsl_sai_suspend, fsl_sai_resume); [Alison Wang] ok. I am also curious as to how you tested it, as I noticed that suspend/resume is broken on 3.18-rc for mx6sx. Are you able to do suspend/resume on 3.18-rc on a mx6sx sdb board? [Alison Wang] No, I don't have that board. I tested on LS1021A QDS board which supports deep sleep. Best Regards, Alison Wang{.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I