Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752709AbdLSQfJ (ORCPT ); Tue, 19 Dec 2017 11:35:09 -0500 Received: from mail-ot0-f194.google.com ([74.125.82.194]:37763 "EHLO mail-ot0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751128AbdLSQfG (ORCPT ); Tue, 19 Dec 2017 11:35:06 -0500 X-Google-Smtp-Source: ACJfBou4LcvVhyb2fnA6kIcDjR7xifQEFvvrKiHNn1rEzGHY7UdshkSC8e6VXqDj3+SXNn3bLAo8AwO8xngn4eW5BN0= MIME-Version: 1.0 In-Reply-To: References: <7742130.AaJQIxeI1n@aspire.rjw.lan> <252167445.OQUXi2Ca9Y@aspire.rjw.lan> From: "Rafael J. Wysocki" Date: Tue, 19 Dec 2017 17:35:05 +0100 X-Google-Sender-Auth: js1Ghv7nymxv0ORONEcshD6VKig Message-ID: Subject: Re: [PATCH 3/4] PM / core: Direct DPM_FLAG_SMART_SUSPEND optimization To: Ulf Hansson Cc: "Rafael J. Wysocki" , "Rafael J. Wysocki" , Linux PM , Greg Kroah-Hartman , Alan Stern , Kevin Hilman , LKML , Mika Westerberg Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1626 Lines: 40 On Tue, Dec 19, 2017 at 2:15 PM, Ulf Hansson wrote: > On 19 December 2017 at 12:19, Rafael J. Wysocki wrote: >> On Tue, Dec 19, 2017 at 12:13 PM, Rafael J. Wysocki wrote: >>> On Tue, Dec 19, 2017 at 8:38 AM, Ulf Hansson wrote: >>>> On 10 December 2017 at 01:00, Rafael J. Wysocki wrote: >>>>> From: Rafael J. Wysocki >>>>> >> >> [cut] >> >>> >>>> Moreover, what happens when/if a driver that has deployed this >>>> solution, starts being used on a new SoC and then additional >>>> operations during system suspend becomes required (for example >>>> pinctrls that needs to be put in a system sleep state)? Then >>>> everything falls apart, doesn't it? >>> >>> Then you runtime-resume the device in ->suspend() and the remaining >>> callbacks will run for you just fine. >> >> BTW, I guess you'll need a middle layer in that case anyway so that >> the driver doesn't have to distinguish between platforms it has to >> work with which makes the argument somewhat moot. > > No, this isn't the case. Let's take the pinctrl as an example. > > The pinctrl system sleep state could be optionally defined in the DT, > depending on the platform. > > All the driver shall do, is to try to set the state, if it has been defined. And how exactly does the driver know what state should be set during system suspend, say? Anyway, though, as I said, nothing forces you to set DPM_FLAG_SMART_SUSPEND. Don't set it if it is not suitable for you and no one else is going to be affected. Thanks, Rafael