Merge tag 'media/v4.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[deliverable/linux.git] / Documentation / devicetree / bindings / i2c / i2c-mt6577.txt
CommitLineData
ce38815d
XC
1* Mediatek's I2C controller
2
3The Mediatek's I2C controller is used to interface with I2C devices.
4
5Required properties:
6 - compatible: value should be either of the following.
7 (a) "mediatek,mt6577-i2c", for i2c compatible with mt6577 i2c.
8 (b) "mediatek,mt6589-i2c", for i2c compatible with mt6589 i2c.
9 (c) "mediatek,mt8127-i2c", for i2c compatible with mt8127 i2c.
10 (d) "mediatek,mt8135-i2c", for i2c compatible with mt8135 i2c.
11 (e) "mediatek,mt8173-i2c", for i2c compatible with mt8173 i2c.
12 - reg: physical base address of the controller and dma base, length of memory
13 mapped region.
14 - interrupts: interrupt number to the cpu.
15 - clock-div: the fixed value for frequency divider of clock source in i2c
16 module. Each IC may be different.
17 - clocks: clock name from clock manager
18 - clock-names: Must include "main" and "dma", if enable have-pmic need include
19 "pmic" extra.
20
21Optional properties:
22 - clock-frequency: Frequency in Hz of the bus when transfer, the default value
23 is 100000.
24 - mediatek,have-pmic: platform can control i2c form special pmic side.
25 Only mt6589 and mt8135 support this feature.
26 - mediatek,use-push-pull: IO config use push-pull mode.
27
28Example:
29
30 i2c0: i2c@1100d000 {
31 compatible = "mediatek,mt6577-i2c";
32 reg = <0x1100d000 0x70>,
33 <0x11000300 0x80>;
34 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_LOW>;
35 clock-frequency = <400000>;
36 mediatek,have-pmic;
37 clock-div = <16>;
38 clocks = <&i2c0_ck>, <&ap_dma_ck>;
39 clock-names = "main", "dma";
40 };
41
This page took 0.034886 seconds and 5 git commands to generate.