Received: by 2002:a05:7412:2a8c:b0:e2:908c:2ebd with SMTP id u12csp1356364rdh; Mon, 25 Sep 2023 10:07:36 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEfIwkMTQHN2TXNG3ZpS7JCAjP88fqvXbjSg6aZ/nZ1JkGBJ+bWouGD7AMYlJ0WM9eu0NiX X-Received: by 2002:a05:6a00:1a91:b0:68f:edfd:2ac6 with SMTP id e17-20020a056a001a9100b0068fedfd2ac6mr9456210pfv.0.1695661655856; Mon, 25 Sep 2023 10:07:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695661655; cv=none; d=google.com; s=arc-20160816; b=Hx/2kVzvkNj1wcipnk861SjTfPRmFnW8XPsQOFrWxMHFxhSxKlOye3gJk3PKgEZn6E GXiLGQPkcgJAMfrbMCEPwS71mnhjbvQvMmOjYMXKRzy7w0zYI7nKzoOqtz6T7ZXU7aSG JYGiZkGeEeaMFpb+3yf3KxEKr6AJJU2EWaEJLNz3rgZcx3tBWXxHdSP7n4AHT+HNyRYF y7s6jNO7I6mew2BfEl2q3G2vJz1i/M42Pr1kbXneAx2gsUoF6EpLIPSrqG9TL6EQCL1u O0mgAvmKBE9TjuESKVxKR5rfziKzvFYi4BsODwOuiDnG3d7C3x/GO1YwjFkth587jGV+ 8wSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=7auSkgezWSL6mQoHeXRixUmeJiJBcJSiSQX0s+bC+Hg=; fh=0iKC8n1xKtkvw+5RDzSud32j7h9ilf6Mvh4d+L1hSv0=; b=qhQE8r8som9PYPBIq0K4OV/jjGmyPcmz8QzkKXg44kPkmTLMEdG+r0QBqhYO4z0UhI 6nuvjZg5XzzpLWFjkTsBHey32Rkwboz6nRQI1r5fyZ+7XEGU+1W3jrDS1hDmbRKq1nN3 416i4VIfqy4oqCCumZe0X4cjcvY9NA5lCWK8HHNPboQLMYtMiQ9SLgtYWcJzhNoeaKLn FQ4oewsCEJUJ+7WsKfyGsStHr8evVju7gTTvA1FBzBkogbRkRo+nDgTjpngFCuJ1V1sh +nacFpy02WqFpVESovezu3uluUzVJukLmdB67z/D7An/xnWozhjh8wJPeJgimaJOtkwO oe5A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=xueCLe+A; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id w5-20020a636205000000b00578dfc8f11asi10826629pgb.792.2023.09.25.10.07.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Sep 2023 10:07:35 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=xueCLe+A; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 4EB1C8249285; Mon, 25 Sep 2023 06:18:01 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231502AbjIYNSE (ORCPT + 99 others); Mon, 25 Sep 2023 09:18:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57610 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230260AbjIYNSD (ORCPT ); Mon, 25 Sep 2023 09:18:03 -0400 Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [IPv6:2a00:1450:4864:20::135]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 41F49A2 for ; Mon, 25 Sep 2023 06:17:56 -0700 (PDT) Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-503012f4e71so9254728e87.0 for ; Mon, 25 Sep 2023 06:17:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1695647874; x=1696252674; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=7auSkgezWSL6mQoHeXRixUmeJiJBcJSiSQX0s+bC+Hg=; b=xueCLe+A0tVPe8iQ5lGUtoyuyK8ZJTWH566c0cnvMlEHWS5l6BKCCBV3LGcmaluj+k hxk919XMzNi9uwetRyVCnpCkbaCmoqenIck2naKgi/3WkaHjb5RseUAm58+taVvXed5v DowfNvF0cvUDv99XOTBoIPf1CwRQWllYtmTVNI374kNm0WJheKwDljKcd/ufeJ7xBr+8 BxiKeurnsInolZ6jpuCRAUZOaaTbThdUNDNL3TvrbA+Upe2fz+3m1Qtp5MyGMEzLJaWi 6+GvV7XshZQhRWaODrFIXCKAVIHwUjgJdxZ1xmeixkOI+HYev4LLUSgD4ootsVb3VMLG qOBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695647874; x=1696252674; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=7auSkgezWSL6mQoHeXRixUmeJiJBcJSiSQX0s+bC+Hg=; b=IHGpzHRuUpJxY26af/lYqrp1mTTmkWsDgeAhBrSUGpv0cDjTrZKWcB2hd04uF5uKjy 2YNtqp2Dbe5Lpri1EC3iLLyVG+k80H2VUDpUOnWEjC/byJVsLtKOFLRMYe8ZJSzllDq2 NItwC0HowKaBcyQkKOsqAl7tW79XfYss2ajlaa3g+wtu5O1GHz9lKsvc3b87zJEqeHwa eUvTd3pSCdaKIrf4TUFryn0lIg5V6WyA57CQHFPLlKYSJ8KzSE8uUCWBWNvHVKuDu49g God1AetfHZKLkXCRBYbzdkFShylHjwREar58X9TVALltSfSCNUjA9QzH5QYSbp5LKxLh DPcg== X-Gm-Message-State: AOJu0Yyp+O7YCvNE/qxUuvWpfG9Jsmzql7RB1d6pkaNAYCB4Smldo4vf cSjmK+6umwgGU3/dtFhsW6GosxOsmGBGwCPqBk8= X-Received: by 2002:a05:6512:239d:b0:500:a93d:fc78 with SMTP id c29-20020a056512239d00b00500a93dfc78mr2876540lfv.31.1695647874370; Mon, 25 Sep 2023 06:17:54 -0700 (PDT) Received: from uffe-tuxpro14.. (h-94-254-63-18.NA.cust.bahnhof.se. [94.254.63.18]) by smtp.gmail.com with ESMTPSA id m29-20020a056512015d00b004fe10276bbfsm1823583lfo.296.2023.09.25.06.17.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Sep 2023 06:17:53 -0700 (PDT) From: Ulf Hansson To: Sudeep Holla , Cristian Marussi , Viresh Kumar , "Rafael J . Wysocki" Cc: Nishanth Menon , Stephen Boyd , Nikunj Kela , Prasad Sodagudi , Alexandre Torgue , Ulf Hansson , linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/9] PM: domains/opp/arm_scmi: Extend performance scaling support Date: Mon, 25 Sep 2023 15:17:06 +0200 Message-Id: <20230925131715.138411-1-ulf.hansson@linaro.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Mon, 25 Sep 2023 06:18:01 -0700 (PDT) Consumer drivers for devices that are attached to the SCMI performance domain, are currently not able to use the OPP library to scale performance. This series is enabling the support for this. The OPPs for SCMI performance domain are encoded in the FW, rather than being described through DT. To better support this, some changes have also been done to the OPP library and for PM domains in general. More details are available in the commit messages. I have based the series on the scmi tree and the for-next/scmi/updates branch, so the OPP and PM domain changes would require acks from Viresh and Rafael to be allow to be picked up and funneled through the scmi tree. Or, let's just discuss what works best for us in this regards. Note that, I am running this on the Qemu virt platform with Optee running an SCMI server. If you want some more details about my test setup, I can certainly share this with you, just let me know. Looking forward to your feedback! Kind regards Ulf Hansson Ulf Hansson (9): PM: domains: Introduce dev_pm_domain_set_performance_state() PM: domains: Implement the ->set_performance_state() callback for genpd OPP: Add dev_pm_opp_add_dynamic() to allow more flexibility OPP: Extend dev_pm_opp_data with a level OPP: Switch to use dev_pm_domain_set_performance_state() OPP: Extend support for the opp-level beyond required-opps firmware: arm_scmi: Simplify error path in scmi_dvfs_device_opps_add() firmware: arm_scmi: Specify the performance level when adding an OPP firmware: arm_scmi: Add generic OPP support to the SCMI performance domain drivers/base/power/common.c | 21 ++++++++++ drivers/base/power/domain.c | 33 +++++++++------ drivers/firmware/arm_scmi/perf.c | 22 +++++----- drivers/opp/core.c | 54 +++++++++++++++++++------ drivers/opp/of.c | 10 +++-- drivers/opp/opp.h | 2 +- drivers/pmdomain/arm/scmi_perf_domain.c | 34 ++++++++++++++++ include/linux/pm.h | 2 + include/linux/pm_domain.h | 6 +++ include/linux/pm_opp.h | 31 ++++++++++++-- 10 files changed, 168 insertions(+), 47 deletions(-) -- 2.34.1