1d3895c2aSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0 2d3895c2aSKrzysztof Kozlowski%YAML 1.2 3d3895c2aSKrzysztof Kozlowski--- 4d3895c2aSKrzysztof Kozlowski$id: http://devicetree.org/schemas/power/reset/syscon-reboot.yaml# 5d3895c2aSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml# 6d3895c2aSKrzysztof Kozlowski 7d3895c2aSKrzysztof Kozlowskititle: Generic SYSCON mapped register reset driver 8d3895c2aSKrzysztof Kozlowski 9d3895c2aSKrzysztof Kozlowskimaintainers: 10d3895c2aSKrzysztof Kozlowski - Sebastian Reichel <sre@kernel.org> 11d3895c2aSKrzysztof Kozlowski 12d3895c2aSKrzysztof Kozlowskidescription: |+ 13d3895c2aSKrzysztof Kozlowski This is a generic reset driver using syscon to map the reset register. 14d3895c2aSKrzysztof Kozlowski The reset is generally performed with a write to the reset register 152140d68dSSerge Semin defined by the SYSCON register map base plus the offset with the value and 162140d68dSSerge Semin mask defined in the reboot node. Default will be little endian mode, 32 bit 172140d68dSSerge Semin access only. The SYSCON registers map is normally retrieved from the 182140d68dSSerge Semin parental dt-node. So the SYSCON reboot node should be represented as a 192140d68dSSerge Semin sub-node of a "syscon", "simple-mfd" node. Though the regmap property 202140d68dSSerge Semin pointing to the system controller node is also supported. 21d3895c2aSKrzysztof Kozlowski 22d3895c2aSKrzysztof Kozlowskiproperties: 23d3895c2aSKrzysztof Kozlowski compatible: 24d3895c2aSKrzysztof Kozlowski const: syscon-reboot 25d3895c2aSKrzysztof Kozlowski 26d3895c2aSKrzysztof Kozlowski mask: 27d3895c2aSKrzysztof Kozlowski $ref: /schemas/types.yaml#/definitions/uint32 28d3895c2aSKrzysztof Kozlowski description: Update only the register bits defined by the mask (32 bit). 29d3895c2aSKrzysztof Kozlowski 30d3895c2aSKrzysztof Kozlowski offset: 31d3895c2aSKrzysztof Kozlowski $ref: /schemas/types.yaml#/definitions/uint32 32d3895c2aSKrzysztof Kozlowski description: Offset in the register map for the reboot register (in bytes). 33d3895c2aSKrzysztof Kozlowski 34d3895c2aSKrzysztof Kozlowski regmap: 35d3895c2aSKrzysztof Kozlowski $ref: /schemas/types.yaml#/definitions/phandle 362140d68dSSerge Semin deprecated: true 372140d68dSSerge Semin description: | 382140d68dSSerge Semin Phandle to the register map node. This property is deprecated in favor of 392140d68dSSerge Semin the syscon-reboot node been a child of a system controller node. 40d3895c2aSKrzysztof Kozlowski 41d3895c2aSKrzysztof Kozlowski value: 42d3895c2aSKrzysztof Kozlowski $ref: /schemas/types.yaml#/definitions/uint32 43d3895c2aSKrzysztof Kozlowski description: The reset value written to the reboot register (32 bit access). 44d3895c2aSKrzysztof Kozlowski 45*d7544cbeSPali Rohár priority: 46*d7544cbeSPali Rohár default: 192 47*d7544cbeSPali Rohár 48d3895c2aSKrzysztof Kozlowskirequired: 49d3895c2aSKrzysztof Kozlowski - compatible 50d3895c2aSKrzysztof Kozlowski - offset 51d3895c2aSKrzysztof Kozlowski 527f464532SRob HerringadditionalProperties: false 537f464532SRob Herring 54d3895c2aSKrzysztof KozlowskiallOf: 55*d7544cbeSPali Rohár - $ref: restart-handler.yaml# 56d3895c2aSKrzysztof Kozlowski - if: 57d3895c2aSKrzysztof Kozlowski not: 58d3895c2aSKrzysztof Kozlowski required: 59d3895c2aSKrzysztof Kozlowski - mask 60d3895c2aSKrzysztof Kozlowski then: 61d3895c2aSKrzysztof Kozlowski required: 62d3895c2aSKrzysztof Kozlowski - value 63d3895c2aSKrzysztof Kozlowski 64d3895c2aSKrzysztof Kozlowskiexamples: 65d3895c2aSKrzysztof Kozlowski - | 66d3895c2aSKrzysztof Kozlowski reboot { 67d3895c2aSKrzysztof Kozlowski compatible = "syscon-reboot"; 68d3895c2aSKrzysztof Kozlowski regmap = <®mapnode>; 69d3895c2aSKrzysztof Kozlowski offset = <0x0>; 70d3895c2aSKrzysztof Kozlowski mask = <0x1>; 71d3895c2aSKrzysztof Kozlowski }; 72