Message ID | 20210916153156.14098-1-caihuoqing@baidu.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Input: cyttsp - Make use of the helper function dev_err_probe() | expand |
Hi Cai, On Thu, Sep 16, 2021 at 5:32 PM Cai Huoqing <caihuoqing@baidu.com> wrote: > if (IS_ERR(ts->reset_gpio)) { > error = PTR_ERR(ts->reset_gpio); > - dev_err(dev, "Failed to request reset gpio, error %d\n", error); > + dev_err_probe(dev, error, "Failed to request reset gpio\n"); > return ERR_PTR(error); In this case you're supposed to do return dev_err_probe(dev, error, "Failed to request reset gpio\n"); Yours, Linus Walleij
Hi thanks for your feedback. On 17 9月 21 00:30:32, Linus Walleij wrote: > Hi Cai, > > On Thu, Sep 16, 2021 at 5:32 PM Cai Huoqing <caihuoqing@baidu.com> wrote: > > > if (IS_ERR(ts->reset_gpio)) { > > error = PTR_ERR(ts->reset_gpio); > > - dev_err(dev, "Failed to request reset gpio, error %d\n", error); > > + dev_err_probe(dev, error, "Failed to request reset gpio\n"); > > return ERR_PTR(error); > > In this case you're supposed to do > > return dev_err_probe(dev, error, "Failed to request reset gpio\n"); the probe function is defined: "struct cyttsp *cyttsp_probe(" so it is required to return a PTR:cyttsp *. Thanks Cai > > Yours, > Linus Walleij
On Fri, Sep 17, 2021 at 3:35 AM Cai Huoqing <caihuoqing@baidu.com> wrote: > On 17 9月 21 00:30:32, Linus Walleij wrote: > > On Thu, Sep 16, 2021 at 5:32 PM Cai Huoqing <caihuoqing@baidu.com> wrote: > > > > > if (IS_ERR(ts->reset_gpio)) { > > > error = PTR_ERR(ts->reset_gpio); > > > - dev_err(dev, "Failed to request reset gpio, error %d\n", error); > > > + dev_err_probe(dev, error, "Failed to request reset gpio\n"); > > > return ERR_PTR(error); > > > > In this case you're supposed to do > > > > return dev_err_probe(dev, error, "Failed to request reset gpio\n"); > the probe function is defined: > "struct cyttsp *cyttsp_probe(" > > so it is required to return a PTR:cyttsp *. What about return ERR_PTR(dev_err_probe(dev, error, "Failed to request reset gpio\n")); Yours, Linus Walleij
diff --git a/drivers/input/touchscreen/cyttsp_core.c b/drivers/input/touchscreen/cyttsp_core.c index 1dbd849c9613..01646910c9db 100644 --- a/drivers/input/touchscreen/cyttsp_core.c +++ b/drivers/input/touchscreen/cyttsp_core.c @@ -673,7 +673,7 @@ struct cyttsp *cyttsp_probe(const struct cyttsp_bus_ops *bus_ops, ts->reset_gpio = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_LOW); if (IS_ERR(ts->reset_gpio)) { error = PTR_ERR(ts->reset_gpio); - dev_err(dev, "Failed to request reset gpio, error %d\n", error); + dev_err_probe(dev, error, "Failed to request reset gpio\n"); return ERR_PTR(error); }
When possible use dev_err_probe help to properly deal with the PROBE_DEFER error, the benefit is that DEFER issue will be logged in the devices_deferred debugfs file. Using dev_err_probe() can reduce code size, and the error value gets printed. Signed-off-by: Cai Huoqing <caihuoqing@baidu.com> --- drivers/input/touchscreen/cyttsp_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)