diff options
author | Marc Kleine-Budde <mkl@pengutronix.de> | 2020-11-21 20:14:19 +0100 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2020-11-26 11:50:32 +0100 |
commit | 1a1c436bad340cea1cff815dd2cbb2c4f6af8d43 (patch) | |
tree | c3defd66688f6f69cdc6cad75d55fd0cd2e7d085 | |
parent | 4ba1cb39fce4464151517a37ce0ac0a1a3f580d6 (diff) | |
download | linux-stable-1a1c436bad340cea1cff815dd2cbb2c4f6af8d43.tar.gz linux-stable-1a1c436bad340cea1cff815dd2cbb2c4f6af8d43.tar.bz2 linux-stable-1a1c436bad340cea1cff815dd2cbb2c4f6af8d43.zip |
can: mcp251xfd: mcp251xfd_probe(): bail out if no IRQ was given
This patch add a check to the mcp251xfd_probe() function to bail out and give
the user a proper error message if no IRQ is specified. Otherwise the driver
will probe just fine but ifup will fail with a meaningless "RTNETLINK answers:
Invalid argument" error message.
Link: https://lore.kernel.org/r/20201123113522.3820052-1-mkl@pengutronix.de
Reported-by: Niels Petter <petter@ka-long.de>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-rw-r--r-- | drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c b/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c index 9c215f7c5f81..8a39be076e14 100644 --- a/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c +++ b/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c @@ -2738,6 +2738,10 @@ static int mcp251xfd_probe(struct spi_device *spi) u32 freq; int err; + if (!spi->irq) + return dev_err_probe(&spi->dev, -ENXIO, + "No IRQ specified (maybe node \"interrupts-extended\" in DT missing)!\n"); + rx_int = devm_gpiod_get_optional(&spi->dev, "microchip,rx-int", GPIOD_IN); if (PTR_ERR(rx_int) == -EPROBE_DEFER) |