Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755436AbbBPJvO (ORCPT ); Mon, 16 Feb 2015 04:51:14 -0500 Received: from smtp-out4.electric.net ([192.162.216.185]:54818 "EHLO smtp-out4.electric.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755154AbbBPJvM (ORCPT ); Mon, 16 Feb 2015 04:51:12 -0500 From: David Laight To: "'Fu, Zhonghui'" , Kalle Valo , "brudley@broadcom.com" , "Arend van Spriel" , Franky Lin , "meuleman@broadcom.com" , "linville@tuxdriver.com" , "pieterpg@broadcom.com" , "hdegoede@redhat.com" , "wens@csie.org" , "linux-wireless@vger.kernel.org" , "brcm80211-dev-list@broadcom.com" , "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH v3] brcmfmac: avoid duplicated suspend/resume operation Thread-Topic: [PATCH v3] brcmfmac: avoid duplicated suspend/resume operation Thread-Index: AQHQSMjh5zCZ0vaW4EetYFH3wJ7x+pzzCabQ Date: Mon, 16 Feb 2015 09:50:44 +0000 Message-ID: <063D6719AE5E284EB5DD2968C1650D6D1CAE430C@AcuExch.aculab.com> References: <54DC1D7D.5050407@linux.intel.com> <54E0072D.3020802@linux.intel.com> In-Reply-To: <54E0072D.3020802@linux.intel.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.202.99.200] Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-Outbound-IP: 213.249.233.130 X-Env-From: David.Laight@ACULAB.COM X-PolicySMART: 3396946, 3397078 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 t1G9pIPn010343 Content-Length: 678 Lines: 16 > > WiFi chip has 2 SDIO functions, and PM core will trigger > > twice suspend/resume operations for one WiFi chip to do > > the same things. This patch avoid this case. Do you want to suspend on the first or last request? In general it might be that one function is in use and something wants to suspend the other (as inactive). If they suspend together you might need to pretend the first function is suspended but only do the real power-saving device suspend when all the functions have been suspended. David ????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?