Re: [PATCH v2 2/4] input: touchscreen: add core support for Goodix Berlin Touchscreen IC
From: Jeff LaBundy <hidden>
Date: 2023-06-20 19:36:04
Also in:
linux-arm-msm, linux-devicetree, lkml
From: Jeff LaBundy <hidden>
Date: 2023-06-20 19:36:04
Also in:
linux-arm-msm, linux-devicetree, lkml
Hi Neil, On Tue, Jun 20, 2023 at 08:38:20PM +0200, Neil Armstrong wrote: [...]
quoted
quoted
+static int goodix_berlin_power_on(struct goodix_berlin_core *cd, bool on) +{ + int error = 0;No need to initialize 'error' here.Th refactor I did needs it to be initialized at 0 because the if() always calls return, but yeah it's kind of ugly.
Ah, you're correct; I see now.
quoted
quoted
+ + if (on) { + error = regulator_enable(cd->iovdd); + if (error < 0) { + dev_err(cd->dev, "Failed to enable iovdd: %d\n", error); + return error; + } + + /* Vendor waits 3ms for IOVDD to settle */ + usleep_range(3000, 3100); + + error = regulator_enable(cd->avdd); + if (error < 0) { + dev_err(cd->dev, "Failed to enable avdd: %d\n", error); + goto power_off_iovdd; + } + + /* Vendor waits 15ms for IOVDD to settle */ + usleep_range(15000, 15100); + + gpiod_set_value(cd->reset_gpio, 0); + + /* Vendor waits 4ms for Firmware to initialize */ + usleep_range(4000, 4100); + + error = goodix_berlin_dev_confirm(cd); + if (error < 0) + goto power_off_gpio;All of this cleaned up nicely. The following comment is idiomatic, but I feel the goto can be easily eliminated as follows: error = goodix_berlin_dev_confirm(cd); if (error) break;Break ? in an if ?
Ignore my comment; I lost my place and thought we were inside a loop :) Kind regards, Jeff LaBundy