Message ID | 20230802095737.3957587-10-liaochang1@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Use dev_err_probe in i2c probe function | expand |
On Wed, Aug 02, 2023 at 05:57:37PM +0800, Liao Chang wrote: > Use the dev_err_probe function instead of dev_err in the probe function > so that the printed messge includes the return value and also handles > -EPROBE_DEFER nicely. > > Signed-off-by: Liao Chang <liaochang1@huawei.com> > --- > drivers/i2c/busses/i2c-synquacer.c | 19 ++++++------------- > 1 file changed, 6 insertions(+), 13 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-synquacer.c b/drivers/i2c/busses/i2c-synquacer.c > index 4cc196ca8f6d..8ada613598eb 100644 > --- a/drivers/i2c/busses/i2c-synquacer.c > +++ b/drivers/i2c/busses/i2c-synquacer.c > @@ -557,11 +557,8 @@ static int synquacer_i2c_probe(struct platform_device *pdev) > dev_dbg(&pdev->dev, "clock source %p\n", i2c->pclk); > > ret = clk_prepare_enable(i2c->pclk); > - if (ret) { > - dev_err(&pdev->dev, "failed to enable clock (%d)\n", > - ret); > - return ret; > - } > + if (ret) > + return dev_err_probe(&pdev->dev, ret, "failed to enable clock\n"); > i2c->pclkrate = clk_get_rate(i2c->pclk); > } > you forgot dev_err(&pdev->dev, "PCLK missing or out of range (%d)\n", i2c->pclkrate); return -EINVAL; Thanks, Andi
diff --git a/drivers/i2c/busses/i2c-synquacer.c b/drivers/i2c/busses/i2c-synquacer.c index 4cc196ca8f6d..8ada613598eb 100644 --- a/drivers/i2c/busses/i2c-synquacer.c +++ b/drivers/i2c/busses/i2c-synquacer.c @@ -557,11 +557,8 @@ static int synquacer_i2c_probe(struct platform_device *pdev) dev_dbg(&pdev->dev, "clock source %p\n", i2c->pclk); ret = clk_prepare_enable(i2c->pclk); - if (ret) { - dev_err(&pdev->dev, "failed to enable clock (%d)\n", - ret); - return ret; - } + if (ret) + return dev_err_probe(&pdev->dev, ret, "failed to enable clock\n"); i2c->pclkrate = clk_get_rate(i2c->pclk); } @@ -582,10 +579,8 @@ static int synquacer_i2c_probe(struct platform_device *pdev) ret = devm_request_irq(&pdev->dev, i2c->irq, synquacer_i2c_isr, 0, dev_name(&pdev->dev), i2c); - if (ret < 0) { - dev_err(&pdev->dev, "cannot claim IRQ %d\n", i2c->irq); - return ret; - } + if (ret < 0) + return dev_err_probe(&pdev->dev, ret, "cannot claim IRQ %d\n", i2c->irq); i2c->state = STATE_IDLE; i2c->dev = &pdev->dev; @@ -605,10 +600,8 @@ static int synquacer_i2c_probe(struct platform_device *pdev) synquacer_i2c_hw_init(i2c); ret = i2c_add_numbered_adapter(&i2c->adapter); - if (ret) { - dev_err(&pdev->dev, "failed to add bus to i2c core\n"); - return ret; - } + if (ret) + return dev_err_probe(&pdev->dev, ret, "failed to add bus to i2c core\n"); platform_set_drvdata(pdev, i2c);
Use the dev_err_probe function instead of dev_err in the probe function so that the printed messge includes the return value and also handles -EPROBE_DEFER nicely. Signed-off-by: Liao Chang <liaochang1@huawei.com> --- drivers/i2c/busses/i2c-synquacer.c | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-)