0001 # SPDX-License-Identifier: GPL-2.0-only
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/i2c/i2c-pxa.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Marvell MMP I2C controller bindings
0008
0009 maintainers:
0010 - Rob Herring <robh+dt@kernel.org>
0011
0012 allOf:
0013 - $ref: /schemas/i2c/i2c-controller.yaml#
0014 - if:
0015 not:
0016 required:
0017 - mrvl,i2c-polling
0018 then:
0019 required:
0020 - interrupts
0021
0022 properties:
0023 compatible:
0024 enum:
0025 - mrvl,mmp-twsi
0026 - mrvl,pxa-i2c
0027 - marvell,armada-3700-i2c
0028
0029 reg:
0030 maxItems: 1
0031
0032 interrupts:
0033 maxItems: 1
0034
0035 clocks:
0036 minItems: 1
0037
0038 resets:
0039 minItems: 1
0040
0041 mrvl,i2c-polling:
0042 $ref: /schemas/types.yaml#/definitions/flag
0043 description: |
0044 Disable interrupt of i2c controller. Polling status register of i2c
0045 controller instead.
0046
0047 mrvl,i2c-fast-mode:
0048 $ref: /schemas/types.yaml#/definitions/flag
0049 description: Enable fast mode of i2c controller.
0050
0051 unevaluatedProperties: false
0052
0053 required:
0054 - compatible
0055 - reg
0056 - interrupts
0057 - clocks
0058 - '#address-cells'
0059 - '#size-cells'
0060
0061 examples:
0062 - |
0063 #include <dt-bindings/clock/marvell,mmp2.h>
0064 i2c@d4011000 {
0065 compatible = "mrvl,mmp-twsi";
0066 reg = <0xd4011000 0x1000>;
0067 interrupts = <7>;
0068 clocks = <&soc_clocks MMP2_CLK_TWSI1>;
0069 mrvl,i2c-fast-mode;
0070 #address-cells = <1>;
0071 #size-cells = <0>;
0072 };
0073
0074 ...