1# SPDX-License-Identifier: GPL-2.0-only 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/power/reset/syscon-reboot-mode.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Generic SYSCON reboot mode driver 8 9maintainers: 10 - Sebastian Reichel <sre@kernel.org> 11 12description: | 13 This driver gets reboot mode magic value from reboot-mode driver 14 and stores it in a SYSCON mapped register. Then the bootloader 15 can read it and take different action according to the magic 16 value stored. The SYSCON mapped register is retrieved from the 17 parental dt-node plus the offset. So the SYSCON reboot-mode node 18 should be represented as a sub-node of a "syscon", "simple-mfd" node. 19 20properties: 21 compatible: 22 const: syscon-reboot-mode 23 24 mask: 25 $ref: /schemas/types.yaml#/definitions/uint32 26 description: Update only the register bits defined by the mask (32 bit) 27 28 offset: 29 $ref: /schemas/types.yaml#/definitions/uint32 30 description: Offset in the register map for the mode register (in bytes) 31 32patternProperties: 33 "^mode-.+": 34 $ref: /schemas/types.yaml#/definitions/uint32 35 description: Vendor-specific mode value written to the mode register 36 37additionalProperties: false 38 39required: 40 - compatible 41 - offset 42 43examples: 44 - | 45 #include <dt-bindings/soc/rockchip,boot-mode.h> 46 47 reboot-mode { 48 compatible = "syscon-reboot-mode"; 49 offset = <0x40>; 50 mode-normal = <BOOT_NORMAL>; 51 mode-recovery = <BOOT_RECOVERY>; 52 mode-bootloader = <BOOT_FASTBOOT>; 53 mode-loader = <BOOT_BL_DOWNLOAD>; 54 }; 55... 56