Commit c1dbf4c8 authored by Théo Lebrun's avatar Théo Lebrun Committed by Thomas Bogendoerfer
Browse files

MIPS: mobileye: eyeq5: add 5 I2C controller nodes



Add the SoC I2C controller nodes to the platform devicetree. Use a
default bus frequency of 400kHz. They are AMBA devices that are matched
on PeriphID.

Set transfer timeout to 10ms instead of Linux's default of 200ms.

Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Acked-by: default avatarAndi Shyti <andi.shyti@kernel.org>
Signed-off-by: default avatarThéo Lebrun <theo.lebrun@bootlin.com>
Acked-by: default avatarGregory CLEMENT <gregory.clement@bootlin.com>
Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
parent daf3082f
Loading
Loading
Loading
Loading
+75 −0
Original line number Diff line number Diff line
@@ -110,6 +110,81 @@ soc: soc {
		ranges;
		compatible = "simple-bus";

		i2c0: i2c@300000 {
			compatible = "mobileye,eyeq5-i2c", "arm,primecell";
			reg = <0 0x300000 0x0 0x1000>;
			interrupt-parent = <&gic>;
			interrupts = <GIC_SHARED 1 IRQ_TYPE_LEVEL_HIGH>;
			clock-frequency = <400000>; /* Fast mode */
			#address-cells = <1>;
			#size-cells = <0>;
			clocks = <&olb 35>, <&olb EQ5C_PER_I2C>;
			clock-names = "i2cclk", "apb_pclk";
			resets = <&olb 0 13>;
			i2c-transfer-timeout-us = <10000>;
			mobileye,olb = <&olb 0>;
		};

		i2c1: i2c@400000 {
			compatible = "mobileye,eyeq5-i2c", "arm,primecell";
			reg = <0 0x400000 0x0 0x1000>;
			interrupt-parent = <&gic>;
			interrupts = <GIC_SHARED 2 IRQ_TYPE_LEVEL_HIGH>;
			clock-frequency = <400000>; /* Fast mode */
			#address-cells = <1>;
			#size-cells = <0>;
			clocks = <&olb 35>, <&olb EQ5C_PER_I2C>;
			clock-names = "i2cclk", "apb_pclk";
			resets = <&olb 0 14>;
			i2c-transfer-timeout-us = <10000>;
			mobileye,olb = <&olb 1>;
		};

		i2c2: i2c@500000 {
			compatible = "mobileye,eyeq5-i2c", "arm,primecell";
			reg = <0 0x500000 0x0 0x1000>;
			interrupt-parent = <&gic>;
			interrupts = <GIC_SHARED 3 IRQ_TYPE_LEVEL_HIGH>;
			clock-frequency = <400000>; /* Fast mode */
			#address-cells = <1>;
			#size-cells = <0>;
			clocks = <&olb 35>, <&olb EQ5C_PER_I2C>;
			clock-names = "i2cclk", "apb_pclk";
			resets = <&olb 0 15>;
			i2c-transfer-timeout-us = <10000>;
			mobileye,olb = <&olb 2>;
		};

		i2c3: i2c@600000 {
			compatible = "mobileye,eyeq5-i2c", "arm,primecell";
			reg = <0 0x600000 0x0 0x1000>;
			interrupt-parent = <&gic>;
			interrupts = <GIC_SHARED 4 IRQ_TYPE_LEVEL_HIGH>;
			clock-frequency = <400000>; /* Fast mode */
			#address-cells = <1>;
			#size-cells = <0>;
			clocks = <&olb 35>, <&olb EQ5C_PER_I2C>;
			clock-names = "i2cclk", "apb_pclk";
			resets = <&olb 0 16>;
			i2c-transfer-timeout-us = <10000>;
			mobileye,olb = <&olb 3>;
		};

		i2c4: i2c@700000 {
			compatible = "mobileye,eyeq5-i2c", "arm,primecell";
			reg = <0 0x700000 0x0 0x1000>;
			interrupt-parent = <&gic>;
			interrupts = <GIC_SHARED 5 IRQ_TYPE_LEVEL_HIGH>;
			clock-frequency = <400000>; /* Fast mode */
			#address-cells = <1>;
			#size-cells = <0>;
			clocks = <&olb 35>, <&olb EQ5C_PER_I2C>;
			clock-names = "i2cclk", "apb_pclk";
			resets = <&olb 0 17>;
			i2c-transfer-timeout-us = <10000>;
			mobileye,olb = <&olb 4>;
		};

		uart0: serial@800000 {
			compatible = "arm,pl011", "arm,primecell";
			reg = <0 0x800000 0x0 0x1000>;