Path: blob/main/sys/contrib/device-tree/Bindings/i2c/i2c-mt65xx.yaml
48375 views
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)1%YAML 1.22---3$id: http://devicetree.org/schemas/i2c/i2c-mt65xx.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: MediaTek I2C controller78description:9This driver interfaces with the native I2C controller present in10various MediaTek SoCs.1112allOf:13- $ref: /schemas/i2c/i2c-controller.yaml#1415maintainers:16- Qii Wang <qii.wang@mediatek.com>1718properties:19compatible:20oneOf:21- const: mediatek,mt2712-i2c22- const: mediatek,mt6577-i2c23- const: mediatek,mt6589-i2c24- const: mediatek,mt7622-i2c25- const: mediatek,mt7981-i2c26- const: mediatek,mt7986-i2c27- const: mediatek,mt8168-i2c28- const: mediatek,mt8173-i2c29- const: mediatek,mt8183-i2c30- const: mediatek,mt8186-i2c31- const: mediatek,mt8188-i2c32- const: mediatek,mt8192-i2c33- items:34- enum:35- mediatek,mt7629-i2c36- mediatek,mt8516-i2c37- const: mediatek,mt2712-i2c38- items:39- enum:40- mediatek,mt2701-i2c41- mediatek,mt6797-i2c42- mediatek,mt7623-i2c43- const: mediatek,mt6577-i2c44- items:45- enum:46- mediatek,mt8365-i2c47- const: mediatek,mt8168-i2c48- items:49- enum:50- mediatek,mt6795-i2c51- const: mediatek,mt8173-i2c52- items:53- enum:54- mediatek,mt8195-i2c55- const: mediatek,mt8192-i2c5657reg:58items:59- description: Physical base address60- description: DMA base address6162interrupts:63maxItems: 16465clocks:66minItems: 267items:68- description: Main clock for I2C bus69- description: Clock for I2C via DMA70- description: Bus arbitrator clock71- description: Clock for I2C from PMIC7273clock-names:74minItems: 275items:76- const: main77- const: dma78- const: arb79- const: pmic8081clock-div:82$ref: /schemas/types.yaml#/definitions/uint3283description: Frequency divider of clock source in I2C module8485clock-frequency:86default: 10000087description:88SCL frequency to use (in Hz). If omitted, 100kHz is used.8990mediatek,have-pmic:91description: Platform controls I2C from PMIC side92type: boolean9394mediatek,use-push-pull:95description: Use push-pull mode I/O config96type: boolean9798vbus-supply:99description: Phandle to the regulator providing power to SCL/SDA100101required:102- compatible103- reg104- clocks105- clock-names106- clock-div107- interrupts108109unevaluatedProperties: false110111examples:112- |113#include <dt-bindings/interrupt-controller/arm-gic.h>114#include <dt-bindings/interrupt-controller/irq.h>115116i2c0: i2c@1100d000 {117compatible = "mediatek,mt6577-i2c";118reg = <0x1100d000 0x70>, <0x11000300 0x80>;119interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_LOW>;120clocks = <&i2c0_ck>, <&ap_dma_ck>;121clock-names = "main", "dma";122clock-div = <16>;123clock-frequency = <400000>;124mediatek,have-pmic;125126#address-cells = <1>;127#size-cells = <0>;128};129130131