Message ID | 20210416142044.17766-1-andriy.shevchenko@linux.intel.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
Series | [v2,1/4] fbtft: Replace custom ->reset() with generic one | expand |
Hi, 'staging:' in mail subject is missing... On Fri, Apr 16, 2021 at 05:20:41PM +0300, Andy Shevchenko wrote: > The custom ->reset() repeats the generic one, replace it. > > Note, in newer kernels the context of the function is a sleeping one, > it's fine to switch over to the sleeping functions. Keeping the reset > line asserted longer than 20 microseconds is also okay, it's an idling > state of the hardware. > > Fixes: b2ebd4be6fa1 ("staging: fbtft: add fb_agm1264k-fl driver") > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > --- > v2: new patch split from the bigger fix (Greg) > drivers/staging/fbtft/fb_agm1264k-fl.c | 14 -------------- > 1 file changed, 14 deletions(-) > > diff --git a/drivers/staging/fbtft/fb_agm1264k-fl.c b/drivers/staging/fbtft/fb_agm1264k-fl.c > index eeeeec97ad27..4dfc22d05a40 100644 > --- a/drivers/staging/fbtft/fb_agm1264k-fl.c > +++ b/drivers/staging/fbtft/fb_agm1264k-fl.c > @@ -77,19 +77,6 @@ static int init_display(struct fbtft_par *par) > return 0; > } > > -static void reset(struct fbtft_par *par) > -{ > - if (!par->gpio.reset) > - return; > - > - dev_dbg(par->info->device, "%s()\n", __func__); > - > - gpiod_set_value(par->gpio.reset, 0); > - udelay(20); > - gpiod_set_value(par->gpio.reset, 1); > - mdelay(120); > -} > - > /* Check if all necessary GPIOS defined */ > static int verify_gpios(struct fbtft_par *par) > { > @@ -439,7 +426,6 @@ static struct fbtft_display display = { > .set_addr_win = set_addr_win, > .verify_gpios = verify_gpios, > .request_gpios_match = request_gpios_match, > - .reset = reset, > .write = write, > .write_register = write_reg8_bus8, > .write_vmem = write_vmem, > -- > 2.30.2 > > thank you, fabio
On Fri, Apr 16, 2021 at 05:20:41PM +0300, Andy Shevchenko wrote: > The custom ->reset() repeats the generic one, replace it. > > Note, in newer kernels the context of the function is a sleeping one, > it's fine to switch over to the sleeping functions. Keeping the reset > line asserted longer than 20 microseconds is also okay, it's an idling > state of the hardware. > > Fixes: b2ebd4be6fa1 ("staging: fbtft: add fb_agm1264k-fl driver") What does this "fix"? A bug or just a "it shouldn't have been done this way"? And as others pointed out, if you could put "staging: fbtft:" as a prefix here, that would be much better. thanks, greg k-h
On Tue, Apr 27, 2021 at 2:09 PM Greg Kroah-Hartman <gregkh@linuxfoundation.org> wrote: > On Fri, Apr 16, 2021 at 05:20:41PM +0300, Andy Shevchenko wrote: > > The custom ->reset() repeats the generic one, replace it. > > > > Note, in newer kernels the context of the function is a sleeping one, > > it's fine to switch over to the sleeping functions. Keeping the reset > > line asserted longer than 20 microseconds is also okay, it's an idling > > state of the hardware. > > > > Fixes: b2ebd4be6fa1 ("staging: fbtft: add fb_agm1264k-fl driver") > > What does this "fix"? A bug or just a "it shouldn't have been done this > way"? There is nothing to fix actually, it's rather a pointer where this change has been missed for some reason. I'll remove the tag. > And as others pointed out, if you could put "staging: fbtft:" as a > prefix here, that would be much better. Got it, thanks!
diff --git a/drivers/staging/fbtft/fb_agm1264k-fl.c b/drivers/staging/fbtft/fb_agm1264k-fl.c index eeeeec97ad27..4dfc22d05a40 100644 --- a/drivers/staging/fbtft/fb_agm1264k-fl.c +++ b/drivers/staging/fbtft/fb_agm1264k-fl.c @@ -77,19 +77,6 @@ static int init_display(struct fbtft_par *par) return 0; } -static void reset(struct fbtft_par *par) -{ - if (!par->gpio.reset) - return; - - dev_dbg(par->info->device, "%s()\n", __func__); - - gpiod_set_value(par->gpio.reset, 0); - udelay(20); - gpiod_set_value(par->gpio.reset, 1); - mdelay(120); -} - /* Check if all necessary GPIOS defined */ static int verify_gpios(struct fbtft_par *par) { @@ -439,7 +426,6 @@ static struct fbtft_display display = { .set_addr_win = set_addr_win, .verify_gpios = verify_gpios, .request_gpios_match = request_gpios_match, - .reset = reset, .write = write, .write_register = write_reg8_bus8, .write_vmem = write_vmem,
The custom ->reset() repeats the generic one, replace it. Note, in newer kernels the context of the function is a sleeping one, it's fine to switch over to the sleeping functions. Keeping the reset line asserted longer than 20 microseconds is also okay, it's an idling state of the hardware. Fixes: b2ebd4be6fa1 ("staging: fbtft: add fb_agm1264k-fl driver") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- v2: new patch split from the bigger fix (Greg) drivers/staging/fbtft/fb_agm1264k-fl.c | 14 -------------- 1 file changed, 14 deletions(-)