Skip to content

Commit

Permalink
can: tcan4x5x: Add error messages in probe
Browse files Browse the repository at this point in the history
To be able to understand issues during probe easier, add error messages
if something fails.

Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com>
Link: https://lore.kernel.org/all/20230728141923.162477-7-msp@baylibre.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
  • Loading branch information
Markus Schneider-Pargmann authored and Marc Kleine-Budde committed Jul 31, 2023
1 parent 142c6dc commit 35e7aaa
Showing 1 changed file with 23 additions and 6 deletions.
29 changes: 23 additions & 6 deletions drivers/net/can/m_can/tcan4x5x-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -402,6 +402,8 @@ static int tcan4x5x_can_probe(struct spi_device *spi)

/* Sanity check */
if (freq < 20000000 || freq > TCAN4X5X_EXT_CLK_DEF) {
dev_err(&spi->dev, "Clock frequency is out of supported range %d\n",
freq);
ret = -ERANGE;
goto out_m_can_class_free_dev;
}
Expand All @@ -420,16 +422,23 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
/* Configure the SPI bus */
spi->bits_per_word = 8;
ret = spi_setup(spi);
if (ret)
if (ret) {
dev_err(&spi->dev, "SPI setup failed %pe\n", ERR_PTR(ret));
goto out_m_can_class_free_dev;
}

ret = tcan4x5x_regmap_init(priv);
if (ret)
if (ret) {
dev_err(&spi->dev, "regmap init failed %pe\n", ERR_PTR(ret));
goto out_m_can_class_free_dev;
}

ret = tcan4x5x_power_enable(priv->power, 1);
if (ret)
if (ret) {
dev_err(&spi->dev, "Enabling regulator failed %pe\n",
ERR_PTR(ret));
goto out_m_can_class_free_dev;
}

version_info = tcan4x5x_find_version(priv);
if (IS_ERR(version_info)) {
Expand All @@ -438,16 +447,24 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
}

ret = tcan4x5x_get_gpios(mcan_class, version_info);
if (ret)
if (ret) {
dev_err(&spi->dev, "Getting gpios failed %pe\n", ERR_PTR(ret));
goto out_power;
}

ret = tcan4x5x_init(mcan_class);
if (ret)
if (ret) {
dev_err(&spi->dev, "tcan initialization failed %pe\n",
ERR_PTR(ret));
goto out_power;
}

ret = m_can_class_register(mcan_class);
if (ret)
if (ret) {
dev_err(&spi->dev, "Failed registering m_can device %pe\n",
ERR_PTR(ret));
goto out_power;
}

netdev_info(mcan_class->net, "TCAN4X5X successfully initialized.\n");
return 0;
Expand Down

0 comments on commit 35e7aaa

Please sign in to comment.