From patchwork Mon Aug 5 23:38:38 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kevin Hilman X-Patchwork-Id: 13754249 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 23EBDC3DA4A for ; Mon, 5 Aug 2024 23:40:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To: Content-Transfer-Encoding:Content-Type:MIME-Version:Message-Id:Date:Subject: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=YlfLagP5nVyPXkAB8M//TTqvQzW08KpKDm8mw3Y40H8=; b=xOl7mQesrK3S5m s4h2Y/oUgbRinaTPm5KdyL2Dvp5Z/We2ZOZvfqdFEuY/bROcebp7C1LZylExtx98KWoeGRUyvJ0sr vncF9/k1A2v/n7KepmZyxuJfgHBYOFCpw2wDYJR8O+C/Ox6PnBL6MHib+O2ZS9BsdhfqpS48rbHRZ uzaWs4AACHUPeNLqZ+NMxlIm5Hq+7LkYj/mHMZe9zcJeW9qgCJK2EwsdHD9yIdlnFSbMu3tPqjZ9m FjGLdEjCgmo3z0bbJ31koT5FWBM06nZHzM4Ft7axjT/mivmEYadiETsMmfSAFE1yNGyrnWR/SN5wU e90tvlmUG6bfSO3sgGlQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sb7JK-0000000Haww-0aBW; Mon, 05 Aug 2024 23:40:18 +0000 Received: from mail-pf1-x436.google.com ([2607:f8b0:4864:20::436]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sb7IJ-0000000Haf5-07pE for linux-arm-kernel@lists.infradead.org; Mon, 05 Aug 2024 23:39:17 +0000 Received: by mail-pf1-x436.google.com with SMTP id d2e1a72fcca58-70d316f0060so4046452b3a.1 for ; Mon, 05 Aug 2024 16:39:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1722901154; x=1723505954; darn=lists.infradead.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=YlfLagP5nVyPXkAB8M//TTqvQzW08KpKDm8mw3Y40H8=; b=uI5lUJtY54H6dD4KLYJhKx7jCmZduaJuoMZKYNrldWe5uCyQj7SE9ztIeZgYlKYgri 7d7WrqRMfrrPa8KDBWvx2ynhi7QKBkIjFgGkBZCFBRHOlGnIaTcKZaiEmxxiY3BhEqkd vJ26k7/+PdLWkDJbyo/QWu+z/CpiGAAn/M3pyzbuuvgHE1FcsfJhXyfvN9byazxfLb79 IKceSO7+2zBTY3HAoM6ejmIXGvMKfTm8PKqhvzjG+RYWgs4Ep2vHV2eQUU62mbcQw+8D FtoHf0OO9bBwRsml+KByz9mu0KIffNixmbMbeEPDGpecP1LVlLgt9Txmq0P1o8PlKuXR tAGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722901154; x=1723505954; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=YlfLagP5nVyPXkAB8M//TTqvQzW08KpKDm8mw3Y40H8=; b=dfMn/YO8ByJgcUtAhLvbQngwyxH48pLs1Lo4u9QcRAQxbIas8CVnhDtE/IOHdIUevE NEp8hqEi0SblkjjsS9MX/HywqimJefFopcKov8vjtjwytBIWh78Joiwe5SgVRkPaGf6n zPODEiyG6+tUi8O6KnZQNIu/o7KkV0Zbk2ov8AXh78GUPAUed0Dpq/1XTlyizuGxkBue tHLxeDXJbtSkh1cs5iLp5S++TtfA1MFwWx6DSjUbDWAM/aB8t0P3+fKwQF5M3H/tKwjB 76uqeS2Xn2M8JyCpTc7NTe9wrBgxFIsvKgbepXml+vSf74gB8chr1kPb0b0ne0CGNTsD sxKQ== X-Forwarded-Encrypted: i=1; AJvYcCXcNwygJdjyXBRFvu5JnPt37iUWWuNbBvI8bzi5uXmlwIWJjqtT7sYugYsEmzK57Gj34vWJ0Mf5EfYY3WEplX3WmWbcs0gO/QGsrgKNQvDZkipoDxQ= X-Gm-Message-State: AOJu0YzdY3RX8ORwoVhIsXAuv4IP2NwZMIMylvUM3obfR0/OVb3sALEA BeSMFu1uU+GuizmCJ7GrC/gxqmZczS9cDB8qf5pa0KMTWBEWFoLKZ67EUb0Dbz8= X-Google-Smtp-Source: AGHT+IEP1xZK03sfTEAqQ2BUVMV56gxYOQHRak/cqDgve2B4q6pMILP9E+OfwxIYMys2eRW9iow3uQ== X-Received: by 2002:a05:6a00:85a3:b0:70d:2a1b:422c with SMTP id d2e1a72fcca58-7106da29926mr19788781b3a.7.1722901153596; Mon, 05 Aug 2024 16:39:13 -0700 (PDT) Received: from localhost ([71.212.170.185]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7106ec40f5asm5950089b3a.51.2024.08.05.16.39.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Aug 2024 16:39:12 -0700 (PDT) From: Kevin Hilman Subject: [PATCH 0/3] pmdomain: ti_sci: collect and send low-power mode constraints Date: Mon, 05 Aug 2024 16:38:38 -0700 Message-Id: <20240805-lpm-v6-10-constraints-pmdomain-v1-0-d186b68ded4c@baylibre.com> MIME-Version: 1.0 X-B4-Tracking: v=1; b=H4sIAINisWYC/y2OQQ6CMBBFr0K6dggtBYUY4z0MiwKDNqGldirRE O5uBXfzJvnv/4UReo3E6mRhHmdNerIR+CFh3UPZO4LuIzORCZmdMgGjMzCXwDPoJkvBK20DgTP 9ZOIJQ573Q6FwkLJiUeI8Dvq9FdyanT0+X7En7E/WKsLoMkaHOpnLlHPwHf9lDRKpbUGdnP8DO K8KKUQqRFXm8ggcDLlrqz6jbj2m0XNhzbp+AYGENjvYAAAA To: Ulf Hansson Cc: Nishanth Menon , Vibhore Vardhan , Dhruva Gole , Akashdeep Kaur , Sebin Francis , Markus Schneider-Pargmann , linux-arm-kernel@lists.infradead.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, 20240801195422.2296347-1-msp@baylibre.com X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2540; i=khilman@baylibre.com; h=from:subject:message-id; bh=oDWvqZLlTRsTm3mtLU+N+8ckvjki4RAgkVzc7cx3B5E=; b=owEBbQKS/ZANAwAKAVk3GJrT+8ZlAcsmYgBmsWKfWekKui7NB6vltDXLdz/o4GHPuLverfABI 5myx6HZISuJAjMEAAEKAB0WIQR7h0YOFpJ/qfW/8QxZNxia0/vGZQUCZrFinwAKCRBZNxia0/vG ZYbmEACY/u4s2BZHwhegEN64lzxLQuWazliVpqqKWOw53rJM1FrYZYvYmFtUx35wOXVFg896rzb 8h6QYSKuyqoMt5XONQ+mbitOPpa8KRgaYlcKVH+PAVnk7QHuMIhu0THt0U2aWlHrKYai3dtPQnV 66/R7dGnnvSylfsGu+E7dsLMpiYJDKm4ElkrZdnhGsQKkScGlIHMgQoMKK5N4jYLbGLNYgLUK9X IAWtNF/o9CPhQ6Ivp8rPlHMQWV43U7cU+b6wi9tAvqwFnG2zB0Pljr4sTMmF6RpS6U3DKA++9eV GjGM9Ib5Q01x759VyBq8XedPcQIocQ+HgA2SvLGy5hBDPn0U1aB6/+9eKn/RCK1V+y+gVnU6RmM s3AC1GP27GiA8pLlIQrOmGBLoZkLdndlujR/TRRsYKf3Sk4wnJNlzpxZ1Uxkvd8hzsVZyNn6nfk RKOeH/IeCdckU+wkRe3ba8HQ75BFv7F6+bPXP8Wdf4NmzDzXSFnQ4CACaW35fCdgwn3Sm2hJQ8K TpfzmrkDAEl/iG0lEW6L6GQlrlfJZ/xU0FyrpLucJgomm7czYymq/kxIHoISDPe4cUIwitUf/AZ ohHp4+qxWGaUgSIBG24J0vrTHnzOCwAJxS0r6Y1bLZSqAMbLjzw8qaaSCSPrrvWBftWSpbiZzPJ NgQ6/y9FDfiDnPw== X-Developer-Key: i=khilman@baylibre.com; a=openpgp; fpr=7B87460E16927FA9F5BFF10C5937189AD3FBC665 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240805_163915_209090_0F451716 X-CRM114-Status: GOOD ( 16.32 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The latest (10.x) version of the firmware for the PM co-processor (aka device manager, or DM) adds support for a "managed" mode, where the DM firmware will select the specific low power state which is entered when Linux requests a system-wide suspend. In this mode, the DM will always attempt the deepest low-power state available for the SoC. However, Linux (or OSes running on other cores) may want to constrain the DM for certain use cases. For example, the deepest state may have a wakeup/resume latency that is too long for certain use cases. Or, some wakeup-capable devices may potentially be powered off in deep low-power states, but if one of those devices is enabled as a wakeup source, it should not be powered off. These kinds of constraints are are already known in Linux by the use of existing APIs such as per-device PM QoS and device wakeup APIs, but now we need to communicate these constraints to the DM. For TI SoCs with TI SCI support, all DM-managed devices will be connected to a TI SCI PM domain. So the goal of this series is to use the PM domain driver for TI SCI devices to collect constraints, and communicate them to the DM via the new TI SCI APIs. This is all managed by TI SCI PM domain code. No new APIs are needed by Linux drivers. Any device that is managed by TI SCI will be checked for QoS constraints or wakeup capability and the constraints will be collected and sent to the DM. This series depends on the support for the new TI SCI APIs here: https://lore.kernel.org/r/20240801195422.2296347-1-msp@baylibre.com Signed-off-by: Kevin Hilman --- Kevin Hilman (3): pmdomain: ti_sci: add per-device latency constraint management pmdomain: ti_sci: add wakeup constraint management pmdomain: ti_sci: handle wake IRQs for IO daisy chain wakeups drivers/pmdomain/ti/ti_sci_pm_domains.c | 124 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 123 insertions(+), 1 deletion(-) --- base-commit: ad7eb1b6b92ee0c959a0a6ae846ddadd7a79ea64 change-id: 20240802-lpm-v6-10-constraints-pmdomain-f33df5aef449 prerequisite-message-id: <20240801195422.2296347-1-msp@baylibre.com> prerequisite-patch-id: 57f574b3f686c62cc0e255f52b2b8b96cd8b1661 prerequisite-patch-id: 0dc60150f10bbd6e0d7ae19001075b859d7af2f1 prerequisite-patch-id: f4b971122cc54df199c0d95a6c4ed47db1dae027 Best regards,