On 7/25/2023 11:01 AM, Elliot Berman wrote:
On 7/24/2023 4:23 PM, Rob Herring wrote:
On Mon, Jul 24, 2023 at 03:30:53PM -0700, Elliot Berman wrote:
Add devicetree bindings for using PSCI SYSTEM_RESET2 with vendor
reset types.
Signed-off-by: Elliot Berman <quic_eberman@xxxxxxxxxxx>
---
.../power/reset/arm,psci-vendor-reset.yaml | 35 +++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 36 insertions(+)
create mode 100644
Documentation/devicetree/bindings/power/reset/arm,psci-vendor-reset.yaml
diff --git
a/Documentation/devicetree/bindings/power/reset/arm,psci-vendor-reset.yaml b/Documentation/devicetree/bindings/power/reset/arm,psci-vendor-reset.yaml
new file mode 100644
index 000000000000..18b0b8c167a1
--- /dev/null
+++
b/Documentation/devicetree/bindings/power/reset/arm,psci-vendor-reset.yaml
@@ -0,0 +1,35 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+# Copyright 2023 Qualcomm Innovation Center, Inc. All Rights Reserved.
+%YAML 1.2
+---
+$id:
http://devicetree.org/schemas/power/reset/arm,psci-vendor-reset.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: PSCI SYSTEM_RESET2 Vendor Resets
+
+maintainers:
+ - Elliot Berman <quic_eberman@xxxxxxxxxxx>
+
+description: |
+ PSCI SYSTEM_RESET2 supports vendor-defined reset types. This
describes
+ the conversion of reboot modes to the reset types.
+
+properties:
+ compatible:
+ const: arm,psci-vendor-reset
+
+allOf:
+ - $ref: reboot-mode.yaml#
+
+additionalProperties: false
+
+examples:
+ - |
+ firmware {
+ psci-vendor-resets {
+ compatible = "arm,psci-vendor-reset";
We already have a node for PSCI, we don't need a second one. You can
have a separate driver without a separate node.
I could also place the reboot-mode functionality straight into
drivers/firwmare/psci/? I thought that might be more controversial than
separate driver, but maybe not?
Mark/Loreno, do you have any concerns to add the reboot-mode driver
functionality directly in drivers/firmware/psci/psci.c?
Sebastian, do you have any concerns to have this reboot-mode driver
outside drivers/power/reset/?
Sebastian, please disregard this question.
Mukesh pointed out that reboot-mode framework isn't the right option
here since this driver does the actual reset and, as I understand,
reboot-mode isn't intended to do actual reset. I'm going to implement
something similar to what reboot-mode framework does but register
against the restart_handler_list instead of reboot_notifier_list.
+ reboot-normal = <0x100>;
Wouldn't 'normal' be the normal PSCI reset?
Ah, right. I had my head buried in the reboot-mode code when creating
the example. I can remove from the example.
+ reboot-bootloader = <0x101>;
+ reboot-fastboot = <0x102>;
+ };
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index d516295978a4..2da4c5f1917b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -16982,6 +16982,7 @@ M: Mark Rutland <mark.rutland@xxxxxxx>
M: Lorenzo Pieralisi <lpieralisi@xxxxxxxxxx>
L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx (moderated for
non-subscribers)
S: Maintained
+F:
Documentation/devicetree/bindings/power/reset/arm,psci-vendor-reset.yaml
F: drivers/firmware/psci/
F: include/linux/psci.h
F: include/uapi/linux/psci.h
--
2.41.0