summaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorMarc Kleine-Budde <mkl@pengutronix.de>2020-11-21 20:14:19 +0100
committerMarc Kleine-Budde <mkl@pengutronix.de>2020-11-26 11:50:32 +0100
commit1a1c436bad340cea1cff815dd2cbb2c4f6af8d43 (patch)
treec3defd66688f6f69cdc6cad75d55fd0cd2e7d085 /drivers/net
parent4ba1cb39fce4464151517a37ce0ac0a1a3f580d6 (diff)
downloadlinux-1a1c436bad340cea1cff815dd2cbb2c4f6af8d43.tar.gz
linux-1a1c436bad340cea1cff815dd2cbb2c4f6af8d43.tar.bz2
linux-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>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c4
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)