From nobody Mon Jun 15 16:15:01 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3EE4EC433EF for ; Tue, 26 Apr 2022 14:15:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1351533AbiDZOSj (ORCPT ); Tue, 26 Apr 2022 10:18:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45982 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1351527AbiDZOSe (ORCPT ); Tue, 26 Apr 2022 10:18:34 -0400 Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com [IPv6:2a00:1450:4864:20::132]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4019912770 for ; Tue, 26 Apr 2022 07:15:22 -0700 (PDT) Received: by mail-lf1-x132.google.com with SMTP id p10so32189372lfa.12 for ; Tue, 26 Apr 2022 07:15:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5o32wUvvQH//2mVRnrNn2QEStbroChjE5Xk/XzAuRBk=; b=ZS+FRmGXxGxWy+Sr0qmhaRwRYeghMgckGEwpLe57mjpM/s7TW3ohc4Mcat9ZFwf6jh HbHzKOSNz2NJDBeVwwMgcitMnahz1LqMhGC+7jO78Edqz5IKSKFcO3pd60CyC747oNVB iEFbAfWik+yhAKMHjP1h55bT97a53CxnUJSXEaDVlppg2l0ocHDEmamIQ3FagetDHvOI OiGCe3HnIBSdu0xvbHgUqS1+0H9Vbbf3iPJDDvVFxS32aIbFk5VtiZiDb6h/z95xRfk3 3BSqZHaeXWlCUdJiz9jBsMTjxeJN22axVv6/M4EEuZ7raz+IclxnjJ9ZA0+2P6b2Ziim mGgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=5o32wUvvQH//2mVRnrNn2QEStbroChjE5Xk/XzAuRBk=; b=C9pXWB2dTCBWhJ0nq2TgwaLwpXGeex+gNMRrAvuqHoLJTdK1zjvo5YyU4ZX1x0NLE9 nVBfeaIvbb3j6HYc3HA6E+Dv55lO6jwwU3dLgacdC1ioTmgMpC5SVVkb81GkYYxJg1U/ 5g+tcSaYWXKqyRfa55ndIhusZVOqE6U1305ILIKvoKJZ8wzZbGkjW4Qm4gVsP+L9hemb qu61vDeR4NlHc/dygjtwIGu2OtetTHI5BhhWwGiAZD0eW/pKEeX427Sagg9ZqaYCxaca r+VXPj129wDjQDp2zH7PvmLZw7zo/fmXFvVw6enacBG3EVg0+qBnko6U7e32HiS14Dwo 09QA== X-Gm-Message-State: AOAM5321kxnaP4A02jP4dE48+CWb5xeJRlNV4X34HdT3j6gL5ZkVsdgO 8DPo03sgrf+yrVS79uKC8h/e5A== X-Google-Smtp-Source: ABdhPJxI1wm79Ps82LwseJjrRMrpea/rINXfvkndAZAVAPzCBHLRmNGZgLrDZEbnnIZcFl3Yso6hVg== X-Received: by 2002:a05:6512:3f01:b0:46b:a5ba:3b89 with SMTP id y1-20020a0565123f0100b0046ba5ba3b89mr17067969lfa.28.1650982520769; Tue, 26 Apr 2022 07:15:20 -0700 (PDT) Received: from localhost.localdomain (h-98-128-181-154.NA.cust.bahnhof.se. [98.128.181.154]) by smtp.gmail.com with ESMTPSA id g23-20020a2ea4b7000000b0024f096abebdsm1043360ljm.78.2022.04.26.07.15.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Apr 2022 07:15:18 -0700 (PDT) From: Ulf Hansson To: "Rafael J . Wysocki" , linux-pm@vger.kernel.org Cc: Kevin Hilman , Vincent Guittot , Geert Uytterhoeven , Dmitry Osipenko , Ulf Hansson , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/3] PM: domains: Add GENPD_FLAG_RPM_ALWAYS_ON for the always-on governor Date: Tue, 26 Apr 2022 16:15:05 +0200 Message-Id: <20220426141507.89868-2-ulf.hansson@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220426141507.89868-1-ulf.hansson@linaro.org> References: <20220426141507.89868-1-ulf.hansson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Rather than relying on the genpd provider to set the corresponding flag, GENPD_FLAG_RPM_ALWAYS_ON, when the always-on governor is being used, let's add it in pm_genpd_init(). In this way, it starts to benefits all genpd providers immediately. Signed-off-by: Ulf Hansson --- drivers/base/power/domain.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c index 18cd7965e5d6..262bda9b56ef 100644 --- a/drivers/base/power/domain.c +++ b/drivers/base/power/domain.c @@ -2016,6 +2016,10 @@ int pm_genpd_init(struct generic_pm_domain *genpd, genpd->dev_ops.start =3D pm_clk_resume; } =20 + /* The always-on governor works better with the corresponding flag. */ + if (gov =3D=3D &pm_domain_always_on_gov) + genpd->flags |=3D GENPD_FLAG_RPM_ALWAYS_ON; + /* Always-on domains must be powered on at initialization. */ if ((genpd_is_always_on(genpd) || genpd_is_rpm_always_on(genpd)) && !genpd_status_on(genpd)) --=20 2.25.1 From nobody Mon Jun 15 16:15:01 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 23C13C433F5 for ; Tue, 26 Apr 2022 14:15:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1351540AbiDZOSn (ORCPT ); Tue, 26 Apr 2022 10:18:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46232 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1351504AbiDZOSk (ORCPT ); Tue, 26 Apr 2022 10:18:40 -0400 Received: from mail-lf1-x12a.google.com (mail-lf1-x12a.google.com [IPv6:2a00:1450:4864:20::12a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 60D4B13E3E for ; Tue, 26 Apr 2022 07:15:28 -0700 (PDT) Received: by mail-lf1-x12a.google.com with SMTP id p10so32189919lfa.12 for ; Tue, 26 Apr 2022 07:15:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=zxzRefBI77z9hgqatEhKgv+DKfty9U6ghK1LVbo7j6g=; b=QLGRhd2Pi4JCAUmodnhxjytlHsjYsMztxt8K9xc9qpYANI7AaZrhTsscio79IjkUQI yXTk3H5XAsGl1hvlWbmja6j8KSC4ujPyuzGpvoJ01C56f1V0zQfoiuUmz3llwVoHJKBg 4mSQSgXTuwl2xGlP0GuQRQ1CKGSwZ/N6zsFtXfB8Wn3ROzZS1nEFZHTrsxZ0cQlZcroP 7v7G8RaiUEDKK2NNHSGXscxZjbEwOqX3Fw7eaNovtrd6HauNzxO+YfXM4TdncNnICHFv PdU/ClRkVedYyYqtUjd9ZuU23nbodUEy0nQIR2/45L2R9leg7o8jvY1UQa95gM8Y9CD+ f2QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=zxzRefBI77z9hgqatEhKgv+DKfty9U6ghK1LVbo7j6g=; b=MH9Z73/xW4ZESrDSYB6B7FZ6oqcIMj6mHdnksWhwdyVObaAB2fFLYRjhV/Q+T0zczw 4+gQ5S9QpfX+wiyZMoXYDlL1iCLKg9T7H4u4UtLnBEcoyxNeUphv5+/5jZOBVrDV17oM Tox2rIDr5/jK2Zl9fcdrZx2DgvirDGq6UULh3B+PTavBzB3GQc5h1FABt/8pVWKMZzJG qFM3KsRubDEqT41pNuzTjzXp27tgWkRHqtWzFbSvXEFQ9sX3mT/wgdMMMJV3lcHlWgGn RIqALrtRJeii8dC6y7YGi3+HQ/Qlc3vp5S6CzDK5J5kPA7O0yOVAZrULQf6iCAFE5yRo 0LfQ== X-Gm-Message-State: AOAM533TcVUv/SaDFVBDTbNfqsPiF5CgcBeh5EFntuGPu2uZ0nBCAVxh YSH/GeQicON0uYh4cx6vAIfOzA== X-Google-Smtp-Source: ABdhPJwZM0hz5NTNslZdZTT4y9WKN1tMWLtl28kfh2I/DoQpBRrptcN0q0StrVDO9i2WSkdgy7mAhw== X-Received: by 2002:a05:6512:6c2:b0:46b:9578:7c63 with SMTP id u2-20020a05651206c200b0046b95787c63mr17462809lff.204.1650982527150; Tue, 26 Apr 2022 07:15:27 -0700 (PDT) Received: from localhost.localdomain (h-98-128-181-154.NA.cust.bahnhof.se. [98.128.181.154]) by smtp.gmail.com with ESMTPSA id g23-20020a2ea4b7000000b0024f096abebdsm1043360ljm.78.2022.04.26.07.15.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Apr 2022 07:15:22 -0700 (PDT) From: Ulf Hansson To: "Rafael J . Wysocki" , linux-pm@vger.kernel.org Cc: Kevin Hilman , Vincent Guittot , Geert Uytterhoeven , Dmitry Osipenko , Ulf Hansson , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/3] PM: domains: Drop redundant code for genpd always-on governor Date: Tue, 26 Apr 2022 16:15:06 +0200 Message-Id: <20220426141507.89868-3-ulf.hansson@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220426141507.89868-1-ulf.hansson@linaro.org> References: <20220426141507.89868-1-ulf.hansson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Due to recent changes, the always-on governor is always used with a genpd that has the GENPD_FLAG_RPM_ALWAYS_ON flag being set. This means genpd, doesn't invoke the governor's ->power_down_ok() callback, which makes the code in governor redundant, so let's drop it. Signed-off-by: Ulf Hansson --- drivers/base/power/domain_governor.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/drivers/base/power/domain_governor.c b/drivers/base/power/doma= in_governor.c index cd08c5885190..c13e44823f16 100644 --- a/drivers/base/power/domain_governor.c +++ b/drivers/base/power/domain_governor.c @@ -327,11 +327,6 @@ static bool default_power_down_ok(struct dev_pm_domain= *pd) return _default_power_down_ok(pd, ktime_get()); } =20 -static bool always_on_power_down_ok(struct dev_pm_domain *domain) -{ - return false; -} - #ifdef CONFIG_CPU_IDLE static bool cpu_power_down_ok(struct dev_pm_domain *pd) { @@ -401,6 +396,5 @@ struct dev_power_governor simple_qos_governor =3D { * pm_genpd_gov_always_on - A governor implementing an always-on policy */ struct dev_power_governor pm_domain_always_on_gov =3D { - .power_down_ok =3D always_on_power_down_ok, .suspend_ok =3D default_suspend_ok, }; --=20 2.25.1 From nobody Mon Jun 15 16:15:01 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5B2A4C433F5 for ; Tue, 26 Apr 2022 14:15:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1351549AbiDZOSs (ORCPT ); Tue, 26 Apr 2022 10:18:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46496 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1351543AbiDZOSn (ORCPT ); Tue, 26 Apr 2022 10:18:43 -0400 Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com [IPv6:2a00:1450:4864:20::130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B3B5E140FA for ; Tue, 26 Apr 2022 07:15:35 -0700 (PDT) Received: by mail-lf1-x130.google.com with SMTP id w19so32175690lfu.11 for ; Tue, 26 Apr 2022 07:15:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=6uWDDfHKgK8+yoOD+Pzrd9WOCbfsrsht1ynrIKudfso=; b=ej4+Bx6xsGOH1fAYVCANQZk2dOz8IPnGV43ikFNr5907fDFzF+LC4hNSwjs0yUKphb LlQcAqu6SYB9cIITtCLUcl14KCtEhMawPgVduTYHzdTyrwCcgKnmedX1eQzkzjB37JHO zGCMPlgOhE55LQG7hJQHMcjjXWkik63SJIlvlZ6KMauZTOGgCVkgZ+yba7liNdFvAG1l i139SGagphUzRBobjJet6dT0uNxatiQJ096u8Pql+KL2VIFCp9abO9Y+Lwb22wbZfyhp EgtzT/D/fSyXw7+PFyCHJAWKS72toMh8bBDR7dlI2y+aoy7j2gcl8MPM8ADmiqwFN2iE vXcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=6uWDDfHKgK8+yoOD+Pzrd9WOCbfsrsht1ynrIKudfso=; b=HisimikvREgmVegwNXqcv0DuMw6V+pQ2ndRz3xP5U2nMVCixcEBpxsp660CeOpeN9K usg48hlGlPlAbyNpSB2cD2ufEmg9psgqPAopL8xegOtGXjxyq706eed2fcutlcC7B6CW YQZK2H4XVxKfpClTlhp2Jhp9BKG9qg/UFe2VhIGvapN64vqJv4G0w88DTTuXIZK5U9YQ CKL5rZenAtpKbpFjxC5L09ts9r89TMR8OveQgvFca94Vfcvki0dCanWJ9fU3ncjDOd/q +1RQ24TgjbyZxMB5O7PqcV2p3+Fj/X/6Xr/Jg9AyNrY2xhhFqiXr6M1MceMF7Ti+H7Wd VPkg== X-Gm-Message-State: AOAM533phrwXG+IP3BqB3/iCHAmI0G9Ny3WVabdGaZYQN0687oWCIc7S eoo3h/rVZHNYzmIkWMhCqSY7KQ== X-Google-Smtp-Source: ABdhPJzVJYvpLNFNnLneCLs3awIMzJab4hFZqee6Y1nyrzQD/yDf8uZ2syfAyE7PbC6lRc5j5FlZkA== X-Received: by 2002:a19:4f53:0:b0:472:1714:61f1 with SMTP id a19-20020a194f53000000b00472171461f1mr2746170lfk.473.1650982533737; Tue, 26 Apr 2022 07:15:33 -0700 (PDT) Received: from localhost.localdomain (h-98-128-181-154.NA.cust.bahnhof.se. [98.128.181.154]) by smtp.gmail.com with ESMTPSA id g23-20020a2ea4b7000000b0024f096abebdsm1043360ljm.78.2022.04.26.07.15.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Apr 2022 07:15:30 -0700 (PDT) From: Ulf Hansson To: "Rafael J . Wysocki" , linux-pm@vger.kernel.org Cc: Kevin Hilman , Vincent Guittot , Geert Uytterhoeven , Dmitry Osipenko , Ulf Hansson , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/3] PM: domain: Don't check PM_QOS_FLAG_NO_POWER_OFF in genpd Date: Tue, 26 Apr 2022 16:15:07 +0200 Message-Id: <20220426141507.89868-4-ulf.hansson@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220426141507.89868-1-ulf.hansson@linaro.org> References: <20220426141507.89868-1-ulf.hansson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Back in the days when genpd supported intermediate power states of its devices, it made sense to check the PM_QOS_FLAG_NO_POWER_OFF in genpd_power_off(). This because the attached devices were all being put into low power state together when the PM domain was also being powered off. At this point, the flag PM_QOS_FLAG_NO_POWER_OFF is better checked by drivers from their ->runtime_suspend() callbacks, like in the usb_port_runtime_suspend(), for example. Or perhaps an even better option is to set the QoS resume latency constraint for the device to zero, which informs the runtime PM core to prevent the device from being runtime suspended. Signed-off-by: Ulf Hansson --- drivers/base/power/domain.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c index 262bda9b56ef..5059c5d2e64a 100644 --- a/drivers/base/power/domain.c +++ b/drivers/base/power/domain.c @@ -648,12 +648,6 @@ static int genpd_power_off(struct generic_pm_domain *g= enpd, bool one_dev_on, } =20 list_for_each_entry(pdd, &genpd->dev_list, list_node) { - enum pm_qos_flags_status stat; - - stat =3D dev_pm_qos_flags(pdd->dev, PM_QOS_FLAG_NO_POWER_OFF); - if (stat > PM_QOS_FLAGS_NONE) - return -EBUSY; - /* * Do not allow PM domain to be powered off, when an IRQ safe * device is part of a non-IRQ safe domain. --=20 2.25.1