From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754559AbbH0NGE (ORCPT ); Thu, 27 Aug 2015 09:06:04 -0400 Received: from mail-wi0-f181.google.com ([209.85.212.181]:37365 "EHLO mail-wi0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754201AbbH0NGB (ORCPT ); Thu, 27 Aug 2015 09:06:01 -0400 MIME-Version: 1.0 In-Reply-To: <55BF60F5.8040602@linux.intel.com> References: <55BF60F5.8040602@linux.intel.com> Date: Thu, 27 Aug 2015 15:05:58 +0200 Message-ID: Subject: Re: [PATCH] mmc: enable mmc host device to suspend/resume asynchronously From: Ulf Hansson To: "Fu, Zhonghui" Cc: Adrian Hunter , Linus Walleij , Markus Niebel , Lars-Peter Clausen , Sascha Hauer , =?UTF-8?Q?Kristina_Mart=C5=A1enko?= , linux-mmc , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 3 August 2015 at 14:39, Fu, Zhonghui wrote: > Enable mmc host device to suspend/resume asynchronously. > This can improve system suspend/resume speed. Can or will? It would be nice to see some statistics of this to justify the change. Can you share that? Moreover we already have the runtime PM support, which enables the reinitialization sequence of the mmc/sd card to be postponed from the system PM resume path. Instead that's done when the next pm_runtime_get_sync() for the card's device gets called. You my tried that feature by enabling MMC_CAP_RUNTIME_RESUME for the mmc hosts. Kind regards Uffe > > Signed-off-by: Zhonghui Fu > --- > drivers/mmc/core/host.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c > index 99a9c90..85f2bbb 100644 > --- a/drivers/mmc/core/host.c > +++ b/drivers/mmc/core/host.c > @@ -577,6 +577,7 @@ struct mmc_host *mmc_alloc_host(int extra, struct device *dev) > host->class_dev.parent = dev; > host->class_dev.class = &mmc_host_class; > device_initialize(&host->class_dev); > + device_enable_async_suspend(&host->class_dev); > > if (mmc_gpio_alloc(host)) { > put_device(&host->class_dev); > -- 1.7.1 >