Hi Biju, On Mon, Dec 11, 2023 at 5:57 PM Biju Das <biju.das.jz@xxxxxxxxxxxxxx> wrote: > Replace dev_err()->dev_err_probe() to simpilfy probe(). > > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> Thanks for your patch! > --- a/drivers/input/misc/da9063_onkey.c > +++ b/drivers/input/misc/da9063_onkey.c > @@ -185,10 +185,9 @@ static int da9063_onkey_probe(struct platform_device *pdev) > > onkey = devm_kzalloc(&pdev->dev, sizeof(struct da9063_onkey), > GFP_KERNEL); > - if (!onkey) { > - dev_err(&pdev->dev, "Failed to allocate memory.\n"); > - return -ENOMEM; > - } > + if (!onkey) > + return dev_err_probe(&pdev->dev, -ENOMEM, > + "Failed to allocate memory.\n"); Please drop the error printing instead, the memory allocation core code already takes care of that in case of OOM. > > onkey->config = device_get_match_data(&pdev->dev); > if (!onkey->config) > @@ -197,19 +196,17 @@ static int da9063_onkey_probe(struct platform_device *pdev) > onkey->dev = &pdev->dev; > > onkey->regmap = dev_get_regmap(pdev->dev.parent, NULL); > - if (!onkey->regmap) { > - dev_err(&pdev->dev, "Parent regmap unavailable.\n"); > - return -ENXIO; > - } > + if (!onkey->regmap) > + return dev_err_probe(&pdev->dev, -ENXIO, > + "Parent regmap unavailable.\n"); > > onkey->key_power = !of_property_read_bool(pdev->dev.of_node, > "dlg,disable-key-power"); > > onkey->input = devm_input_allocate_device(&pdev->dev); > - if (!onkey->input) { > - dev_err(&pdev->dev, "Failed to allocated input device.\n"); > - return -ENOMEM; > - } > + if (!onkey->input) > + return dev_err_probe(&pdev->dev, -ENOMEM, > + "Failed to allocated input device.\n"); devm_input_allocate_device() only fails on OOM, so no need to print anything. > > onkey->input->name = onkey->config->name; > snprintf(onkey->phys, sizeof(onkey->phys), "%s/input0", > @@ -221,12 +218,9 @@ static int da9063_onkey_probe(struct platform_device *pdev) > > error = devm_delayed_work_autocancel(&pdev->dev, &onkey->work, > da9063_poll_on); > - if (error) { > - dev_err(&pdev->dev, > - "Failed to add cancel poll action: %d\n", > - error); > - return error; > - } > + if (error) > + return dev_err_probe(&pdev->dev, error, > + "Failed to add cancel poll action\n"); devm_delayed_work_autocancel() only fails on OOM, so no need to print anything. > > irq = platform_get_irq_byname(pdev, "ONKEY"); > if (irq < 0) > @@ -236,11 +230,9 @@ static int da9063_onkey_probe(struct platform_device *pdev) > NULL, da9063_onkey_irq_handler, > IRQF_TRIGGER_LOW | IRQF_ONESHOT, > "ONKEY", onkey); > - if (error) { > - dev_err(&pdev->dev, > - "Failed to request IRQ %d: %d\n", irq, error); > - return error; > - } > + if (error) > + return dev_err_probe(&pdev->dev, error, > + "Failed to request IRQ %d\n", irq); platform_get_irq_byname() already prints an error message on failure. > > error = dev_pm_set_wake_irq(&pdev->dev, irq); > if (error) > @@ -251,11 +243,9 @@ static int da9063_onkey_probe(struct platform_device *pdev) > device_init_wakeup(&pdev->dev, true); > > error = input_register_device(onkey->input); > - if (error) { > - dev_err(&pdev->dev, > - "Failed to register input device: %d\n", error); > - return error; > - } > + if (error) > + return dev_err_probe(&pdev->dev, error, > + "Failed to register input device\n"); Looks like all non-OOM failure paths in input_register_device() already print an error message, too... Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds