[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241018-arm-psci-system_reset2-vendor-reboots-v6-2-50cbe88b0a24@quicinc.com>
Date: Fri, 18 Oct 2024 12:39:47 -0700
From: Elliot Berman <quic_eberman@...cinc.com>
To: Bjorn Andersson <andersson@...nel.org>,
Sebastian Reichel
<sre@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski
<krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>, Vinod Koul <vkoul@...nel.org>,
Andy Yan <andy.yan@...k-chips.com>,
"Lorenzo
Pieralisi" <lpieralisi@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Bartosz Golaszewski <bartosz.golaszewski@...aro.org>,
Arnd Bergmann
<arnd@...db.de>, Olof Johansson <olof@...om.net>,
Catalin Marinas
<catalin.marinas@....com>,
Will Deacon <will@...nel.org>, <cros-qcom-dts-watchers@...omium.org>,
Krzysztof Kozlowski
<krzk+dt@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>,
Konrad Dybcio
<konradybcio@...nel.org>
CC: Satya Durga Srinivasu Prabhala <quic_satyap@...cinc.com>,
Melody Olvera
<quic_molvera@...cinc.com>,
Shivendra Pratap <quic_spratap@...cinc.com>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>,
Florian Fainelli
<florian.fainelli@...adcom.com>,
<linux-pm@...r.kernel.org>, <linux-arm-msm@...r.kernel.org>,
Elliot Berman <quic_eberman@...cinc.com>
Subject: [PATCH v6 2/5] dt-bindings: arm: Document reboot mode magic
Add bindings to describe vendor-specific reboot modes. Values here
correspond to valid parameters to vendor-specific reset types in PSCI
SYSTEM_RESET2 call.
Reviewed-by: Rob Herring (Arm) <robh@...nel.org>
Signed-off-by: Elliot Berman <quic_eberman@...cinc.com>
---
Documentation/devicetree/bindings/arm/psci.yaml | 43 +++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
index cbb012e217ab..5e07c62fe5d7 100644
--- a/Documentation/devicetree/bindings/arm/psci.yaml
+++ b/Documentation/devicetree/bindings/arm/psci.yaml
@@ -98,6 +98,27 @@ properties:
[1] Kernel documentation - ARM idle states bindings
Documentation/devicetree/bindings/cpu/idle-states.yaml
+ reset-types:
+ type: object
+ $ref: /schemas/power/reset/reboot-mode.yaml#
+ unevaluatedProperties: false
+ properties:
+ # "mode-normal" is just SYSTEM_RESET
+ mode-normal: false
+ patternProperties:
+ "^mode-.*$":
+ minItems: 1
+ maxItems: 2
+ description: |
+ Describes a vendor-specific reset type. The string after "mode-"
+ maps a reboot mode to the parameters in the PSCI SYSTEM_RESET2 call.
+
+ Parameters are named mode-xxx = <type[, cookie]>, where xxx
+ is the name of the magic reboot mode, type is the lower 31 bits
+ of the reset_type, and, optionally, the cookie value. If the cookie
+ is not provided, it is defaulted to zero.
+ The 31st bit (vendor-resets) will be implicitly set by the driver.
+
patternProperties:
"^power-domain-":
$ref: /schemas/power/power-domain.yaml#
@@ -137,6 +158,15 @@ allOf:
required:
- cpu_off
- cpu_on
+ - if:
+ not:
+ properties:
+ compatible:
+ contains:
+ const: arm,psci-1.0
+ then:
+ properties:
+ reset-types: false
additionalProperties: false
@@ -261,4 +291,17 @@ examples:
domain-idle-states = <&CLUSTER_RET>, <&CLUSTER_PWRDN>;
};
};
+
+ - |+
+
+ // Case 5: SYSTEM_RESET2 vendor resets
+ psci {
+ compatible = "arm,psci-1.0";
+ method = "smc";
+
+ reset-types {
+ mode-edl = <0>;
+ mode-bootloader = <1 2>;
+ };
+ };
...
--
2.34.1
Powered by blists - more mailing lists