diff options
Diffstat (limited to 'drivers/spi/gpio_spi.c')
-rw-r--r-- | drivers/spi/gpio_spi.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/spi/gpio_spi.c b/drivers/spi/gpio_spi.c index 1956eed9cc..e5664df3fe 100644 --- a/drivers/spi/gpio_spi.c +++ b/drivers/spi/gpio_spi.c @@ -126,9 +126,9 @@ static int gpio_spi_setup(struct spi_device *spi) return 0; } -static int gpio_spi_of_probe(struct device_d *dev) +static int gpio_spi_of_probe(struct device *dev) { - struct device_node *np = dev->device_node; + struct device_node *np = dev->of_node; struct gpio_spi_pdata *pdata; int n, sck; @@ -136,12 +136,9 @@ static int gpio_spi_of_probe(struct device_d *dev) return 0; sck = of_get_named_gpio(np, "gpio-sck", 0); - if (sck == -EPROBE_DEFER) - return sck; - if (!gpio_is_valid(sck)) { - dev_err(dev, "missing mandatory SCK gpio\n"); - return sck; - } + if (!gpio_is_valid(sck)) + return dev_err_probe(dev, sck < 0 ? sck : -EINVAL, + "missing mandatory SCK gpio\n"); pdata = xzalloc(sizeof(*pdata)); pdata->sck = sck; @@ -166,7 +163,7 @@ static int gpio_spi_of_probe(struct device_d *dev) return 0; } -static int gpio_spi_probe(struct device_d *dev) +static int gpio_spi_probe(struct device *dev) { struct gpio_spi *priv; struct gpio_spi_pdata *pdata; @@ -222,8 +219,9 @@ static struct of_device_id __maybe_unused gpio_spi_dt_ids[] = { { .compatible = "spi-gpio", }, { } }; +MODULE_DEVICE_TABLE(of, gpio_spi_dt_ids); -static struct driver_d gpio_spi_driver = { +static struct driver gpio_spi_driver = { .name = "gpio-spi", .probe = gpio_spi_probe, .of_compatible = DRV_OF_COMPAT(gpio_spi_dt_ids), |