162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/i2c/i2c-pxa.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Marvell MMP I2C controller
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Rob Herring <robh+dt@kernel.org>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciallOf:
1362306a36Sopenharmony_ci  - $ref: /schemas/i2c/i2c-controller.yaml#
1462306a36Sopenharmony_ci  - if:
1562306a36Sopenharmony_ci      not:
1662306a36Sopenharmony_ci        required:
1762306a36Sopenharmony_ci          - mrvl,i2c-polling
1862306a36Sopenharmony_ci    then:
1962306a36Sopenharmony_ci      required:
2062306a36Sopenharmony_ci        - interrupts
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ciproperties:
2362306a36Sopenharmony_ci  compatible:
2462306a36Sopenharmony_ci    enum:
2562306a36Sopenharmony_ci      - mrvl,mmp-twsi
2662306a36Sopenharmony_ci      - mrvl,pxa-i2c
2762306a36Sopenharmony_ci      - marvell,armada-3700-i2c
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci  reg:
3062306a36Sopenharmony_ci    maxItems: 1
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci  interrupts:
3362306a36Sopenharmony_ci    maxItems: 1
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci  clocks:
3662306a36Sopenharmony_ci    minItems: 1
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci  resets:
3962306a36Sopenharmony_ci    minItems: 1
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci  mrvl,i2c-polling:
4262306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/flag
4362306a36Sopenharmony_ci    description: |
4462306a36Sopenharmony_ci      Disable interrupt of i2c controller. Polling status register of i2c
4562306a36Sopenharmony_ci      controller instead.
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ci  mrvl,i2c-fast-mode:
4862306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/flag
4962306a36Sopenharmony_ci    description: Enable fast mode of i2c controller.
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ciunevaluatedProperties: false
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_cirequired:
5462306a36Sopenharmony_ci  - compatible
5562306a36Sopenharmony_ci  - reg
5662306a36Sopenharmony_ci  - interrupts
5762306a36Sopenharmony_ci  - clocks
5862306a36Sopenharmony_ci  - '#address-cells'
5962306a36Sopenharmony_ci  - '#size-cells'
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ciexamples:
6262306a36Sopenharmony_ci  - |
6362306a36Sopenharmony_ci    #include <dt-bindings/clock/marvell,mmp2.h>
6462306a36Sopenharmony_ci    i2c@d4011000 {
6562306a36Sopenharmony_ci        compatible = "mrvl,mmp-twsi";
6662306a36Sopenharmony_ci        reg = <0xd4011000 0x1000>;
6762306a36Sopenharmony_ci        interrupts = <7>;
6862306a36Sopenharmony_ci        clocks = <&soc_clocks MMP2_CLK_TWSI1>;
6962306a36Sopenharmony_ci        mrvl,i2c-fast-mode;
7062306a36Sopenharmony_ci        #address-cells = <1>;
7162306a36Sopenharmony_ci        #size-cells = <0>;
7262306a36Sopenharmony_ci    };
7362306a36Sopenharmony_ci
7462306a36Sopenharmony_ci...
75