From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8DD072DCF51 for ; Mon, 6 Oct 2025 16:43:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769013; cv=none; b=V/WNeq9Zvd86eTfZ3e0te8i6ETR85MIi8qaPToBNLt/YmFQoSBJ99Sp0N3QFBJhp4fArmo8nh8qz2J6rqIqseIzD4jpI41oq0lZwPqANwAguVEfJJE07TLCO1Dm3xp93wWbIgCCH8lFpTgYTUWRsWPNa288qOX5fsGNPuq3P7cE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769013; c=relaxed/simple; bh=2BU3Or20eOW+8/DchoNoBhvg8meChDG58BOoaEtXI6k=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=m1ZvpR0rJ+CIv98Wa76Gp0yJOB8jWNsRu0tSC3HJVCwFGfu/g6PtGa5l0LKIT0SvucjeEQxUsyq7ebZPT6UIxFfIK0ALl1OX1S/kzuKObKJrm5z2bdmHBxre5zzCsgicuHkczJ3F2cKZGyT32j5R71IgxGhU8hfj+3VGc53l09E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=QJQfDCv+; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="QJQfDCv+" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-b3dbf11fa9eso960434066b.0 for ; Mon, 06 Oct 2025 09:43:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769009; x=1760373809; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ZygAzCt4BgJHIzlNAdvVKPmowO3lR1rw3aDJhpq+oRQ=; b=QJQfDCv+zXuT7IVL9dr3s2AkwfHatRt23ZMYisoiNIvHAiXkPO+WkMHAk4M7VJW2Xy mjcrX7iLoQQZE6C9pLdFl9S9d/ZPCd+t6qEkWVE/KQIuWIfFvX2Jv0Gsctl8uinvyjp/ QXBCvyqIBXglir0NtOyROSO+uz+4cjy0PwYxc86cHuIVAMsBWbpeRJj+cDXyJjF4YjJx Vg/c0dtwwNuzZsQobqqPrKwaWXzm/fybtpzhOJXvgDoJ8p6DErC4YHkK3g/hyXzpc1WD G+TQ6lYVhkGE5yyMfVWrCN8fNtQps+8kF3hW5V76FO0aGOlz/wnSyu7rqYZ/9r2xvg8J F+7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769009; x=1760373809; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ZygAzCt4BgJHIzlNAdvVKPmowO3lR1rw3aDJhpq+oRQ=; b=sz2hkUkZHFhasyfqReE4Jk1ZVohbvZ72E5Ii6Xm1oAhw1hXtC0UERK3mm2ovje7vl9 IThff6NP9ng15wNYcS17DQMeEKaPDeaL5WL0V4tv7fQtznXg1LsXSlmTdXF9dNgfwuEH oRpXhJJh8pQOLekjksOTxvMed5MxOmgx/0tCafpmwwGZtSq/PTh6bhL2voC191v0sbhe tnRYlBCXfUa1FHTh2H4PAQBYVTedmja8UgcL4s+ww34IhY7vFsuTLwCfvqdJyGUybfnX sUc1NUn+N2sFvff8qT2bGAIL2xUlrRpEZM/QCYxb/vLwkRkR51/TvV7/SDr+JuYII/Q4 eRZg== X-Forwarded-Encrypted: i=1; AJvYcCXEkRacpFyAGWJTQjTIqYPacHCNf6ESNoP3sbdnJlMX7lJR7N7W/N0I2A7zu+RCaofP65newMZXi06zil0=@vger.kernel.org X-Gm-Message-State: AOJu0YwNpmfsiUf7CLFJ3eVX1u8pAvjyoMABPfdyw65pr5odTORZBjmn ka2ROBvPJu++5qY1E8ZwYVYMh2+gX8rjisOE8GJJ0IzSJ/0duve1ulIxzweuvqc5sWQ= X-Gm-Gg: ASbGnct1e3MlJXq4QnQxTs461sOJE5t3HWME8lLaqecOIjmOFHikEZ2zlSvcpsj424h HofwPUBDdzHCpil5dwN/ph1TukEdMbNNXJUaaB2DKzNFWOWpqPlZyPPEJFT3pT2Sc8tYboDMTrJ KC1uRpa4USiMPRqBd7jU8r5q1V/xCasL7M9bEX/EuxHBox7yr+wqOl7RJByA5p8SEiRGQvKBdUe oZzUWh4+5GJNU1kV+8tCpIIGbJ2oFfZr2wDkRTlIp9MrpZU8Cec3HpB4QCPxUOXduR9ixzNFIVk FL/sRVhNudTg3B4YrIWvyFx4E0gwOY9CtJwqeKD9CYGfUlHpicwJ/hgQJaLu35jiZXq/uHUpp62 iANfu84Tcd2LblXWX83FK5D8g1+ts5Ef2AsXW+OsDKi24DGIGYwY3QDA6XA+FbiYxvGazOB1T9F I67y+pEJERZPwjVrOWI0gvFeaoXEcxXpLTFI2rm0+DWYKRvixihhY= X-Google-Smtp-Source: AGHT+IFKZW5wiQTkUSviOMSQIOsmLTTkBC5m6wYT7o0NG+U9VIzLggcGukVJvrDeFkRocqCcAImACQ== X-Received: by 2002:a17:907:1b26:b0:b45:1063:fb62 with SMTP id a640c23a62f3a-b49c1d60b06mr1448559466b.24.1759769008797; Mon, 06 Oct 2025 09:43:28 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:28 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:27 +0100 Subject: [PATCH 01/10] dt-bindings: power: samsung: add google,gs101-pd Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-1-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Add support for the Google gs101 version of the Exynos power domains. A new compatible is needed because register fields have changed. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Peter Griffin --- Documentation/devicetree/bindings/power/pd-samsung.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/power/pd-samsung.yaml b/Docu= mentation/devicetree/bindings/power/pd-samsung.yaml index 9c2c51133457112ca0098c043e123f0a02fa1291..c35c9cb0115d79e5c36142da2c2= a5dd30cd2ad47 100644 --- a/Documentation/devicetree/bindings/power/pd-samsung.yaml +++ b/Documentation/devicetree/bindings/power/pd-samsung.yaml @@ -19,6 +19,7 @@ allOf: properties: compatible: enum: + - google,gs101-pd - samsung,exynos4210-pd - samsung,exynos5433-pd =20 --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 35B672DCF7C for ; Mon, 6 Oct 2025 16:43:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769013; cv=none; b=LE/gXMbjNn/Q1hEHZpAFZjUqAyf1nr947J33tQrLfMbkIoRsD0LYYsxFduBOuAj3wcqzmU6S6x3N8+8oLTirxTGE4834KjBJcWdPuq+82FJGokJGVvmYtT8obm4L4OfL/q96yMa9QZHFSP9lG2y5srtYQKet/sUjpx4nLYjqdDY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769013; c=relaxed/simple; bh=wLNu+/DsN5vQuzcNh6XEOEj8a//dvPEfokNHLsVRk/k=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=GbhNwAuQOkjm/iybmoc/TpG+tK4E1IYqph3P9reE44wzxlLMS+aPwfZ90cFxDYG7mFoYCThHuxtknDUl4Q8PEFdpzXZYJ7KxouKau0wgRJat5fTUUBSfzIz7l7tmYCA5FtPDrxdFy2qW1N7kHtQU108ADCMAZswX8taiFvRfBJs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=eORaqWC6; arc=none smtp.client-ip=209.85.218.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="eORaqWC6" Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-afcb78ead12so929856666b.1 for ; Mon, 06 Oct 2025 09:43:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769009; x=1760373809; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=cRXbXMcdQaybVyL41swV860lNNbaXOzw6nia42KxTE0=; b=eORaqWC6L/7zu+5Qkr2CnVg9Hjc39/nT5r4jLMYGoKL4VpzOAMWtZoEQJZf2CJOUbj OMXv725KUHuNDI8da4Gze4W1KAoYgE9sqldwLxJg6RGtSf7SHqRy7hZPAsCeKFFo8gpb Qwp5JQ+cUIZxAiqWLovkrs7n8Zj3ZvKQrl5s1QtOiXyblh7KQLOMA/fe6dLpjuSuppGh 6Zi2y7xcEQ3RVy0cmaiE0HSHHnyvo/OqBSA3X8xDTVgFfRrl3Dkx+xUrU1kZ4Yl8tNWe y6VCC6kTYteCtjfP6rawCuv2o+JbsP0NdazrbS8/72UUZO08+irLYKeld6OtBQfg+6BA 10hQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769009; x=1760373809; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cRXbXMcdQaybVyL41swV860lNNbaXOzw6nia42KxTE0=; b=Oo4bYG0JfcYBR0cyFZ4PSKpzdKokKpSorsj+5ukQj5EgBLD0mBVYecqBUkPAO0hBYZ VBLfJ6QjeWd7FG5qypNrVI2tt/pwRkVszLyC3y3SdVWYPW7DdOHOr04+nhitqtsAykXE Ji+dhMyLVOrLyObDnvCLxtU1VwAmC4yUPr+CJj7tnZlZTVq4TPK/DZvSOXqgyN0gZnvA fJ6N4GlZZocDfK5Iibq7WBLzEPohTIJ57NBk9C/rSv3mVDNRi98HXdD/AK1sKTAg7MFZ ig5oMNVJ5XYdxbtdB3+s94nUvPsGUMCV/FWPnYicUkCKZVTOYb19tNMZJxkx8dRkP0fp 45hQ== X-Forwarded-Encrypted: i=1; AJvYcCVTP/3fXcIWfG/orUthdUeraWa0OvNJhYaU3MikJHaI1Tm87awFCwyqLs+1wEMOjXJnKf17Il4HPvoimAw=@vger.kernel.org X-Gm-Message-State: AOJu0YwpA+4wVEGzpYbhsEVn8JEQKtiydh868gljBmiLcbmGkEm6vP3y 464Qz47DGw4p1jpOwTpJPW8CtRh9RPac0F2AdCXFMSBJZIDVCVsEmYiujjELGuBDGAQ= X-Gm-Gg: ASbGncu0bqnPJawKNeK0e6BurXolPzcWqoarw4XgXEWR2K4q+2QVlxhBUqt6dHzQq/0 lFMtTKWrt8Q0iQB/7p1F9GauG3uEbK12Jx3+Ug86AYyS+YbwARX+x261RQ+LMucc9DeykAWdOvs S9MHvoqt9tRPnETy59hqqwEPPuDLhVbNGe7gxHWfpYwhxNW+QuxQr+4cQh6IlMSI3i9RANsLeRv zTCsDFdgbWXWRJRTpGePxa3fMoOZfzLvk82Gk8NYBO0k8r2EKtwGcm7SKeeqeLHOvs3uhQVtL68 UT2V2wC1ixyptz2JvpN0+Ogd3A2YGdBTNxhF/LVBtWQXSH/3kkzs2ON72JokdtBqqjn9ZckgNYd BMRrTlt1DRLT5ejJ0NNL8gJe0MWc19rrT8oTrgGDAiVNVefO3m90Ozhn1HhXG3EcEUQRFgLI7eS 9bvt3A2wZMP3uhyFUKkmoyu/Fhrd/fZ0sBFqg+AnyNa4WpPbo/xNw= X-Google-Smtp-Source: AGHT+IFevyytLGxXOVyUvp2iRJsBS5AIBa1K8SbZl4T99bvaj+wJPujm9cyg6wpDoYz18ydBH9OBMQ== X-Received: by 2002:a17:906:c108:b0:b45:66f6:6a17 with SMTP id a640c23a62f3a-b49c429cf5emr1502398466b.45.1759769009323; Mon, 06 Oct 2025 09:43:29 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:28 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:28 +0100 Subject: [PATCH 02/10] dt-bindings: soc: samsung: exynos-pmu: allow power domains as child on g101 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-2-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The power domains are a property of / implemented in the PMU. As such, they should be modelled as child nodes of the PMU. Update the example while at it. Signed-off-by: Andr=C3=A9 Draszik --- Note: Ideally, the newly added properties (ranges, etc.) should only be 'required' if "^power-domain@[0-9a-f]+$" exists as a patternProperty, as they're needed only in that case. As-is, this patch now causes warnings for existing DTs as they don't specify the new properties (and they shouldn't need to). Only if DTs are updated to include power-domains, such an update should also add the new properties. I've not been able to come up with the correct schema syntax to achieve that. dependencies, dependentRequired, and dependentSchemas don't seem to support patterns. Similarly, - if: required: - ... then: required: - ... doesn't allow patterns in the 'if' block (or I didn't get the syntax right). --- .../bindings/soc/samsung/exynos-pmu.yaml | 53 ++++++++++++++++++= +++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml = b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml index f0fb24156da9b8980dcfd5339ae75f12a71cf6d6..c2db1cbb969a9a6fea5208dc299= 0f2144fa480e6 100644 --- a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml +++ b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml @@ -93,6 +93,14 @@ properties: minItems: 1 maxItems: 32 =20 + '#address-cells': + const: 1 + + '#size-cells': + const: 1 + + ranges: true + dp-phy: $ref: /schemas/phy/samsung,dp-video-phy.yaml unevaluatedProperties: false @@ -138,7 +146,7 @@ required: - compatible - reg =20 -additionalProperties: false +unevaluatedProperties: false =20 allOf: - if: @@ -201,10 +209,27 @@ allOf: enum: - google,gs101-pmu then: + patternProperties: + "^power-domain@[0-9a-f]+$": + type: object + description: Child node describing one power domain within the P= MU + + additionalProperties: true + + properties: + compatible: + const: google,gs101-pd + required: + - '#address-cells' + - '#size-cells' + - ranges - google,pmu-intr-gen-syscon else: properties: + '#address-cells': false + '#size-cells': false + ranges: false google,pmu-intr-gen-syscon: false =20 examples: @@ -231,3 +256,29 @@ examples: #phy-cells =3D <1>; }; }; + + - | + system-controller@17460000 { + compatible =3D "google,gs101-pmu", "syscon"; + reg =3D <0x17460000 0x10000>; + ranges; + #address-cells =3D <1>; + #size-cells =3D <1>; + + google,pmu-intr-gen-syscon =3D <&pmu_intr_gen>; + + pd_g3d: power-domain@1e00 { + compatible =3D "google,gs101-pd"; + reg =3D <0x1e00 0x80>; + #power-domain-cells =3D <0>; + label =3D "g3d"; + }; + + power-domain@2000 { + compatible =3D "google,gs101-pd"; + reg =3D <0x2000 0x80>; + #power-domain-cells =3D <0>; + power-domains =3D <&pd_g3d>; + label =3D "embedded_g3d"; + }; + }; --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ed1-f52.google.com (mail-ed1-f52.google.com [209.85.208.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B4F7D2DE1E3 for ; Mon, 6 Oct 2025 16:43:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769014; cv=none; b=jtOktPEyPDKfarCtx0HBLKCYexZWzvKRJiElpqrLe92gNfo0ReaEr0DamMYafwo2CgIz+MCg72cOzhzcrsGKSwVMz6/Mb0JNhEFz8dj+5VEHkC6zmw7TVm5LKDf/J+aplgoe7nWlqEXm0SMT8ZLP7AsRGJy5U5rJHfXlf1pH0r4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769014; c=relaxed/simple; bh=N12UH+jph8ILpPyH5wUhl5Cae7bjK4ZW+ZRkQnlfLXE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=sFb9fhT7q2G/XUW+c5Lh2BdeX+A04VANRuDYwhgfgESoF86IgkuA/V+WZgKImaXLaXo/R6O5zXOiGFrS9hrQbi8YTZYhH6s67Za5HZHUqjMux+wqb/RaLelOz+ZG2jbIM+PGvtdfmMZG97MDGOiZtRHrAydIT1dPnCjNmSG2DJ8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=foZG/4ac; arc=none smtp.client-ip=209.85.208.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="foZG/4ac" Received: by mail-ed1-f52.google.com with SMTP id 4fb4d7f45d1cf-6394938e0ecso6304809a12.1 for ; Mon, 06 Oct 2025 09:43:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769010; x=1760373810; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=CpB7AuKalXwpl/RbLMZ5nDUUEYNNft2mby5//un8yy4=; b=foZG/4acFSo8tjII9p83nnmmHQ43/8rHlxdnafsnLeeug5KYhYCvCqZUCABT9iXfMu JHRolp8ppzrvtzR2Ud0X+srdJu9wFn5jlrC8MLiyU9DuOeD5maxI0NSMzVA048Qgmttg yhVnH00guNl0Mkz5J8WOLf2obxoAVZbF984zkWWChWOODaZNhlpJrptlmeeb45fRdRDb W9uNAolvkrBs8o8IeS1rvXQBKX1Y14rD4Bzmgk2Tr6iDtJ2++8+ypeyjAJNrbvA69lz7 tD3rgI3CU7my2narx1ba6OIshr5+yK8CUss28jaf1pus1us7pqaculR/yjVhbwONbZIC PCIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769010; x=1760373810; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CpB7AuKalXwpl/RbLMZ5nDUUEYNNft2mby5//un8yy4=; b=Igc+2uBkN08CM5D2kYGG9sZuHb58qWgftYMGQGlKIurZbA3qUmhulD2fJS5JTJdMrq 4FMC/WH2BgaPYVeEStJSw/3x3uWNd2XBa7NXUndRZZMGbkr82FV3rXP6EMCs3oelnMb1 u4bwgQnh1zP9wJqXch9HvWMihVywWFl+eEaa55NDry53uNWkUhB85n+bKkgerYfzB6lk Xe6VHkiluWCR2Cn6i3wACFMwbOJWitRld6N91NRC1wuEHSTu5llxUKOI/hXLNqaPMBq/ yWSViKwa9qLFew5wL63SqrvDT+j609/riGkSRQtjaCnZ82378XbT5BHJ2npf+HGtiJS9 /MXg== X-Forwarded-Encrypted: i=1; AJvYcCV5WVLP5vdZ6+q5G8/hT0VJwAin+FTVT7yRP43iP5R41ty8HIe/QxbJ2/7lAniBqhB+xssRsc+Q872nrTc=@vger.kernel.org X-Gm-Message-State: AOJu0YwTu7Wclrq39iy/si0YcSY8Pp5llN05SdpewRkhXDv/lhMDOrgQ HX2M2wKW5R34LsLh4pHJj6uXN+wTylnkB2cCSx/lqk3+GyqnTAFDZqO56IQoe/KbsdQ= X-Gm-Gg: ASbGncutBwhnpiwFoZ8B19PorgFoNZrCxmyy0STL87X0gLEJwwWtieH9QyNOnHeNpKz SIIuJQmQQjBwnGsLySMiZ2xmzLQ99D4hcdnKcf5g2i6cwfH150lVuMjfDWSPTRBpTQZOK8PVTRr Y621IS2g6mPJHaGDB/cSj2tzEki+u03c5dmFFnrrRx7uVLaOnH7NeyjSAl5pw+cDTSCZAfGyr/r umzp2pkoqOczEpGFocAig/ADTGiMsxHz8X9oaPenYSjTRI7dC4cpv0prp4P+RwPZH0P4Mw9rZO1 LINKaSf/tsu/D+bzakfdvfGPwDZKLQ2q+yg+QlTxughBH78MOrq73ScO29ynvhSTDKIChphu3nR 0TsM3c6Z/rTfup57Yfk6dnbfGe0tmBmpbhy9o9EappWbkXPGn1kxIftdDsgzeBq/5VkUNSn3ZtX I2JP/xCeu07l4vhZRVmFc+Pf5xRlZEjRdHN2uevV4eZaYOIJQ3SLQ= X-Google-Smtp-Source: AGHT+IHBkJ6T+XP8HkZDYRjvyUd2ghQ/PYqM+/0Cceabo1BsPtNMlQLAkihUvoTvqsgb4eUlM6RIwA== X-Received: by 2002:a17:907:3da0:b0:b48:44bc:44f2 with SMTP id a640c23a62f3a-b49c393a608mr1526934466b.43.1759769009794; Mon, 06 Oct 2025 09:43:29 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:29 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:29 +0100 Subject: [PATCH 03/10] pmdomain: samsung: use to devm_kstrdup_const() to simplify error handling Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-3-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Convert to using devm_kstrdup_const() so as to simplify cleanup during error handling. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Peter Griffin --- drivers/pmdomain/samsung/exynos-pm-domains.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index 5d478bb37ad68afc7aed7c6ae19b5fefc94a9035..f53e1bd2479807988f969774b4b= 7b4c5739c1aba 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -92,13 +92,14 @@ static const struct of_device_id exynos_pm_domain_of_ma= tch[] =3D { { }, }; =20 -static const char *exynos_get_domain_name(struct device_node *node) +static const char *exynos_get_domain_name(struct device *dev, + struct device_node *node) { const char *name; =20 if (of_property_read_string(node, "label", &name) < 0) name =3D kbasename(node->full_name); - return kstrdup_const(name, GFP_KERNEL); + return devm_kstrdup_const(dev, name, GFP_KERNEL); } =20 static int exynos_pd_probe(struct platform_device *pdev) @@ -115,15 +116,13 @@ static int exynos_pd_probe(struct platform_device *pd= ev) if (!pd) return -ENOMEM; =20 - pd->pd.name =3D exynos_get_domain_name(np); + pd->pd.name =3D exynos_get_domain_name(dev, np); if (!pd->pd.name) return -ENOMEM; =20 pd->base =3D of_iomap(np, 0); - if (!pd->base) { - kfree_const(pd->pd.name); + if (!pd->base) return -ENODEV; - } =20 pd->pd.power_off =3D exynos_pd_power_off; pd->pd.power_on =3D exynos_pd_power_on; --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ed1-f41.google.com (mail-ed1-f41.google.com [209.85.208.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 443212DE6F1 for ; Mon, 6 Oct 2025 16:43:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769015; cv=none; b=DSb+Oje1gw3cjTig7DzIGfy0zAViR/R5BkOpdIldL0akemdMYb8y8ENKhWJmxjPGvzNKS8c7UWKWkB32lCxEnqARHojhBpqR5o/L0W++pUTOCr4KnwZIk2gRShwEuS1a9XoRQWLokgP8V9pkS0wvrUuFoYEz0J7PNviUVzVN+cw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769015; c=relaxed/simple; bh=MmooWtSwyNxH8293LjogrmzXAohDxJ5oHpXuWWJ/W58=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ByRlMBZa1TaZL9E67/2N9zs7yGcQLh0EgfpfWytm6d2umodvcCjojz+x3ZpcVfFRZX5JphhwMRTncahW7hBYSQxyQAhR7jMptC9awhIUCOe/XaAV5gRBZytDXuJKqLGh9io009QFIi9hLcaWUjfy3mz1T6QHntyQpxuV1HvgAVQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=cRoJhF6J; arc=none smtp.client-ip=209.85.208.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="cRoJhF6J" Received: by mail-ed1-f41.google.com with SMTP id 4fb4d7f45d1cf-6349e3578adso9291672a12.1 for ; Mon, 06 Oct 2025 09:43:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769010; x=1760373810; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=XO3U9E5jlyRzt5gakHuWl7JAgxXNMoK2+FWGHF/5Pz8=; b=cRoJhF6J7TaAYBQYDdqshiI9axVhTXcDH+DiQNXjG0rQ92L8Euie5LolKSJMcSP+3b Hhxhb5wJJ1j4A+kU7ddfBmr+Mkg2UJ4vxttG7qoWe52d2W0ycgbpI97lR6U82mUZ2TsJ VNDD6QNS/ZSNjw3yroABVRsfcTSE//yxnDaC1+IbRTQCQdRjxKaIJ9bitmc9mtPr9nq0 kSiusIFb2OVSEtO0DWoadvmG8dwTbqT0H+S7JDNNfUxtp0p0qcGBwbxTXF91yq4t0P4M f8WRkQIJDiGr0sT0bp/mmy8DEfwagcUz2MTiQG/4wjsnJ4KETw5RkU1La/0WVRMbKIRE zhNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769010; x=1760373810; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XO3U9E5jlyRzt5gakHuWl7JAgxXNMoK2+FWGHF/5Pz8=; b=GFLQfYy2Fe5XF6XBPDzvodbVBuUGgpnbq05PWbt4W6C2l3P8PZPNZ1IOAXqulhOItg /9AbeNYCLjVfxGj0r5pSVQPvdJMsR2fQR/3mCRm6CjCxsOYxUab3oUMWrObJx/PtUvoA DGxxRx0Q1neMCpREVWcIRMKHvVywUnnev3qOK2HGGYqL6JQ5Sc9oB540scs3z85v9Ocf D7ZybJPDIKSm05qkMKJpekKXmx4wuqCaYGhM19wdRKqMB5uRHpyEwB/OaDga3T/0zXHd UgZ5uO55UUe0EtUAhl8mNA/njMJERdeq2DxjbY5x3yqbwIJGDC7mts3CpgIcd0ghpB7m Dtsw== X-Forwarded-Encrypted: i=1; AJvYcCWeScQoKCxxt5kJ59s44x1bzXNbra83mTYmY++OB2sOPAMtuQq2QVWwpPxZVIIdeNYU7zQ5McVf263ks3U=@vger.kernel.org X-Gm-Message-State: AOJu0Yxk/QpZzMP24CbqHtxuI5PQXuPRH8qicIbg51F80tkSF+9hSVG3 HKniLD2jYpFBB0dY4NiuqQmTaJahruZbPaFvmEm8NrFjFIs1n9KRSvC5tT5YuiFKe0tVjo6lHBm sejrKrsE= X-Gm-Gg: ASbGncuPUVK9/9D3dPNgvzkTkuG4EXHeFxdtlDGo/X+2mXTzBd8DGz/YATe7jnxXMQX SdzZ02DgR2CwpCkasWUKpP43DvzrI8xNSOKjgP7rqDUtx1ZuO/qh2/g/pHwfSwFCWYr1yy4CrSD Xl6lgKw/tTfdpFL92fLb+bqFYrhyvQ9eunSIyft67DbvNY6+K+0j2QxwqcSG+YfOYvGoDG35a+A hSAEM5uD9ZOxo2br8/ZKqAQH2cWjOnt6ZDePRdX5ypvbsy5QCJbqW+MS+oQg6nFYLCChxL7Cbm4 0sXeHBpIdSPuXq9qAtrx2R01Or6V1DspyunobIE7JQFKSSBKMLc7zutXz7ZM0Ml464FmK5eoe7z l+rrG2tXKE+LiI1e7EHawae2LUuRjKj9DPSlP5Ho92i8dLQsBbdfT3/lnQBpTZ9IgCn6mW9Gf4p Vgu1H3aMq5UtEse6U+E/YwJxxvzVZuZbTfty/wGdlx X-Google-Smtp-Source: AGHT+IGS3njBrZsQ87tYM91STie880rOmzE7eSI7lZ+5noJx3QO+oaLr3u+TwbXHZ8Hk5CihM+ezuA== X-Received: by 2002:a17:907:6d0d:b0:b43:b7ec:b89a with SMTP id a640c23a62f3a-b49c214bb24mr1487687166b.26.1759769010288; Mon, 06 Oct 2025 09:43:30 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:29 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:30 +0100 Subject: [PATCH 04/10] pmdomain: samsung: convert to using regmap Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-4-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 On platforms such as Google gs101, direct mmio register access to the PMU registers doesn't necessarily work and access must happen via a (syscon) regmap created by the PMU driver instead. In preparation for supporting such SoCs convert the existing mmio accesses to using a regmap wrapper. With this change in place, a follow-up patch can update the driver to optionally acquire the PMU-created regmap without having to change the rest of the code. Signed-off-by: Andr=C3=A9 Draszik --- There is one checkpatch warning, relating to the non-const regmap_config. It can a) not be made const without resorting to having two copies and copying, and b) will go away in a follow-up patch anyway. --- drivers/pmdomain/samsung/exynos-pm-domains.c | 78 ++++++++++++++++++++----= ---- 1 file changed, 57 insertions(+), 21 deletions(-) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index f53e1bd2479807988f969774b4b7b4c5739c1aba..383126245811cb8e4dbae3b99ce= d3f06d3093f35 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -9,15 +9,14 @@ // conjunction with runtime-pm. Support for both device-tree and non-devic= e-tree // based power domain support is included. =20 -#include #include #include #include #include #include #include -#include #include +#include =20 struct exynos_pm_domain_config { /* Value for LOCAL_PWR_CFG and STATUS fields for each domain */ @@ -28,7 +27,7 @@ struct exynos_pm_domain_config { * Exynos specific wrapper around the generic power domain */ struct exynos_pm_domain { - void __iomem *base; + struct regmap *regmap; struct generic_pm_domain pd; u32 local_pwr_cfg; }; @@ -36,31 +35,37 @@ struct exynos_pm_domain { static int exynos_pd_power(struct generic_pm_domain *domain, bool power_on) { struct exynos_pm_domain *pd; - void __iomem *base; u32 timeout, pwr; - char *op; + int err; =20 pd =3D container_of(domain, struct exynos_pm_domain, pd); - base =3D pd->base; =20 pwr =3D power_on ? pd->local_pwr_cfg : 0; - writel_relaxed(pwr, base); + err =3D regmap_write(pd->regmap, 0, pwr); + if (err) + return err; =20 /* Wait max 1ms */ timeout =3D 10; - - while ((readl_relaxed(base + 0x4) & pd->local_pwr_cfg) !=3D pwr) { - if (!timeout) { - op =3D (power_on) ? "enable" : "disable"; - pr_err("Power domain %s %s failed\n", domain->name, op); - return -ETIMEDOUT; + while (timeout-- > 0) { + unsigned int val; + + err =3D regmap_read(pd->regmap, 0x4, &val); + if (err || ((val & pd->local_pwr_cfg) !=3D pwr)) { + cpu_relax(); + usleep_range(80, 100); + continue; } - timeout--; - cpu_relax(); - usleep_range(80, 100); + + return 0; } =20 - return 0; + if (!err) + err =3D -ETIMEDOUT; + pr_err("Power domain %s %sable failed: %d\n", domain->name, + power_on ? "en" : "dis", err); + + return err; } =20 static int exynos_pd_power_on(struct generic_pm_domain *domain) @@ -109,8 +114,18 @@ static int exynos_pd_probe(struct platform_device *pde= v) struct device_node *np =3D dev->of_node; struct of_phandle_args child, parent; struct exynos_pm_domain *pd; + struct resource *res; + void __iomem *base; + unsigned int val; int on, ret; =20 + struct regmap_config reg_config =3D { + .reg_bits =3D 32, + .val_bits =3D 32, + .reg_stride =3D 4, + .use_relaxed_mmio =3D true, + }; + pm_domain_cfg =3D of_device_get_match_data(dev); pd =3D devm_kzalloc(dev, sizeof(*pd), GFP_KERNEL); if (!pd) @@ -120,15 +135,36 @@ static int exynos_pd_probe(struct platform_device *pd= ev) if (!pd->pd.name) return -ENOMEM; =20 - pd->base =3D of_iomap(np, 0); - if (!pd->base) - return -ENODEV; + /* + * The resource typically points into the address space of the PMU. + * Therefore, avoid using devm_platform_get_and_ioremap_resource() and + * instead use platform_get_resource() and devm_ioremap() to avoid + * conflicts due to address space overlap. + */ + res =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (!res) + return dev_err_probe(dev, -ENXIO, "missing IO resources"); + + base =3D devm_ioremap(dev, res->start, resource_size(res)); + if (!base) + return dev_err_probe(dev, -ENOMEM, + "failed to ioremap PMU registers"); + + reg_config.max_register =3D resource_size(res) - reg_config.reg_stride; + pd->regmap =3D devm_regmap_init_mmio(dev, base, ®_config); + if (IS_ERR(pd->regmap)) + return dev_err_probe(dev, PTR_ERR(base), + "failed to init regmap"); =20 pd->pd.power_off =3D exynos_pd_power_off; pd->pd.power_on =3D exynos_pd_power_on; pd->local_pwr_cfg =3D pm_domain_cfg->local_pwr_cfg; =20 - on =3D readl_relaxed(pd->base + 0x4) & pd->local_pwr_cfg; + ret =3D regmap_read(pd->regmap, 0x4, &val); + if (ret) + return dev_err_probe(dev, ret, "failed to read status"); + + on =3D val & pd->local_pwr_cfg; =20 pm_genpd_init(&pd->pd, NULL, !on); ret =3D of_genpd_add_provider_simple(np, &pd->pd); --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E2F032DE70C for ; Mon, 6 Oct 2025 16:43:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769015; cv=none; b=FbhplzjzRLW49g8MFlZ1Nx8kMCZqJgcEdF5BofYrfBbyB1lS6bSsyWrDFErFB8mwZXXyhixXyXQZz5slqYBzqXUrg8F9dc/nlRK6JTsClDrp1E5feIv3kqhNk0rH6btZvFr528NKpdK+6ey7ZQ7jxuLTqclYRKjuovzeOlgOCEY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769015; c=relaxed/simple; bh=F1uL+g8fHIdluDJ17bb7cBAahVnwEqXe7c0YoRzXMUc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=IkGGRW7QKTG+5N7QK1hRUnrdnzyWQnzYwnNNR3s4CGqAuqVvFIk9cuNRSdVDQGf96Br+V2axScP+YfdxOVYv9Xmw88dXNAk0LBZnkLYVcHBj6fYucuebehfEX8kgtYoIn9VDnAqd8BEtLAuK51Zd/aGs+IopoUBWMIka5fGQ5ZI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=LmDDOGB7; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="LmDDOGB7" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-b463f986f80so743214566b.2 for ; Mon, 06 Oct 2025 09:43:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769011; x=1760373811; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=6WkKVU8kwH4FiIJkp0DFrv47tH1tikibDwgyehQFExE=; b=LmDDOGB7GKg+D5zNzk161J9w9e0PqNDyaEI9HNsDaljwYGSIu6cV4nHwu98Ln2/Z3w XG4+PxnxnexQ77blutt7xbk22BBL0I/8Z1CuUVfPODz8W8UF1VLd3sIZWNN4AAERbwFL qbozblaHYi/bVMEOz+rSlHolH/zKLgCsczCHpTDU6amCHbFw1UUeaZ8QPxPCrpw6zuAy xdTqIdQJJtsubFhcFt6cV4PwNn+RUdJyNqGUYUL2iPdLXEC8wPYQK50cKd2ctxtgwzXn IaEYNq2Oz8j06aKQDmRL81I3ia17NUgOhPQLcORYjj/9c3/8P7Au5X7wPGsHpvM9vMtC ldNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769011; x=1760373811; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6WkKVU8kwH4FiIJkp0DFrv47tH1tikibDwgyehQFExE=; b=Up7NsNDJcgkuuftLW05DrrRLNedoXTpNcXm+QPCFVjPCZHfcajfs+LMYrmHpKc2lue PfozTO472okml5Wanz/PJjSrHIz8TzwgJsMCbYbBWwnU9UXSgTDQcvKwvLbQFDn52KoT vYTBcRTeesGLERzjFcXHFifAIUHFbXl5fpL8asXblvqkmQWUhuZeDmJoN1rHleCeOQjk TRKezs3hmdnK2rLNdaQIR/COhWf0Ch89I50O2MjDf9KTFLesiJu38Emn9WDnBwho/7tq /bPla9Zudb2zrazhnGQGUdSaH/iyidzix3A82tW17s0+f/tVE2Pa9obZiHJwNhZ00evQ CGpQ== X-Forwarded-Encrypted: i=1; AJvYcCXkBruinCBWJcUniC5BxIytIE2aXCfxMZw47pWVaZXHsaGVtOPTklGhi93TVelQVnuYHIErbRbPuxIQNvE=@vger.kernel.org X-Gm-Message-State: AOJu0Yyf/u7juTaT9UWjabia+Kt0ut7Fr0buHCmCGiBO529U773Zr6UO 6nqmaZaunHlwzIsg3ItICgopHica+YT6/96MIy1pttH8weFYtQfsOumsg5nPc8V6zEI= X-Gm-Gg: ASbGncsnUQWejhZwRDIr3/p+RzFCspuGiN+qbviQ4guBMskwHDOieCW8hSdyZ0QMyVB NN5aCvfyaVs+ZZ/UOkMrwiJF7+nWUyq7Kwi0D9bEMXkjHm9LciWAgX3xvB06RbmcmB5T8HkkmO2 45fLpbQkaSeS/WOxfEaRd8fv71jUd2cjHaAFCUzMZG17RqhxYAVkqA3K3txFON+DVhfdZqq/zf5 U6yqUeKo0Dzv7u0mMDD98SXIvxmI6LVqxE9RGOgWenb7/5TDZW7A7nV4mUkf3WliU+VyxavwUSK UsxnyULVOFm94qi+6m0sinVp/WPtlXMJoQvnKKp0G2r+cUHszCzLUnwAOgQz+GAPABXXISWk/4g l4OP0vlyN4D/KDaMcAq4WOiKJ7eQIE6KjBcyvQR4beW+EVKXv8U+50vQQFyBtRt1+XApCTzhD4a FHctws4wsbrxq6aqBE4o4CM6BRbBwez1qj448DjB1huVqLeROF1g4= X-Google-Smtp-Source: AGHT+IEG8W4Fgu15EAWixutgpzICMiJaZUNK8COlNrHcpfllaPfZ5W35myiVDFya7fewpU3c0gC6vw== X-Received: by 2002:a17:907:2da6:b0:b2b:59b5:ae38 with SMTP id a640c23a62f3a-b49c2761ad2mr1799899866b.40.1759769010845; Mon, 06 Oct 2025 09:43:30 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:30 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:31 +0100 Subject: [PATCH 05/10] pmdomain: samsung: convert to regmap_read_poll_timeout() Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-5-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Replace the open-coded PD status polling with regmap_read_poll_timeout(). This change simplifies the code without altering functionality. Signed-off-by: Andr=C3=A9 Draszik --- drivers/pmdomain/samsung/exynos-pm-domains.c | 29 ++++++++----------------= ---- 1 file changed, 8 insertions(+), 21 deletions(-) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index 383126245811cb8e4dbae3b99ced3f06d3093f35..431548ad9a7e40c0a77ac667208= 1b600c90ddd4e 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -13,7 +13,6 @@ #include #include #include -#include #include #include #include @@ -35,7 +34,8 @@ struct exynos_pm_domain { static int exynos_pd_power(struct generic_pm_domain *domain, bool power_on) { struct exynos_pm_domain *pd; - u32 timeout, pwr; + unsigned int val; + u32 pwr; int err; =20 pd =3D container_of(domain, struct exynos_pm_domain, pd); @@ -45,25 +45,12 @@ static int exynos_pd_power(struct generic_pm_domain *do= main, bool power_on) if (err) return err; =20 - /* Wait max 1ms */ - timeout =3D 10; - while (timeout-- > 0) { - unsigned int val; - - err =3D regmap_read(pd->regmap, 0x4, &val); - if (err || ((val & pd->local_pwr_cfg) !=3D pwr)) { - cpu_relax(); - usleep_range(80, 100); - continue; - } - - return 0; - } - - if (!err) - err =3D -ETIMEDOUT; - pr_err("Power domain %s %sable failed: %d\n", domain->name, - power_on ? "en" : "dis", err); + err =3D regmap_read_poll_timeout(pd->regmap, 0x4, val, + (val & pd->local_pwr_cfg) =3D=3D pwr, + 100, 1 * USEC_PER_MSEC); + if (err) + pr_err("Power domain %s %sable failed: %d (%#.2x)\n", + domain->name, power_on ? "en" : "dis", err, val); =20 return err; } --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 277C62DE719 for ; Mon, 6 Oct 2025 16:43:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769015; cv=none; b=ePs3IPDvVhGnK5mcX06FodNak6Yyu7Zhy6RS8Q7iC+2pA203F3mGz8bRDdfQHj/eys19iFHoW9EJK4u18BQoFfqwMuMc84vYaYlJp5ex0OCXkPHzJNStAy/lMQhiSUjER8wBgtWqehjBnIZw3PdAv9ETFl6G2m0Netgz4jhNlgA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769015; c=relaxed/simple; bh=geIKgWF2ALweoM3YZgXz0Zorhb0jTxVcchCl54bV0Og=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AyxiyBfG5LuKUieIngI4aHfeh3yUfJ4DrOUbVD++yQkAjIoIrQCHTrqE9EGsEVk5RnRSEV4XcPRuCAVCLt1eYtzkh55jjP2ZjADwvoQ6chtN878tM2zJiN/71W0lRsCvwRw3ss79NcEa3+JFidNk4TvJCKh4dy8pMdJgmHwGfig= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=wFEHqKBd; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="wFEHqKBd" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-afcb7ae6ed0so867574666b.3 for ; Mon, 06 Oct 2025 09:43:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769011; x=1760373811; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=TxwnlAP3n5M7cyJiouK6nx2qCN8Hw+Sbnl76f2YXigk=; b=wFEHqKBdBeQ2ei8jpQHWd7l6Tm/e7UCOh5/su4FIFADv9zrzduqO4UJQ3Cx5yX4K9A klcDvD6QWcrLTQGJvrIay1XWz3nJ4GKsC8xHIangXHXKcpmBFKD5ytX65mXaGD15yTl7 +e0SoNE4SuBDUHin48IYvlwrti9QYXrGSrCHrxnvmKnObFuWB19st0oDeD9PQubGOLn0 IdPdnvo+xS+qMhRu2/6vo2In9CFADENDaII3X2OjBvSvfPBzUD7uwv14MlS4Lwdi8/jX DZJ7EUbB4WuldhwMVvL+TkfCkh9YCxqBMXwhmOjU1+qcWKxhCogEPo/7K2tdyHG1ZHXf j5Pg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769011; x=1760373811; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TxwnlAP3n5M7cyJiouK6nx2qCN8Hw+Sbnl76f2YXigk=; b=MDITyfjOWTaxqoDo6sfKR3fd2uw71vS+KNfc7lZc4oiRePiJPZ/GlbTPTEM9x4Xv3M gkJ2SztD2HUh3hdAgq7yC+E8ebNqzacgr5GZlfR7GZ1HUaHZ2CqpA06V8aEVZiwE/azH AtqR8PyUW+qNz8FwJmQi2ZPOV1z2q3fuwB2dpcfFSpr8CSl6bQnqbxzUQQLyJZVEVvCD 7rC4F/6WDYY4lWbM0/AiQ4NyhQ08Qr3vpJN8jJaZxhblWB+c8BtL8DhfLVfmbb7a3feN e0feQvZsrn+wIZ0dFZP4cccrmXIwJLtwWPt62BjWnHioxf2DBwyK6VCaz4Fel+n12ly+ 77qw== X-Forwarded-Encrypted: i=1; AJvYcCU+jLLZRkHOF9duEJbqs06uWVRaC+yqkPT4d4cQz0qpURUAnxWQWkoxle1Y44Vyj4ugwNfceqxCv2WKKXQ=@vger.kernel.org X-Gm-Message-State: AOJu0Yy6kDuE6FWSiedGui/QL9CySAt53XOVOoK2OSElgZMoQ5zwfmdZ XHqyTOC0+MvNlHZzpk9W+4VVuIw5C/vyVsf64x7hdoXg33oWOGi1nmmKCvyW/uXh3lE= X-Gm-Gg: ASbGncvSZgVGF6j/pvFb9U/GJQvCWMwxLF86BEfj/jpAzwjigxl+TND3KcvHUKemIzG JQ3qBf0xQCdXFA5uE/gToAMUmWneqIpkUCtFK6Piw0HhSaxzM8wqLWokyTIsq1CVIEQYb4ADqOI 42kq9SZBVn5EdbcP/LLfV+K4NQuLdx4ohMasry27EsbGsh1AnTZdM6w5zleo6PRutE2HzXY7Ed/ JtIOsnyywJF5GFcv6xlSa+N+4zgNEUF+oxDpY1d7sAfhPqTBznChKsPVXRCwt+60VKisYXUHoLB JeDf4pxZH23wGwYaQfTBm2aXzdmUfIlokxJvmTPeA2jpLR5Nc2Y92as7NkKaQnYS7LlX8pAAM6n 5Zn0s2Br4e+e8xWgVKlmsIK298X7AmzKl0rl1R7rWnaZfAjoRqr8siRJTgXBEKb+2fAahJ+vNu1 /cxOzcTZK+iQT8BXYgB8jKEIkwk3q1UKO/r9NfHlix X-Google-Smtp-Source: AGHT+IE6Qi3Ngqwo98RrZzSI9Sk/ybN3uGg/1PQQF+EI33WkQU1ToLbh1rIvJ4g1vAv9PRSJV5XHUQ== X-Received: by 2002:a17:906:c108:b0:b45:66f6:6a17 with SMTP id a640c23a62f3a-b49c429cf5emr1502411466b.45.1759769011299; Mon, 06 Oct 2025 09:43:31 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:30 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:32 +0100 Subject: [PATCH 06/10] pmdomain: samsung: don't hardcode offset for registers to 0 and 4 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-6-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 On platforms such as Google gs101, direct mmio register access to the PMU registers doesn't necessarily work and access must happen via a (syscon) regmap created by the PMU driver instead. When such a regmap is used it will cover the complete PMU memory region rather than individual power domains. This means the register offsets for the configuration and status registers will have to take the power domain offsets into account, rather than unconditionally hardcoding 0 and 4 respectively. Update the code to allow that. Signed-off-by: Andr=C3=A9 Draszik --- drivers/pmdomain/samsung/exynos-pm-domains.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index 431548ad9a7e40c0a77ac6672081b600c90ddd4e..638d286b57f716140b240109241= 5644a6805870e 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -29,6 +29,8 @@ struct exynos_pm_domain { struct regmap *regmap; struct generic_pm_domain pd; u32 local_pwr_cfg; + u32 configuration_reg; + u32 status_reg; }; =20 static int exynos_pd_power(struct generic_pm_domain *domain, bool power_on) @@ -41,11 +43,11 @@ static int exynos_pd_power(struct generic_pm_domain *do= main, bool power_on) pd =3D container_of(domain, struct exynos_pm_domain, pd); =20 pwr =3D power_on ? pd->local_pwr_cfg : 0; - err =3D regmap_write(pd->regmap, 0, pwr); + err =3D regmap_write(pd->regmap, pd->configuration_reg, pwr); if (err) return err; =20 - err =3D regmap_read_poll_timeout(pd->regmap, 0x4, val, + err =3D regmap_read_poll_timeout(pd->regmap, pd->status_reg, val, (val & pd->local_pwr_cfg) =3D=3D pwr, 100, 1 * USEC_PER_MSEC); if (err) @@ -146,8 +148,10 @@ static int exynos_pd_probe(struct platform_device *pde= v) pd->pd.power_off =3D exynos_pd_power_off; pd->pd.power_on =3D exynos_pd_power_on; pd->local_pwr_cfg =3D pm_domain_cfg->local_pwr_cfg; + pd->configuration_reg +=3D 0; + pd->status_reg +=3D 4; =20 - ret =3D regmap_read(pd->regmap, 0x4, &val); + ret =3D regmap_read(pd->regmap, pd->status_reg, &val); if (ret) return dev_err_probe(dev, ret, "failed to read status"); =20 --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9BF2F2DEA70 for ; Mon, 6 Oct 2025 16:43:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; cv=none; b=rOk6XkfbfbvjKgXZy+mI1XIcauo04XZHTHQ9TzFTfuyIulCVgO33SkuWdN6Npht47u5WhNbHnJtqRAKriUYzpwa9pUiinUYttrikF0KT4+yogcjW3FpvSPQGOOc+GkCerC7HLaUUBOlyhZg1blDTdnvQHihCbS+14l1wHQRQdQc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; c=relaxed/simple; bh=lQFRfvIZm2QIrTnGZIlapJJgk3a/yMVJrj+Qv49vZDg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RY6vbVEpcM001OkqJtdtM0xBSONzgyI0N6b7OUxmakWZ6MlcKdVl5neQ3QgZw63rGpo7sqOaMrdksPrrMZAIGG6vFJ2nHtZHeDUa48LlRmMRUDhI7j5uIlqhp7hlRorJp4mbZ6zh+MJX6R6JYyKSSOWzVtaAAA45dfu1akghCLU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=bDDj6WTE; arc=none smtp.client-ip=209.85.218.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="bDDj6WTE" Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-b00a9989633so671101366b.0 for ; Mon, 06 Oct 2025 09:43:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769012; x=1760373812; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=I0ZdGtbeD0twmfxFXcR2wb4AL4tjk6OMYa00kx/YCo4=; b=bDDj6WTEUFAoTklqJxVyDFsSrH4c+YN3JvKDUER3xlvL5UmJaTyfGwZX8NDgkpsiWx 4327LWkeZOszgVNWFiriEPxcmMp/vPygim+aDK/yxc+IJjy/2B5T068WC6CtcGZWk6Nh Wou9zwNO5IFbdkTMzJN47xuKCwM+RXub76teAKKn+SJrvtUud7TRqiJhcFgJaEkvSqQ7 zKLiVl0jRoNTUuLU7N8MHhrEE0Og6VEDAVAmNY7GifQiFCVVZCMjz4VvCbxqNGwKtj/i l2RWah3LIWmC27du6gLgY5I1ttGf0SU1QUtNZg9OTxNllQyehnDER81MWs5kV4Ao5gwU T5rQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769012; x=1760373812; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=I0ZdGtbeD0twmfxFXcR2wb4AL4tjk6OMYa00kx/YCo4=; b=m1qLOTuJ7hF0HwMhs0yyBVtdVgQ16fB908EF7fq6xwQG31Oj78Yp5YMlluTIEq/oLa 9YCYENBDI5PPHyp2Nrnm/icsERmZBqO380Om6BMuyWkEJI7TouJj0p/++zaBI79AKqmz WjkreVZmJ0rHLrKZ0qIsc87WQf6bikDUKdAHmu0sRDqUJF6iu1Q1LYcKqjgiZ6bwgpub KEK7pNTiv28eQ3KoS5aLxqcjkood/xr0idmIs3baAyrdcKrvuCYaDUUC7FwfcoGBMh8L V4yI4sVlvyC9/8+hR81BpiJ7FYLv/+rM7+ZpQL8GFQJn1gRzj/xUM04KDMCm3+b8HIVT /N5Q== X-Forwarded-Encrypted: i=1; AJvYcCUzCYPziDnNhmtcOYmyMWrT2kDhoopzBmBmqRUjkOqQll4tmEjCGUbNoXKTGDu1aK852WmN795jYIZopfU=@vger.kernel.org X-Gm-Message-State: AOJu0Yxu3bmt3lYluMzCsXqP0U82ZteiTNBPcFJi+yWjSWVvALpkq4fk zVZIk2K6zQVDk/Ds+Czy3jKqTu9D0J5324V6sA0Vmf8DRdxWp3d5d52psafxcEKDwAs= X-Gm-Gg: ASbGncuuilr1HvdcHMzw18CFKh7imhPJPCU1elK3DJUehdW1/xQlrBFv/4H62H4RoDs G+1WA4IGCljJa8BomMJEkv2upyeOXdQmezo7M2+CmH8+Qd7+Z89JefNR7OaO/t2tcGbKskJegr8 OAktY6inlzLR88z5Qf9ERBdpCt4GCjYml8QrfetuXrqgspGBBoBAPd2jVU9c1pIHJqwcjzYna6X d9/AurhKyBzstyy5x5C2SPc1J/q7d4LnDJj/QXcf6bSsBZfqjmNmL0NGXYWeanwLx+u6KuIMrAY nj8LMw9RONUUNTheCy+OMkaSiviGiWho155MJogWbvELC48/2e261USKHPv7mApF5Sta3EraFkU 8nFghyPH2tY8QuAA1kcuAYrRZqPaBQYuOsua8U9CdpEKHepvCqGVJQerFxrn1gr23iE3c4r7HDX uDriCZtUkr8+7X/67XFBt3pQXGsXWXs6FdtvpfCHLCqzbNXPM9eGQ= X-Google-Smtp-Source: AGHT+IEYfOZF1TQm9DGlW5kpM0S9/tKDSRvPCFa/7dsa/gaWYvJTuZDOfU68MoruhNwe6zCqc77lsg== X-Received: by 2002:a17:907:a710:b0:b27:edf1:f638 with SMTP id a640c23a62f3a-b4f43106a07mr28397966b.23.1759769011758; Mon, 06 Oct 2025 09:43:31 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:31 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:33 +0100 Subject: [PATCH 07/10] pmdomain: samsung: selectively handle enforced sync_state Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-7-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Unconditionally calling of_genpd_sync_state() causes issues on platforms with child domains as the parent domain will be turned off before the child domain was even registered during boot. This in particular is an issue for the upcoming Google gs101 support - all operations on child domains registered after the parent domain misbehave. Add a flag to the probe data to be able to sync_state conditionally only, and enable that flag on the two platforms currently supported by this driver. Signed-off-by: Andr=C3=A9 Draszik --- drivers/pmdomain/samsung/exynos-pm-domains.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index 638d286b57f716140b2401092415644a6805870e..5a87802cff394945cb0202d08f2= cf6bcbbcc774d 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -20,6 +20,7 @@ struct exynos_pm_domain_config { /* Value for LOCAL_PWR_CFG and STATUS fields for each domain */ u32 local_pwr_cfg; + unsigned int need_early_sync_state:1; }; =20 /* @@ -69,10 +70,12 @@ static int exynos_pd_power_off(struct generic_pm_domain= *domain) =20 static const struct exynos_pm_domain_config exynos4210_cfg =3D { .local_pwr_cfg =3D 0x7, + .need_early_sync_state =3D true, }; =20 static const struct exynos_pm_domain_config exynos5433_cfg =3D { .local_pwr_cfg =3D 0xf, + .need_early_sync_state =3D true, }; =20 static const struct of_device_id exynos_pm_domain_of_match[] =3D { @@ -179,7 +182,7 @@ static int exynos_pd_probe(struct platform_device *pdev) * reset during boot. As a temporary hack to manage this, let's enforce * a sync_state. */ - if (!ret) + if (pm_domain_cfg->need_early_sync_state && !ret) of_genpd_sync_state(np); =20 pm_runtime_enable(dev); --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D6D022DEA90 for ; Mon, 6 Oct 2025 16:43:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; cv=none; b=RZpB8/vZ3bIBBNsWxNBg1pXZC8hKHhzAl0uOPbk8I5PxwTMKSbUs1VfzoKd+p2RG17WHR2wX35A0a6AtwkK5T+N+flx0RhaUribyL2Dy+H3G8p+pVzIUkeGbc32q1MM1ktvT2mD8lD6zRYuspoQcUwp4QvOHrqtYc6ZIu5ZDOYI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; c=relaxed/simple; bh=vc8UBGPhuDSOYJ9/vAmaIt+O2yLpd9dPu2EvvobJfog=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TaMlZycWuprfT5fm+iGNzywbYBimpZ/wyg5AcKLwH6YkWYYz8b8OtyYsohJmIjaGl/fJVjVUsIo+29OgDc9+94yC1KHR7hgukXfNqSAS9Iyvfgp+YW9GnSzsAkViSqIaqZEGrdT1gD2bUWhB1xy9It4h8HU8UMFjeJpSG37Iszs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=LEuvZG+A; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="LEuvZG+A" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-b4736e043f9so924381266b.0 for ; Mon, 06 Oct 2025 09:43:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769012; x=1760373812; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=xVe/h8oE+b7BSIsHHmcvuc3lfDEBo1cFpLLSAyL8B6I=; b=LEuvZG+AHWt3imcJMLDzZp/ILlABXXwELXQzDUo7k4DDKDVYxTXLYpVJAG7vHLCumJ M2DhzwzqjhLYu1rY5xehbPvTDVZ+UNZOsQqUeRddKm9uqPQ7rJE5HvnJgl1nTeZAoOoB 5eiM3nmQoEBFajK1sKKW9CZRKR60i1kqtZr5raCyWigS50nrj1NQ3FvR6VnQetfGh5UX e96PId1m2u9hMRWDfoTgWU6/DixYLswDqPGqNh+Ee42cuBRR61Gq251qL+l72+DcjrPB z3qUtMuQzvdxUfimC3/CXEii9b9RCrSq2J+tcfS4UZalCriTQzZyj+4ON3y4pb6udTdH cTtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769012; x=1760373812; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xVe/h8oE+b7BSIsHHmcvuc3lfDEBo1cFpLLSAyL8B6I=; b=Q3jZ1Fr5hSb0hPlgJ0YV9KtG1zfK0l57LCVGPjXui12nxc39jrs9qqg3R87iByEozA zoIqJqYyxr+eVH7IBqEBhOXWrZSZulVOV1qKO9eaawA0Kkt4mBNj4A9m8IynucFlhnfw dyXEzLu15/9FOZrijL8Iq6yA3gTE057geA2XfQTK1DTiuP0xbKQlC0q+arxcbu81jAII 6HWNuDIdZDuEjKGK4qOSWbpwW4J87xXBWnylkyr9cV/4gfmgziqglGL3SOdKdT58hFjF wFGdRkCyk7qVZ1D03TKak3D/lOxcCiDRn3Ji/ADrZA5kjvJg1BuS2lkXR5d7B4QGce86 NCaw== X-Forwarded-Encrypted: i=1; AJvYcCXzamAPQpVtbRsb4m6bfMCPIK5SombEGwQ1gxYKuiSWZM0d2x2px8uOCTOJybcTx183Ed4X1IAxdYNpBd8=@vger.kernel.org X-Gm-Message-State: AOJu0YxdY7G+rs/IJZPdAjt09GijAWz+AMkHiT18P39jr+7oaNtVlpUi pRhp+HR6ViVNdF8+eOY/HbCmCAXq0cM2umSHkrdAtoLpr7IeP4OuE2IJrSSYGemMgVQ= X-Gm-Gg: ASbGnct2wfCF5fTXU964/srAKtr9SRLzElkLWZJoxJzW468kggljJPUcXvd47C3VYK7 B09NXuPNIfKS6Ft3p773mvFxXgIKDeGbw+TOqF5G4ee/nCFXEQ3/3bA+5F/NG+6/JG0RxT80f6o FblKuIrjs3EKZ4MiHU31GmUzmnaNf0aD3AcEmWrKEBtUJEFQgwCRD/IM4t6dFBp5rK0Og/alo9y 0AhR8UdpwyJ6sFXYoY7++z2dtoDGQ+G0dL9fTVmu7Es5IoPDYnzoOIbNHux8FrHSx96jbD3Zp96 700WWyQhhM3yVXmHs7jerpf0Ru2WhlpyvbPF4PUHGdWStrPxCrgHgH6EaiuMG0w9cpMkZgmM1yd 479/7JZf613H1h5shYRJ4R2CYne86JdA0UW7wq2KH/srMzGj1JHeidnXURme3hTBYLHC6i92eJv fUY4c0ImjtQvg0iVrsXE7a5OWW/4fRTihJ1/lmQ9g6 X-Google-Smtp-Source: AGHT+IHyfqUJ/1bbZ0b+uTuR4SP9fVf5ypcK6bma2PpVrFAj23Ekd8i6RkAsU0S6e1awiYiWiR2poA== X-Received: by 2002:a17:907:3ea1:b0:b41:297c:f7bb with SMTP id a640c23a62f3a-b49c3639c42mr1623024966b.26.1759769012219; Mon, 06 Oct 2025 09:43:32 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:31 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:34 +0100 Subject: [PATCH 08/10] pmdomain: samsung: try to get PMU (syscon) regmap Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-8-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 On platforms such as Google gs101, direct mmio register access to the PMU registers doesn't necessarily work and access must happen via a (syscon) regmap created by the PMU driver instead. Try to obtain this regmap using the parent node in DT in case this PD is a child of the PMU and fall back to the traditional direct mmio regmap otherwise. Signed-off-by: Andr=C3=A9 Draszik --- drivers/pmdomain/samsung/exynos-pm-domains.c | 58 ++++++++++++++++++------= ---- 1 file changed, 38 insertions(+), 20 deletions(-) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index 5a87802cff394945cb0202d08f2cf6bcbbcc774d..c1b5830b2ad3e8b272dcc8ebc36= 4be49aa7fda7c 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -107,17 +108,9 @@ static int exynos_pd_probe(struct platform_device *pde= v) struct of_phandle_args child, parent; struct exynos_pm_domain *pd; struct resource *res; - void __iomem *base; unsigned int val; int on, ret; =20 - struct regmap_config reg_config =3D { - .reg_bits =3D 32, - .val_bits =3D 32, - .reg_stride =3D 4, - .use_relaxed_mmio =3D true, - }; - pm_domain_cfg =3D of_device_get_match_data(dev); pd =3D devm_kzalloc(dev, sizeof(*pd), GFP_KERNEL); if (!pd) @@ -128,25 +121,50 @@ static int exynos_pd_probe(struct platform_device *pd= ev) return -ENOMEM; =20 /* - * The resource typically points into the address space of the PMU. + * The resource typically points into the address space of the PMU and + * we have to consider two cases: + * 1) some implementations require a custom syscon regmap + * 2) this driver might map the same addresses as the PMU driver * Therefore, avoid using devm_platform_get_and_ioremap_resource() and - * instead use platform_get_resource() and devm_ioremap() to avoid + * instead use platform_get_resource() here, and below for case 1) use + * syscon_node_to_regmap() while for case 2) use devm_ioremap() to avoid * conflicts due to address space overlap. */ res =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); if (!res) return dev_err_probe(dev, -ENXIO, "missing IO resources"); =20 - base =3D devm_ioremap(dev, res->start, resource_size(res)); - if (!base) - return dev_err_probe(dev, -ENOMEM, - "failed to ioremap PMU registers"); - - reg_config.max_register =3D resource_size(res) - reg_config.reg_stride; - pd->regmap =3D devm_regmap_init_mmio(dev, base, ®_config); - if (IS_ERR(pd->regmap)) - return dev_err_probe(dev, PTR_ERR(base), - "failed to init regmap"); + if (dev->parent && + of_device_is_compatible(dev->parent->of_node, "syscon")) { + pd->regmap =3D syscon_node_to_regmap(dev->parent->of_node); + if (IS_ERR(pd->regmap)) + return dev_err_probe(dev, PTR_ERR(pd->regmap), + "failed to acquire PMU regmap"); + + pd->configuration_reg =3D res->start; + pd->status_reg =3D res->start; + } else { + void __iomem *base; + + const struct regmap_config reg_config =3D { + .reg_bits =3D 32, + .val_bits =3D 32, + .reg_stride =3D 4, + .use_relaxed_mmio =3D true, + .max_register =3D (resource_size(res) + - reg_config.reg_stride), + }; + + base =3D devm_ioremap(dev, res->start, resource_size(res)); + if (!base) + return dev_err_probe(dev, -ENOMEM, + "failed to ioremap PMU registers"); + + pd->regmap =3D devm_regmap_init_mmio(dev, base, ®_config); + if (IS_ERR(pd->regmap)) + return dev_err_probe(dev, PTR_ERR(base), + "failed to init regmap"); + } =20 pd->pd.power_off =3D exynos_pd_power_off; pd->pd.power_on =3D exynos_pd_power_on; --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2565B2DF122 for ; Mon, 6 Oct 2025 16:43:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; cv=none; b=lphLEPyC6Q/2ajfdtugRwa/8kfmEk6hJti6kePtyfQNdM9N0Z4gKrrWuRYf5ourLa001vIZvpQ55h15ZqlQDR/AXY0zttClK49rxURvV2IZXiO3Dond8eP+PG4k8fmmbwiQnWiNQ1Gsr756zqMK4mwnPFqO43oyvcj4K30LoZpE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; c=relaxed/simple; bh=dNOLUQevSwifZ6dPtrx27CYPt5ZcaJvQ++oKkFXtwgw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=JGoGRsoeFsKhJYwDrs4nv7ICI2t9igOMxTHJVQUNqYQn6kwwMK1idu1V7tcA4Nd3YMF1awYqJ5dqo8Ae1R7Ibqfw7cHGgAB+Sti0mQY/0u4tNzyBrWN3XFpV2gVTQOnuh/0+tG/xiRmlwbvrDFzY1Y0Zvn7WYg1l6TG7NXEmiXs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=mYfm8Zk0; arc=none smtp.client-ip=209.85.218.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="mYfm8Zk0" Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-afcb78ead12so929869066b.1 for ; Mon, 06 Oct 2025 09:43:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769013; x=1760373813; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=MVFnz052bxUssLjPn/irFYLe8FvTO4x2oRG7kChOyXg=; b=mYfm8Zk0HBfFZ6+50Vg/Q77S3tdE2BDbSixWHnwLK3nvtF9zTo4+DfA1uDtSMvsCJe sd4Yajywpx4dAvdETu4vxIJV7rHBoJMYbJlqJuToVCeb9uFCIRrQQVGfH1K6ylgU9SCq 9UhwPTLVEjCV3WP46hbWa5PTQseCbn1tnFtbfoaEjQhBxY6EStx59k9zNoGXjgxf3eh7 iS0VLUdAt1uzHc0wNP7qgG/rVZBJqIg1uBu5HmXzOHXR+4TiXTzYhvUT6BuC7i+5Wx2y ZUXazbEO3YbfVtfcq/jwdrvfy357294hu4aYPrLTIjlfspiVgNQ/kXKGw8ZU13rzeg8A 1nCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769013; x=1760373813; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MVFnz052bxUssLjPn/irFYLe8FvTO4x2oRG7kChOyXg=; b=ZpsROQR2tuLEN502X+R4CHStZ6C16Pudg13npe2WMdHicn9JNEI9wozwyE40eWz0tY RX0U5eBa8C/WnsHEm7I7duwJl9QzIKwHXlRo3cXeyLQholoHJ+MRlo/99KZW24b9WKK8 5+sSS+wtwWZwl0Zilep9d1vd9Apn+1uUimwHeUrCXoWSAiMtRsPOh96tSINiBULQ2QuM IoJaVzf8t2sQQVHWt+Z0JRFRee2wd/eDZHMoi9wAXkOrDpGgHqMbdcwas73GAy7Wo2dg 8D9KRmK7G0YDeq2cx+HJ6VGxKRZZW8D/LAlNqhn9VZpFFYS/kx9lRQwwqbUfAqHtoJTx xbCQ== X-Forwarded-Encrypted: i=1; AJvYcCWo1YLpb8/ngx+uExKZ2bD8cINOz2cl5JdooC4rAmX9baWAkscfIybILSWyv6yVZMAFQnl7RhEpVWXeoMY=@vger.kernel.org X-Gm-Message-State: AOJu0Yx7hr2a2LrzOWBsEB2JcubD7Gfm2vGv/gFUsUlldpgk0FEPPXac t+lgzfnYaZ31/BQJ5QTyoLdTTeP/FTnHpNKFhjzKsQq2TR10pn+ajrwY9gjY5O2dXQ8= X-Gm-Gg: ASbGncvWbYCYlTWkzwzXQW5NeM7bBSlH1yjx4czVOD4yGKUx8c0ytEbmnnwNi8YKDLC w/IXWJJ4WnMoZBhcsSCRUrOVFXW0uBxGh+QU1XdZNnq5GMzSu3u6Vthp9aav63ovgUKuQS0kuke eYZcMyg5E6vib6xt6yBqtkR1OKjYrxjEQxgOb4b8ch6H2sruobbn/AhW1ev95cGHtXRxERI4iPs to0DL9Ysxdb7ww9YqWWpbnE7sNyxutBzrT/t+ggioHXlG/TipwkhkL6+ELcN4+f+pX/YCH2sjMi LGv+58njBHT/8LAJW7xBzBzQmalwLy81hTmYY7vhBxOULpse9yHN86FnptNFKAJNRQkFSPfpym3 lMVBSNcUaaRsDUO2uUThF5SJABD0xbpjwHZX5gNaULvmtf3A9v9FepabWB/EfG7+n0xKN796gVf llnBGfwaHlVse26aW2npfG5OauO/jKMw7PURY+epy8g4jR/A24tZQ= X-Google-Smtp-Source: AGHT+IFsGub9LAc6/mBjGGGSdlVFrrBBzCQQUOCqnEH/i741mIaqZ3IINkZ5oqZ8jsa69BC1Q2QS0Q== X-Received: by 2002:a17:907:3d9f:b0:b3e:b226:5bba with SMTP id a640c23a62f3a-b49c23431famr1629117766b.15.1759769012661; Mon, 06 Oct 2025 09:43:32 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:32 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:35 +0100 Subject: [PATCH 09/10] pmdomain: samsung: use dev_err() instead of pr_err() Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-9-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 dev_err() gives us more consistent error messages, which include the device. Switch to using dev_err(). Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- drivers/pmdomain/samsung/exynos-pm-domains.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index c1b5830b2ad3e8b272dcc8ebc364be49aa7fda7c..06e1b0eaca18205a549c8e8136e= e15279eb3089d 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -29,6 +29,7 @@ struct exynos_pm_domain_config { */ struct exynos_pm_domain { struct regmap *regmap; + struct device *dev; struct generic_pm_domain pd; u32 local_pwr_cfg; u32 configuration_reg; @@ -53,8 +54,9 @@ static int exynos_pd_power(struct generic_pm_domain *doma= in, bool power_on) (val & pd->local_pwr_cfg) =3D=3D pwr, 100, 1 * USEC_PER_MSEC); if (err) - pr_err("Power domain %s %sable failed: %d (%#.2x)\n", - domain->name, power_on ? "en" : "dis", err, val); + dev_err(pd->dev, + "Power domain %s %sable failed: %d (%#.2x)\n", + domain->name, power_on ? "en" : "dis", err, val); =20 return err; } @@ -116,6 +118,8 @@ static int exynos_pd_probe(struct platform_device *pdev) if (!pd) return -ENOMEM; =20 + pd->dev =3D dev; + pd->pd.name =3D exynos_get_domain_name(dev, np); if (!pd->pd.name) return -ENOMEM; --=20 2.51.0.618.g983fd99d29-goog From nobody Sun Dec 7 09:18:41 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 428662DF129 for ; Mon, 6 Oct 2025 16:43:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; cv=none; b=oCoijFTdxeNJR4f10Kt6cFnBOs0AC/MuvkVG1DqIcHFLipW6ubsWCM1G+vGey5yIyB6ci9ww7ilBlCpWWPvmtp6ajnMykMciMtl/rDLlFcoCTaZ8MGa8Hyf+VA7C24uciSF3irKU/kNklMvRRg7mgy7vxzRygirGsWXhHue/I5Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759769017; c=relaxed/simple; bh=WRwzPyOkvSFyJq+EK+JnNwxrggXXpznQVjTj0iqWREM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DXZVZOFbNsftsXKv9PDuK/Axhn4y87l3im1Jx8+oJeyzk9OpMXmFeIKLVOyJG0ynQsOMzqVggJyDr9oTSBNtS6gSmyFg+Rx/LTWiSlZbIAaG1ZDveS2jGTySdZKxs0HddiFcMSMH4n2up9GZS8iLWk0kCs2/vZXJIUsPbW8kZiE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=zRiEdQXS; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="zRiEdQXS" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-b48d8deafaeso1067507566b.1 for ; Mon, 06 Oct 2025 09:43:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759769013; x=1760373813; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ioPTwS2f0Ag/7Xgv7v9kcfqmqd+rCK/VtVviQkcgWcs=; b=zRiEdQXSknS7fB2cddTuE5q9MzVvGJwUp/JOTgXRQUoXa+vg3b8sTWlvoiZGlA9IKQ JGNxx+G4nTEpWdG23yVi5wtsv2J3uOS9U4TL+0RWW6dgcB66wFoXZf4rzJrTO+0EX8pz ejY5AN52URLHsLhxKT7hMkzc8/AadDO6pd4Lb9p/bpFGIqGLYYUR+FKmJAd+iK/VhXkA Y39vCGliEI7MnVjnpq/p65XmoI+CKUlRtkdwvSKQ52tsyJYEA1HFT7xR1RHePXonj2+l 61NlnT1PRMr99HsFQzmd8DPO50VJgezn6ayjLNycASWa+HZqyQoAjPDxcSR05J3lLkpr 6xvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759769013; x=1760373813; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ioPTwS2f0Ag/7Xgv7v9kcfqmqd+rCK/VtVviQkcgWcs=; b=oX74WhCJwsfNmSTN3jvKnqK9RO8pabF3guc9TxMDJXYQ0Jbz/5yYRCBkISJ53uZhBO wPvpU+wYGRIMpXbwh1yBok9vVINhT3aX7zpPjpMS/leorX0QExu3LUJeSnY/GW7GT1JL kPuLFNfQUeTeioOxWiFJd5j6LgFiSTTCF55SiCZFnFe/2RyyZJJZY/CiBZhV2tR/kDn0 5U2s31ziTFKF7RkgwYqWtWbxyzHL5Q3EEJg1NpCxLroQmuZrmWB9fo4VzF1NVLg851tj YoS3trzNAMZpLaYnB1KTQW8Mhw8ckL7VkeveFMYIp+ChL89KmbmJR41cv/hPaBwcqWWM EiKw== X-Forwarded-Encrypted: i=1; AJvYcCUx2Lkbi7qiKj0iFluy1r9Mr4nHb38RkXdq+nnZT16LZzY25MLij7dTkcerli1HsJ4nY7SgBEF/5ZTrWqs=@vger.kernel.org X-Gm-Message-State: AOJu0YyuBpMyx61B9wP6cDqialmtKgX+OqK2qyuiFId+Zut0mBAag5xi 7tvVregFjPYMnPSJQ0bMo6QvDWPqWdcAwhjxpoDLIR9wgWPVbinvlMqEQV0foZ51DXI= X-Gm-Gg: ASbGncvdZKhpYtogTksDuvDIcih8VLBj5fa+66/1gAPfp8B8lG5qyCSoNN4uiqUrnbg llTYKaY4rx4k95xKVO7SBsen/uDP+CjkabHNzxI0pTyDOCQHcKWFXmDe/NxmJaUNMpj6PzWiGdP wr1qKd3abp34AM4FhgOJhoiNNGpZGgxiY49yRwRLzkb1Wjn4d67NcgODIGrEf0kHxG5NwQELw/O JRvFgjxtxl/Inb5mBGnWxli8FHRk3SOn332ODrAnfI3J8S6WPHmcpBeA0zao0dDm2caiTT9fAhw oRfzruMKS47fyei4Ud6eJD3IQp+FvK7aPCZ4g4QVGbt/DH51qBv3PVNKRhoKdSKMB8d//fNSi3k FWHhDz1Zz5ITxDisgQ93OwSD+yn13IlUs2RlmBADefDe6bN/lIRvAEW//gJcXuQUWhKku7P29Vp 8BkOJ235B4TnU6Xr3qVVqTB3JL+rQ2fUNGlcuHafH2dpcicK72bdI= X-Google-Smtp-Source: AGHT+IE5SECCGzL2stnGeMyacolLo8BRZWSL0FXQl2+Uco37ci1RopzDCJHNu/u5f/tWpHXHwAHqpw== X-Received: by 2002:a17:907:d90:b0:b3c:3c8e:1896 with SMTP id a640c23a62f3a-b49c47ad11bmr1593290866b.42.1759769013168; Mon, 06 Oct 2025 09:43:33 -0700 (PDT) Received: from puffmais2.c.googlers.com (224.138.204.35.bc.googleusercontent.com. [35.204.138.224]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b48652aa01esm1193841866b.2.2025.10.06.09.43.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Oct 2025 09:43:32 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Mon, 06 Oct 2025 17:43:36 +0100 Subject: [PATCH 10/10] pmdomain: samsung: add support for google,gs101-pd Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251006-gs101-pd-v1-10-f0cb0c01ea7b@linaro.org> References: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> In-Reply-To: <20251006-gs101-pd-v1-0-f0cb0c01ea7b@linaro.org> To: Krzysztof Kozlowski , Alim Akhtar , Rob Herring , Conor Dooley , Krzysztof Kozlowski , Ulf Hansson Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Compared to other previous designs supported by this driver, the status is just one bit. There is nothing unusual here. Signed-off-by: Andr=C3=A9 Draszik --- drivers/pmdomain/samsung/exynos-pm-domains.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomai= n/samsung/exynos-pm-domains.c index 06e1b0eaca18205a549c8e8136ee15279eb3089d..9e62da2162884fbc1f4b3809cdd= 89181fb534095 100644 --- a/drivers/pmdomain/samsung/exynos-pm-domains.c +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c @@ -81,8 +81,15 @@ static const struct exynos_pm_domain_config exynos5433_c= fg =3D { .need_early_sync_state =3D true, }; =20 +static const struct exynos_pm_domain_config gs101_cfg =3D { + .local_pwr_cfg =3D BIT(0), +}; + static const struct of_device_id exynos_pm_domain_of_match[] =3D { { + .compatible =3D "google,gs101-pd", + .data =3D &gs101_cfg, + }, { .compatible =3D "samsung,exynos4210-pd", .data =3D &exynos4210_cfg, }, { --=20 2.51.0.618.g983fd99d29-goog