142 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/i2c/marvell,mv64xxx-i2c.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Marvell MV64XXX I2C Controller8 9maintainers:10 - Gregory CLEMENT <gregory.clement@bootlin.com>11 12properties:13 compatible:14 oneOf:15 - const: allwinner,sun4i-a10-i2c16 - items:17 - const: allwinner,sun7i-a20-i2c18 - const: allwinner,sun4i-a10-i2c19 - const: allwinner,sun6i-a31-i2c20 - items:21 - enum:22 - allwinner,suniv-f1c100s-i2c23 - allwinner,sun8i-a23-i2c24 - allwinner,sun8i-a83t-i2c25 - allwinner,sun8i-v536-i2c26 - allwinner,sun50i-a64-i2c27 - allwinner,sun50i-h6-i2c28 - const: allwinner,sun6i-a31-i2c29 - description: Allwinner SoCs with offload support30 items:31 - enum:32 - allwinner,sun20i-d1-i2c33 - allwinner,sun50i-a100-i2c34 - allwinner,sun50i-h616-i2c35 - allwinner,sun50i-r329-i2c36 - const: allwinner,sun8i-v536-i2c37 - const: allwinner,sun6i-a31-i2c38 - const: marvell,mv64xxx-i2c39 - const: marvell,mv78230-i2c40 - const: marvell,mv78230-a0-i2c41 42 description:43 Only use "marvell,mv78230-a0-i2c" for a very rare, initial44 version of the SoC which had broken offload support. Linux45 auto-detects this and sets it appropriately.46 47 reg:48 maxItems: 149 50 interrupts:51 maxItems: 152 53 clocks:54 minItems: 155 items:56 - description: Reference clock for the I2C bus57 - description: Bus clock (Only for Armada 7K/8K)58 59 clock-names:60 minItems: 161 items:62 - const: core63 - const: reg64 description:65 Mandatory if two clocks are used (only for Armada 7k and 8k).66 67 resets:68 maxItems: 169 70 dmas:71 items:72 - description: RX DMA Channel73 - description: TX DMA Channel74 75 dma-names:76 items:77 - const: rx78 - const: tx79 80dependencies:81 dmas: [ dma-names ]82 83required:84 - compatible85 - reg86 - interrupts87 88allOf:89 - $ref: /schemas/i2c/i2c-controller.yaml#90 - if:91 properties:92 compatible:93 contains:94 enum:95 - allwinner,sun4i-a10-i2c96 - allwinner,sun6i-a31-i2c97 98 then:99 required:100 - clocks101 102 - if:103 properties:104 compatible:105 contains:106 const: allwinner,sun6i-a31-i2c107 108 then:109 required:110 - resets111 112unevaluatedProperties: false113 114examples:115 - |116 i2c@11000 {117 compatible = "marvell,mv64xxx-i2c";118 reg = <0x11000 0x20>;119 interrupts = <29>;120 clock-frequency = <100000>;121 };122 123 - |124 i2c@11000 {125 compatible = "marvell,mv78230-i2c";126 reg = <0x11000 0x100>;127 interrupts = <29>;128 clock-frequency = <100000>;129 };130 131 - |132 i2c@701000 {133 compatible = "marvell,mv78230-i2c";134 reg = <0x701000 0x20>;135 interrupts = <29>;136 clock-frequency = <100000>;137 clock-names = "core", "reg";138 clocks = <&core_clock>, <®_clock>;139 };140 141...142