From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751563AbdJRV6B (ORCPT ); Wed, 18 Oct 2017 17:58:01 -0400 Received: from cloudserver094114.home.net.pl ([79.96.170.134]:55474 "EHLO cloudserver094114.home.net.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750880AbdJRV57 (ORCPT ); Wed, 18 Oct 2017 17:57:59 -0400 From: "Rafael J. Wysocki" To: Grygorii Strashko Cc: Ulf Hansson , Linux PM , Bjorn Helgaas , Alan Stern , Greg Kroah-Hartman , LKML , Linux ACPI , Linux PCI , Linux Documentation , Mika Westerberg , Andy Shevchenko , Kevin Hilman , Wolfram Sang , "linux-i2c@vger.kernel.org" , Lee Jones Subject: Re: [PATCH 0/12] PM / sleep: Driver flags for system suspend/resume Date: Wed, 18 Oct 2017 23:48:20 +0200 Message-ID: <2926646.NJduVklg7n@aspire.rjw.lan> In-Reply-To: <7b9c2a3e-2e88-938e-46a5-703de0080681@ti.com> References: <3806130.B2KCK0tvef@aspire.rjw.lan> <7b9c2a3e-2e88-938e-46a5-703de0080681@ti.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wednesday, October 18, 2017 9:45:11 PM CEST Grygorii Strashko wrote: > > On 10/18/2017 09:11 AM, Ulf Hansson wrote: [...] > >>> That's the point. We know pm_runtime_force_* works nicely for the > >>> trivial middle-layer cases. > >> > >> In which cases the middle-layer callbacks don't exist, so it's just like > >> reusing driver callbacks directly. :-) > > I'd like to ask you clarify one point here and provide some info which I hope can be useful - > what's exactly means "trivial middle-layer cases"? > > Is it when systems use "drivers/base/power/clock_ops.c - Generic clock > manipulation PM callbacks" as dev_pm_domain (arm davinci/keystone), or OMAP > device framework struct dev_pm_domain omap_device_pm_domain > (arm/mach-omap2/omap_device.c) or static const struct dev_pm_ops > tegra_aconnect_pm_ops? > > if yes all above have PM runtime callbacks. Trivial ones don't actually do anything meaningful in their PM callbacks. Things like the platform bus type, spi bus type, i2c bus type and similar. If the middle-layer callbacks manipulate devices in a significant way, then they aren't trivial. Thanks, Rafael