Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: reset: syscon-reboot: add google,gs101-reboot

GS101 supports a couple different reset types via certain registers in
the SYSCON register map.

Add a compatible for it. When in effect, all register values and offsets
are implied, hence they shall not be specified in that case.

Signed-off-by: André Draszik <andre.draszik@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20250401-syscon-reboot-reset-mode-v5-1-5b9357442363@linaro.org
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>

authored by

André Draszik and committed by
Sebastian Reichel
1495c1aa cfe76967

+30 -12
+30 -12
Documentation/devicetree/bindings/power/reset/syscon-reboot.yaml
··· 21 21 22 22 properties: 23 23 compatible: 24 - const: syscon-reboot 24 + enum: 25 + - syscon-reboot 26 + - google,gs101-reboot 25 27 26 28 mask: 27 29 $ref: /schemas/types.yaml#/definitions/uint32 ··· 51 49 priority: 52 50 default: 192 53 51 54 - oneOf: 55 - - required: 56 - - offset 57 - - required: 58 - - reg 59 - 60 52 required: 61 53 - compatible 62 54 ··· 59 63 allOf: 60 64 - $ref: restart-handler.yaml# 61 65 - if: 62 - not: 63 - required: 64 - - mask 66 + properties: 67 + compatible: 68 + contains: 69 + const: google,gs101-reboot 65 70 then: 66 - required: 67 - - value 71 + properties: 72 + mask: false 73 + offset: false 74 + reg: false 75 + value: false 76 + 77 + else: 78 + if: 79 + not: 80 + required: 81 + - mask 82 + then: 83 + required: 84 + - value 85 + 86 + oneOf: 87 + - required: [offset] 88 + - required: [reg] 68 89 69 90 examples: 70 91 - | ··· 90 77 regmap = <&regmapnode>; 91 78 offset = <0x0>; 92 79 mask = <0x1>; 80 + }; 81 + 82 + - | 83 + reboot { 84 + compatible = "google,gs101-reboot"; 93 85 };