|
@@ -94,6 +94,9 @@ static int of_i2c_gpio_get_pins(struct device_node *np,
|
|
|
*sda_pin = of_get_gpio(np, 0);
|
|
|
*scl_pin = of_get_gpio(np, 1);
|
|
|
|
|
|
+ if (*sda_pin == -EPROBE_DEFER || *scl_pin == -EPROBE_DEFER)
|
|
|
+ return -EPROBE_DEFER;
|
|
|
+
|
|
|
if (!gpio_is_valid(*sda_pin) || !gpio_is_valid(*scl_pin)) {
|
|
|
pr_err("%s: invalid GPIO pins, sda=%d/scl=%d\n",
|
|
|
np->full_name, *sda_pin, *scl_pin);
|