xref: /freebsd/sys/contrib/device-tree/Bindings/i2c/i2c-sprd.txt (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1c66ec88fSEmmanuel VadotI2C for Spreadtrum platforms
2c66ec88fSEmmanuel Vadot
3c66ec88fSEmmanuel VadotRequired properties:
4c66ec88fSEmmanuel Vadot- compatible: Should be "sprd,sc9860-i2c".
5c66ec88fSEmmanuel Vadot- reg: Specify the physical base address of the controller and length
6c66ec88fSEmmanuel Vadot  of memory mapped region.
7c66ec88fSEmmanuel Vadot- interrupts: Should contain I2C interrupt.
8c66ec88fSEmmanuel Vadot- clock-names: Should contain following entries:
9c66ec88fSEmmanuel Vadot  "i2c" for I2C clock,
10c66ec88fSEmmanuel Vadot  "source" for I2C source (parent) clock,
11c66ec88fSEmmanuel Vadot  "enable" for I2C module enable clock.
12c66ec88fSEmmanuel Vadot- clocks: Should contain a clock specifier for each entry in clock-names.
13*aa1a8ff2SEmmanuel Vadot- clock-frequency: Contains desired I2C bus clock frequency in Hz.
14c66ec88fSEmmanuel Vadot- #address-cells: Should be 1 to describe address cells for I2C device address.
15c66ec88fSEmmanuel Vadot- #size-cells: Should be 0 means no size cell for I2C device address.
16c66ec88fSEmmanuel Vadot
17c66ec88fSEmmanuel VadotOptional properties:
18c66ec88fSEmmanuel Vadot- Child nodes conforming to I2C bus binding
19c66ec88fSEmmanuel Vadot
20c66ec88fSEmmanuel VadotExamples:
21c66ec88fSEmmanuel Vadoti2c0: i2c@70500000 {
22c66ec88fSEmmanuel Vadot	compatible = "sprd,sc9860-i2c";
23c66ec88fSEmmanuel Vadot	reg = <0 0x70500000 0 0x1000>;
24c66ec88fSEmmanuel Vadot	interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
25c66ec88fSEmmanuel Vadot	clock-names = "i2c", "source", "enable";
26c66ec88fSEmmanuel Vadot	clocks = <&clk_i2c3>, <&ext_26m>, <&clk_ap_apb_gates 11>;
27c66ec88fSEmmanuel Vadot	clock-frequency = <400000>;
28c66ec88fSEmmanuel Vadot	#address-cells = <1>;
29c66ec88fSEmmanuel Vadot	#size-cells = <0>;
30c66ec88fSEmmanuel Vadot};
31c66ec88fSEmmanuel Vadot
32