mbox series

[v1,0/5] pinctrl: baytrail: Clean up (part 3)

Message ID 20191212102557.87754-1-andriy.shevchenko@linux.intel.com
Headers show
Series pinctrl: baytrail: Clean up (part 3) | expand

Message

Andy Shevchenko Dec. 12, 2019, 10:25 a.m. UTC
This is a part 3 of clean up pin control driver for Intel Baytrail.
After this applied the driver will use all available data structures
from pinctrl-intel.h header.

Note, that patch which exposes common pin control data structrure for drivers
will be used by Lynxpoint as well.

This has been tested on the tablet with SD card detection and buttons pressed.

Based on our pinctrl/intel for-next branch.

Andy Shevchenko (5):
  pinctrl: baytrail: Move IRQ valid mask initialization to a dedicated
    callback
  pinctrl: intel: Share struct intel_pinctrl for wider use
  pinctrl: baytrail: Keep pointer to struct device instead of its
    container
  pinctrl: baytrail: Use local variable to keep device pointer
  pinctrl: baytrail: Reuse struct intel_pinctrl in the driver

 drivers/pinctrl/intel/pinctrl-baytrail.c | 272 +++++++++++------------
 drivers/pinctrl/intel/pinctrl-intel.c    |  35 +--
 drivers/pinctrl/intel/pinctrl-intel.h    |  44 ++++
 3 files changed, 173 insertions(+), 178 deletions(-)


base-commit: ab68b220e81fd03383c0d9e1a87b51f9bbe4db77

Comments

Hans de Goede Dec. 12, 2019, 11:13 a.m. UTC | #1
Hi Andy,

On 12-12-2019 11:25, Andy Shevchenko wrote:
> This is a part 3 of clean up pin control driver for Intel Baytrail.
> After this applied the driver will use all available data structures
> from pinctrl-intel.h header.
> 
> Note, that patch which exposes common pin control data structrure for drivers
> will be used by Lynxpoint as well.
> 
> This has been tested on the tablet with SD card detection and buttons pressed.
> 
> Based on our pinctrl/intel for-next branch.
> 
> Andy Shevchenko (5):
>    pinctrl: baytrail: Move IRQ valid mask initialization to a dedicated
>      callback
>    pinctrl: intel: Share struct intel_pinctrl for wider use
>    pinctrl: baytrail: Keep pointer to struct device instead of its
>      container
>    pinctrl: baytrail: Use local variable to keep device pointer
>    pinctrl: baytrail: Reuse struct intel_pinctrl in the driver
> 
>   drivers/pinctrl/intel/pinctrl-baytrail.c | 272 +++++++++++------------
>   drivers/pinctrl/intel/pinctrl-intel.c    |  35 +--
>   drivers/pinctrl/intel/pinctrl-intel.h    |  44 ++++
>   3 files changed, 173 insertions(+), 178 deletions(-)
> 
> 
> base-commit: ab68b220e81fd03383c0d9e1a87b51f9bbe4db77

 From a quick look this series looks good to me:

Acked-by: Hans de Goede <hdegoede@redhat.com>

I've also added this to my personal tree for testing purposes, I will let
you know if I hit any problems.

Regards,

Hans
Mika Westerberg Dec. 13, 2019, 1:01 p.m. UTC | #2
On Thu, Dec 12, 2019 at 12:25:52PM +0200, Andy Shevchenko wrote:
> This is a part 3 of clean up pin control driver for Intel Baytrail.
> After this applied the driver will use all available data structures
> from pinctrl-intel.h header.
> 
> Note, that patch which exposes common pin control data structrure for drivers
> will be used by Lynxpoint as well.
> 
> This has been tested on the tablet with SD card detection and buttons pressed.
> 
> Based on our pinctrl/intel for-next branch.
> 
> Andy Shevchenko (5):
>   pinctrl: baytrail: Move IRQ valid mask initialization to a dedicated
>     callback
>   pinctrl: intel: Share struct intel_pinctrl for wider use
>   pinctrl: baytrail: Keep pointer to struct device instead of its
>     container
>   pinctrl: baytrail: Use local variable to keep device pointer
>   pinctrl: baytrail: Reuse struct intel_pinctrl in the driver

For the series,

Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Linus Walleij Dec. 13, 2019, 1:41 p.m. UTC | #3
On Thu, Dec 12, 2019 at 11:26 AM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:

> This is a part 3 of clean up pin control driver for Intel Baytrail.
> After this applied the driver will use all available data structures
> from pinctrl-intel.h header.
>
> Note, that patch which exposes common pin control data structrure for drivers
> will be used by Lynxpoint as well.
>
> This has been tested on the tablet with SD card detection and buttons pressed.
>
> Based on our pinctrl/intel for-next branch.

The series:
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>

Please collect up what you have and send this with a pull
request so I have the full picture in my tree soon-ish.

The reason is that I want a clean baseline to deal with this:

$ git grep gpiochip_set_chained_irqchip drivers/pinctrl/
drivers/pinctrl/intel/pinctrl-baytrail.c:
gpiochip_set_chained_irqchip(gc, &byt_irqchip,
drivers/pinctrl/intel/pinctrl-cherryview.c:
gpiochip_set_chained_irqchip(chip, &pctrl->irqchip, irq,
drivers/pinctrl/intel/pinctrl-intel.c:
gpiochip_set_chained_irqchip(&pctrl->chip, &pctrl->irqchip, irq,
NULL);

If you volunteer to get rid of these three gpiochip_set_chained_irqchip()
calls, even better :D

They are the three last users before I can delete
gpiochip_set_chained_irqchip() from the kernel.

Yours,
Linus Walleij
Andy Shevchenko Dec. 13, 2019, 2:47 p.m. UTC | #4
On Fri, Dec 13, 2019 at 02:41:16PM +0100, Linus Walleij wrote:
> On Thu, Dec 12, 2019 at 11:26 AM Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> wrote:
> 
> > This is a part 3 of clean up pin control driver for Intel Baytrail.
> > After this applied the driver will use all available data structures
> > from pinctrl-intel.h header.
> >
> > Note, that patch which exposes common pin control data structrure for drivers
> > will be used by Lynxpoint as well.
> >
> > This has been tested on the tablet with SD card detection and buttons pressed.
> >
> > Based on our pinctrl/intel for-next branch.
> 
> The series:
> Reviewed-by: Linus Walleij <linus.walleij@linaro.org>

Thanks!

> Please collect up what you have and send this with a pull
> request so I have the full picture in my tree soon-ish.
> 
> The reason is that I want a clean baseline to deal with this:
> 
> $ git grep gpiochip_set_chained_irqchip drivers/pinctrl/
> drivers/pinctrl/intel/pinctrl-baytrail.c:
> gpiochip_set_chained_irqchip(gc, &byt_irqchip,
> drivers/pinctrl/intel/pinctrl-cherryview.c:
> gpiochip_set_chained_irqchip(chip, &pctrl->irqchip, irq,
> drivers/pinctrl/intel/pinctrl-intel.c:
> gpiochip_set_chained_irqchip(&pctrl->chip, &pctrl->irqchip, irq,
> NULL);
> 
> If you volunteer to get rid of these three gpiochip_set_chained_irqchip()
> calls, even better :D
> 
> They are the three last users before I can delete
> gpiochip_set_chained_irqchip() from the kernel.

I see your point. I would like:
1/ wait for next rc (supposed to have the PR I sent and your applied recently)
2/ the rest to be hanging few days at least in Linux next.