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

dt-bindings: ipmi: Convert IPMI-SMIC bindings to json-schema

Convert the generic IPMI controller bindings to DT schema format
using json-schema.

The device_type property is deprecated for most node per the DT spec,
but at least the Linux driver matches on it, so I keep it in.

The Linux driver parses for some additional and optional properties,
but there are no in-tree users. Let's allow extra properties to cover
any other users.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Rob Herring <robh@kernel.org>

authored by

Andre Przywara and committed by
Rob Herring
fdab2dc5 a6325e3e

+63 -25
-25
Documentation/devicetree/bindings/ipmi/ipmi-smic.txt
··· 1 - IPMI device 2 - 3 - Required properties: 4 - - compatible: should be one of ipmi-kcs, ipmi-smic, or ipmi-bt 5 - - device_type: should be ipmi 6 - - reg: Address and length of the register set for the device 7 - 8 - Optional properties: 9 - - interrupts: The interrupt for the device. Without this the interface 10 - is polled. 11 - - reg-size - The size of the register. Defaults to 1 12 - - reg-spacing - The number of bytes between register starts. Defaults to 1 13 - - reg-shift - The amount to shift the registers to the right to get the data 14 - into bit zero. 15 - 16 - Example: 17 - 18 - smic@fff3a000 { 19 - compatible = "ipmi-smic"; 20 - device_type = "ipmi"; 21 - reg = <0xfff3a000 0x1000>; 22 - interrupts = <0 24 4>; 23 - reg-size = <4>; 24 - reg-spacing = <4>; 25 - };
+63
Documentation/devicetree/bindings/ipmi/ipmi-smic.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/ipmi/ipmi-smic.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: IPMI device bindings 8 + 9 + description: IPMI device bindings 10 + 11 + maintainers: 12 + - Corey Minyard <cminyard@mvista.com> 13 + 14 + properties: 15 + compatible: 16 + enum: 17 + - ipmi-kcs 18 + - ipmi-smic 19 + - ipmi-bt 20 + 21 + device_type: 22 + items: 23 + - const: "ipmi" 24 + 25 + reg: 26 + maxItems: 1 27 + 28 + interrupts: 29 + description: Interface is polled if this property is omitted. 30 + maxItems: 1 31 + 32 + reg-size: 33 + description: The access width of the register in bytes. Defaults to 1. 34 + allOf: 35 + - $ref: /schemas/types.yaml#/definitions/uint32 36 + - enum: [1, 2, 4, 8] 37 + 38 + reg-spacing: 39 + $ref: /schemas/types.yaml#/definitions/uint32 40 + description: The number of bytes between register starts. Defaults to 1. 41 + 42 + reg-shift: 43 + description: | 44 + The amount of bits to shift the register content to the right to get 45 + the data into bit zero. 46 + allOf: 47 + - $ref: /schemas/types.yaml#/definitions/uint32 48 + - maximum: 56 49 + 50 + required: 51 + - compatible 52 + - reg 53 + 54 + examples: 55 + - | 56 + smic@fff3a000 { 57 + compatible = "ipmi-smic"; 58 + device_type = "ipmi"; 59 + reg = <0xfff3a000 0x1000>; 60 + interrupts = <0 24 4>; 61 + reg-size = <4>; 62 + reg-spacing = <4>; 63 + };