mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-08-15 11:46:59 +02:00
- i2c-gpio: Correctly handle new {sda, scl}-gpios bindings (Chris) - mvebu: x240: Use i2c-gpio instead of built in controller (Chris)
This commit is contained in:
commit
aaeaef2536
@ -16,7 +16,7 @@
|
|||||||
gpio0 = &gpio0;
|
gpio0 = &gpio0;
|
||||||
gpio1 = &gpio1;
|
gpio1 = &gpio1;
|
||||||
spi0 = &spi0;
|
spi0 = &spi0;
|
||||||
i2c0 = &i2c0;
|
i2c0 = &i2cgpio;
|
||||||
usb0 = &usb0;
|
usb0 = &usb0;
|
||||||
pinctrl0 = &pinctrl0;
|
pinctrl0 = &pinctrl0;
|
||||||
};
|
};
|
||||||
@ -40,6 +40,19 @@
|
|||||||
default-state = "on";
|
default-state = "on";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
i2cgpio: i2c-gpio-0 {
|
||||||
|
compatible = "i2c-gpio";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&i2c0_gpio>;
|
||||||
|
scl-gpios = <&gpio0 26 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||||
|
sda-gpios = <&gpio0 27 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||||
|
i2c-gpio,delay-us = <2>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
&nand {
|
&nand {
|
||||||
@ -70,9 +83,7 @@
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
&i2c0 {
|
&i2cgpio {
|
||||||
status = "okay";
|
|
||||||
|
|
||||||
mux@71 {
|
mux@71 {
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
@ -177,8 +188,8 @@
|
|||||||
* LED_OE_N [23]
|
* LED_OE_N [23]
|
||||||
* USB_PWR_FLT_N [24]
|
* USB_PWR_FLT_N [24]
|
||||||
* SFP_INT_N [25]
|
* SFP_INT_N [25]
|
||||||
* I2C0_SCL [26]
|
* I2C0_SCL [26] (GPIO)
|
||||||
* I2C0_SDA [27]
|
* I2C0_SDA [27] (GPIO)
|
||||||
* USB_EN [28]
|
* USB_EN [28]
|
||||||
* MONITOR_INT_N [29]
|
* MONITOR_INT_N [29]
|
||||||
* XM1_MDC [30]
|
* XM1_MDC [30]
|
||||||
@ -201,7 +212,7 @@
|
|||||||
/* 0 1 2 3 4 5 6 7 8 9 */
|
/* 0 1 2 3 4 5 6 7 8 9 */
|
||||||
pin-func = < 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
|
pin-func = < 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
|
||||||
0xff 0xff 1 1 1 1 0xff 0xff 0 0
|
0xff 0xff 1 1 1 1 0xff 0xff 0 0
|
||||||
0 0 0 0 0 0 1 1 0 0
|
0 0 0 0 0 0 0xff 0xff 0 0
|
||||||
1 1 1 1 0 0 0 0 0 0
|
1 1 1 1 0 0 0 0 0 0
|
||||||
0 0 0 1 1 1 >;
|
0 0 0 1 1 1 >;
|
||||||
|
|
||||||
@ -209,4 +220,9 @@
|
|||||||
marvell,pins = <0 1 2 3 4 5 6 7 8 9 10 11 16 17>;
|
marvell,pins = <0 1 2 3 4 5 6 7 8 9 10 11 16 17>;
|
||||||
marvell,function = <2>;
|
marvell,function = <2>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
i2c0_gpio: i2c0-gpio-pins {
|
||||||
|
marvell,pins = <26 27>;
|
||||||
|
marvell,function = <0>;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
@ -42,6 +42,7 @@ CONFIG_CLK_MVEBU=y
|
|||||||
CONFIG_GPIO_HOG=y
|
CONFIG_GPIO_HOG=y
|
||||||
CONFIG_DM_PCA953X=y
|
CONFIG_DM_PCA953X=y
|
||||||
CONFIG_DM_I2C=y
|
CONFIG_DM_I2C=y
|
||||||
|
CONFIG_DM_I2C_GPIO=y
|
||||||
CONFIG_SYS_I2C_MVTWSI=y
|
CONFIG_SYS_I2C_MVTWSI=y
|
||||||
CONFIG_I2C_MUX=y
|
CONFIG_I2C_MUX=y
|
||||||
CONFIG_I2C_MUX_PCA954x=y
|
CONFIG_I2C_MUX_PCA954x=y
|
||||||
|
@ -339,7 +339,7 @@ static int i2c_gpio_of_to_plat(struct udevice *dev)
|
|||||||
/* "gpios" is deprecated and replaced by "sda-gpios" + "scl-gpios". */
|
/* "gpios" is deprecated and replaced by "sda-gpios" + "scl-gpios". */
|
||||||
ret = gpio_request_list_by_name(dev, "gpios", bus->gpios,
|
ret = gpio_request_list_by_name(dev, "gpios", bus->gpios,
|
||||||
ARRAY_SIZE(bus->gpios), 0);
|
ARRAY_SIZE(bus->gpios), 0);
|
||||||
if (ret == -ENOENT) {
|
if (ret == 0) {
|
||||||
ret = gpio_request_by_name(dev, "sda-gpios", 0,
|
ret = gpio_request_by_name(dev, "sda-gpios", 0,
|
||||||
&bus->gpios[PIN_SDA], 0);
|
&bus->gpios[PIN_SDA], 0);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user