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

dt-bindings: arm: convert vexpress-sysregs to DT schema

The Arm Versatile Express system control register block provides GPIO
functionality to some devices and is also used for board identification.

Extract the first half of the informal vexpress-sysreg.txt binding and
make it proper DT schema compliant.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220506140533.3566431-7-andre.przywara@arm.com

authored by

Andre Przywara and committed by
Rob Herring
47db3216 97ef3551

+90
+90
Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/arm/vexpress-sysreg.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: ARM Versatile Express system registers bindings 8 + 9 + maintainers: 10 + - Andre Przywara <andre.przywara@arm.com> 11 + 12 + description: 13 + This is a system control registers block, providing multiple low level 14 + platform functions like board detection and identification, software 15 + interrupt generation, MMC and NOR Flash control, etc. 16 + 17 + properties: 18 + compatible: 19 + const: arm,vexpress-sysreg 20 + 21 + reg: 22 + maxItems: 1 23 + 24 + "#address-cells": 25 + const: 1 26 + 27 + "#size-cells": 28 + const: 1 29 + 30 + ranges: true 31 + 32 + additionalProperties: false 33 + 34 + patternProperties: 35 + '^gpio@[0-9a-f]+$': 36 + type: object 37 + additionalProperties: false 38 + description: 39 + GPIO children 40 + 41 + properties: 42 + compatible: 43 + enum: 44 + - arm,vexpress-sysreg,sys_led 45 + - arm,vexpress-sysreg,sys_mci 46 + - arm,vexpress-sysreg,sys_flash 47 + 48 + gpio-controller: true 49 + 50 + "#gpio-cells": 51 + const: 2 52 + description: | 53 + The first cell is the function number: 54 + for sys_led : 0..7 = LED 0..7 55 + for sys_mci : 0 = MMC CARDIN, 1 = MMC WPROT 56 + for sys_flash : 0 = NOR FLASH WPn 57 + The second cell can take standard GPIO flags. 58 + 59 + reg: 60 + maxItems: 1 61 + 62 + required: 63 + - compatible 64 + - reg 65 + - gpio-controller 66 + - "#gpio-cells" 67 + 68 + required: 69 + - compatible 70 + - "#address-cells" 71 + - "#size-cells" 72 + 73 + examples: 74 + - | 75 + sysreg@0 { 76 + compatible = "arm,vexpress-sysreg"; 77 + reg = <0x00000 0x1000>; 78 + #address-cells = <1>; 79 + #size-cells = <1>; 80 + ranges = <0 0 0x1000>; 81 + 82 + v2m_led_gpios: gpio@8 { 83 + compatible = "arm,vexpress-sysreg,sys_led"; 84 + reg = <0x008 4>; 85 + gpio-controller; 86 + #gpio-cells = <2>; 87 + }; 88 + }; 89 + 90 + ...