From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxim Levitsky Subject: Re: How to disable async resume for few selected devices (does it work?) Date: Thu, 03 Jun 2010 09:55:45 +0300 Message-ID: <1275548145.2582.2.camel@maxim-laptop> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-pm-bounces@lists.linux-foundation.org Errors-To: linux-pm-bounces@lists.linux-foundation.org To: Alan Stern Cc: linux-pm List-Id: linux-pm@vger.kernel.org On Wed, 2010-06-02 at 21:51 -0400, Alan Stern wrote: > On Thu, 3 Jun 2010, Maxim Levitsky wrote: > > > I have a card reader on which one function implements SDHCI and other > > MMC (to workaround windows bug....) > > > > There is a way to disable MMC function, but is causes the device > > sometimes to die on resume from disk/ram. > > > > I today was told that MMC function is in fact _almost_ standard SDHCI > > controller, and in fact now sdhci binds to it and works just fine. > > > > However since both devices share same hardware they appear to have need > > to be resumed one after another, and definitely not in parallel. > > I tried to use device_disable_async_suspend on both pci devices and > > indeed both power/async turns to false. > > > > But they are still resumed in parallel: > > (look how well mmc0 and mmc1 interleave...) > > Why? > > My guess is that you shouldn't have disabled async suspend on the PCI > devices but on their children instead. That is, the PCI devices are > 0000:07:00.1 and 0000:07:00.2, but the devices causing your problem are > mmc0 and mmc1. Or maybe you'd prefer to disable async suspend on all > four devices. Nope, all childeren of both pci device has 'async' disabled. Just checked that. Best regards, Maxim Levitsky > > Alan Stern >