Skip to content

Commit cf8ee6d

Browse files
can: mcp251xfd: mcp251xfd_probe(): use dev_err_probe() to simplify error handling
dev_err_probe() can reduce code size, uniform error handling and record the defer probe reason etc., use it to simplify the code. Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Marc Kleine-Budde <[email protected]>
1 parent dfe99ba commit cf8ee6d

File tree

1 file changed

+12
-16
lines changed

1 file changed

+12
-16
lines changed

drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2849,32 +2849,28 @@ static int mcp251xfd_probe(struct spi_device *spi)
28492849

28502850
rx_int = devm_gpiod_get_optional(&spi->dev, "microchip,rx-int",
28512851
GPIOD_IN);
2852-
if (PTR_ERR(rx_int) == -EPROBE_DEFER)
2853-
return -EPROBE_DEFER;
2854-
else if (IS_ERR(rx_int))
2855-
return PTR_ERR(rx_int);
2852+
if (IS_ERR(rx_int))
2853+
return dev_err_probe(&spi->dev, PTR_ERR(rx_int),
2854+
"Failed to get RX-INT!\n");
28562855

28572856
reg_vdd = devm_regulator_get_optional(&spi->dev, "vdd");
2858-
if (PTR_ERR(reg_vdd) == -EPROBE_DEFER)
2859-
return -EPROBE_DEFER;
2860-
else if (PTR_ERR(reg_vdd) == -ENODEV)
2857+
if (PTR_ERR(reg_vdd) == -ENODEV)
28612858
reg_vdd = NULL;
28622859
else if (IS_ERR(reg_vdd))
2863-
return PTR_ERR(reg_vdd);
2860+
return dev_err_probe(&spi->dev, PTR_ERR(reg_vdd),
2861+
"Failed to get VDD regulator!\n");
28642862

28652863
reg_xceiver = devm_regulator_get_optional(&spi->dev, "xceiver");
2866-
if (PTR_ERR(reg_xceiver) == -EPROBE_DEFER)
2867-
return -EPROBE_DEFER;
2868-
else if (PTR_ERR(reg_xceiver) == -ENODEV)
2864+
if (PTR_ERR(reg_xceiver) == -ENODEV)
28692865
reg_xceiver = NULL;
28702866
else if (IS_ERR(reg_xceiver))
2871-
return PTR_ERR(reg_xceiver);
2867+
return dev_err_probe(&spi->dev, PTR_ERR(reg_xceiver),
2868+
"Failed to get Transceiver regulator!\n");
28722869

28732870
clk = devm_clk_get(&spi->dev, NULL);
2874-
if (IS_ERR(clk)) {
2875-
dev_err(&spi->dev, "No Oscillator (clock) defined.\n");
2876-
return PTR_ERR(clk);
2877-
}
2871+
if (IS_ERR(clk))
2872+
dev_err_probe(&spi->dev, PTR_ERR(clk),
2873+
"Failed to get Oscillator (clock)!\n");
28782874
freq = clk_get_rate(clk);
28792875

28802876
/* Sanity check */

0 commit comments

Comments
 (0)