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

dt-bindings: misc: Convert IDT 89HPESx to DT schema

Convert the IDT 89HPESx device binding to DT schema format.

"onsemi,24c64" was not a documented compatible string, so update the
example to "atmel,24c64". It's not clear what's in use here as no
upstream dts files have the eeprom child node.

Acked-by: Serge Semin <fancer.lancer@gmail.com>
Link: https://lore.kernel.org/r/20221005212631.122145-1-robh@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>

+72 -44
+72
Documentation/devicetree/bindings/misc/idt,89hpesx.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/misc/idt,89hpesx.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: EEPROM / CSR SMBus-slave interface of IDT 89HPESx devices 8 + 9 + maintainers: 10 + - Serge Semin <fancer.lancer@gmail.com> 11 + 12 + select: 13 + properties: 14 + compatible: 15 + contains: 16 + pattern: '^idt,89hpes' 17 + required: 18 + - compatible 19 + 20 + properties: 21 + compatible: 22 + oneOf: 23 + - pattern: '^idt,89hpes(8nt2|12nt3|12n3a?|24n3a?|(12|24)t3g2|4t4g2|10t4g2|[56]t5|8t5a?)$' 24 + - pattern: '^idt,89hpes(6t6g2|16t7|(24t6|32t8|48t12|16t4a?)(g2)?)$' 25 + - pattern: '^idt,89hpes(24nt6a|32nt8[ab]|12nt12|16nt16|24nt24|32nt24[ab])g2$' 26 + - pattern: '^idt,89hpes((32h8|48h12a?|22h16|34h16|64h16a?)(g2)?|16h16)$' 27 + 28 + reg: 29 + maxItems: 1 30 + 31 + '#address-cells': 32 + const: 1 33 + 34 + '#size-cells': 35 + const: 0 36 + 37 + patternProperties: 38 + '^eeprom@': 39 + $ref: /schemas/eeprom/at24.yaml# 40 + unevaluatedProperties: false 41 + 42 + properties: 43 + compatible: 44 + description: Only a subset of devices are supported 45 + pattern: ',24c(32|64|128|256|512)$' 46 + 47 + required: 48 + - compatible 49 + - reg 50 + 51 + additionalProperties: false 52 + 53 + examples: 54 + - | 55 + i2c { 56 + #address-cells = <1>; 57 + #size-cells = <0>; 58 + 59 + idt@74 { 60 + compatible = "idt,89hpes32nt8ag2"; 61 + reg = <0x74>; 62 + #address-cells = <1>; 63 + #size-cells = <0>; 64 + 65 + eeprom@50 { 66 + compatible = "atmel,24c64"; 67 + reg = <0x50>; 68 + read-only; 69 + }; 70 + }; 71 + }; 72 + ...
-44
Documentation/devicetree/bindings/misc/idt_89hpesx.txt
··· 1 - EEPROM / CSR SMBus-slave interface of IDT 89HPESx devices 2 - 3 - Required properties: 4 - - compatible : should be "<manufacturer>,<type>" 5 - Basically there is only one manufacturer: idt, but some 6 - compatible devices may be produced in future. Following devices 7 - are supported: 89hpes8nt2, 89hpes12nt3, 89hpes24nt6ag2, 8 - 89hpes32nt8ag2, 89hpes32nt8bg2, 89hpes12nt12g2, 89hpes16nt16g2, 9 - 89hpes24nt24g2, 89hpes32nt24ag2, 89hpes32nt24bg2; 10 - 89hpes12n3, 89hpes12n3a, 89hpes24n3, 89hpes24n3a; 11 - 89hpes32h8, 89hpes32h8g2, 89hpes48h12, 89hpes48h12g2, 12 - 89hpes48h12ag2, 89hpes16h16, 89hpes22h16, 89hpes22h16g2, 13 - 89hpes34h16, 89hpes34h16g2, 89hpes64h16, 89hpes64h16g2, 14 - 89hpes64h16ag2; 15 - 89hpes12t3g2, 89hpes24t3g2, 89hpes16t4, 89hpes4t4g2, 16 - 89hpes10t4g2, 89hpes16t4g2, 89hpes16t4ag2, 89hpes5t5, 17 - 89hpes6t5, 89hpes8t5, 89hpes8t5a, 89hpes24t6, 89hpes6t6g2, 18 - 89hpes24t6g2, 89hpes16t7, 89hpes32t8, 89hpes32t8g2, 19 - 89hpes48t12, 89hpes48t12g2. 20 - - reg : I2C address of the IDT 89HPESx device. 21 - 22 - Optionally there can be EEPROM-compatible subnode: 23 - - compatible: There are five EEPROM devices supported: 24c32, 24c64, 24c128, 24 - 24c256 and 24c512 differed by size. 25 - - reg: Custom address of EEPROM device (If not specified IDT 89HPESx 26 - (optional) device will try to communicate with EEPROM sited by default 27 - address - 0x50) 28 - - read-only : Parameterless property disables writes to the EEPROM 29 - (optional) 30 - 31 - Example: 32 - idt@60 { 33 - compatible = "idt,89hpes32nt8ag2"; 34 - reg = <0x74>; 35 - #address-cells = <1>; 36 - #size-cells = <0>; 37 - 38 - eeprom@50 { 39 - compatible = "onsemi,24c64"; 40 - reg = <0x50>; 41 - read-only; 42 - }; 43 - }; 44 -