]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
can: tcan4x5x: Add error messages in probe
authorMarkus Schneider-Pargmann <msp@baylibre.com>
Fri, 28 Jul 2023 14:19:23 +0000 (16:19 +0200)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Mon, 31 Jul 2023 08:41:09 +0000 (10:41 +0200)
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>
drivers/net/can/m_can/tcan4x5x-core.c

index 2d329b4e4f52cabf2a83853f163499eb45cc4ead..8a4143809d337c2147ebc0408c8b8bd8f8bee204 100644 (file)
@@ -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;
        }
@@ -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)) {
@@ -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;