RE: [PATCH v4 0/6] GPIO & Hierarchy IRQ support for HiFive Unleashed

From: Yash Shah
Date: Tue Jan 21 2020 - 03:53:32 EST


> -----Original Message-----
> From: Marc Zyngier <maz@xxxxxxxxxx>
> Sent: 20 January 2020 14:40
> To: Yash Shah <yash.shah@xxxxxxxxxx>
> Cc: linus.walleij@xxxxxxxxxx; bgolaszewski@xxxxxxxxxxxx;
> robh+dt@xxxxxxxxxx; mark.rutland@xxxxxxx; palmer@xxxxxxxxxxx; Paul
> Walmsley ( Sifive) <paul.walmsley@xxxxxxxxxx>; aou@xxxxxxxxxxxxxxxxx;
> tglx@xxxxxxxxxxxxx; jason@xxxxxxxxxxxxxx; bmeng.cn@xxxxxxxxx;
> atish.patra@xxxxxxx; Sagar Kadam <sagar.kadam@xxxxxxxxxx>; linux-
> gpio@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linux-
> riscv@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Sachin Ghadi
> <sachin.ghadi@xxxxxxxxxx>
> Subject: Re: [PATCH v4 0/6] GPIO & Hierarchy IRQ support for HiFive
> Unleashed
>
> On 2019-12-10 12:11, Yash Shah wrote:
> > This patch series adds GPIO drivers, DT documentation and DT nodes for
> > HiFive Unleashed board. The gpio patches are mostly based on Wesley's
> > patch.
> > The patchset also adds hierarchy irq domain support as it is required
> > by this gpio driver. It also includes the irqdomain patch to introduce
> > irq_domain_translate_onecell() and irq-nvic driver patch to use this
> > newly introduced function.
> >
> > This patchset is based on Linux 5.4-rc6 and tested on HiFive Unleashed
> > board
> >
> > Changes:
> > v4 vs v3:
> > - Rename the DT yaml document to more standard naming
> > (sifive,gpio.yaml)
> > - Drop "clock-names" property from yaml document
> > - Add "minItems" to "interrupts" node in yaml
> >
> > v3 vs v2:
> > - Include patch for irq-nvic driver to use
> > irq_domain_translate_onecell
> > - Remove unnecessary inclusion of header files
> > - Use a single prefix for all symbols in this driver
> > - Rename the "enabled" field of struct sifive_gpio to "irq_state"
> > - Remove unused variables and locking from probe()
> > - Other minor changes
> >
> > v2 vs v1:
> > - Add patch to introduce irq_domain_translate_onecell() and use it in
> > the sifive PLIC driver
> > - Drop the usage of own locks, instead use internal bgpio_locks
> > - Consistently use regmap for register access throughout the gpio code
> > - Convert the GPIO DT documentation into a json schema
> > - Other minor changes based upon feedback received on v1
> >
> > v1 vs RFC:
> > Incorporated below changes as suggested by Linus Walleij on RFC
> > version of this patchset[0]
> > - Dropped PWM patches as they are already merged.
> > - Include "GPIO_GENERIC" and "REGMAP_MMIO" in Kconfig select option
> > - Remove unwanted inclusion of header files
> > - Use regmap MMIO instead of customised sifive_assign_bit()
> > - Use GPIOLIB_GENERIC and bgpio_init() to set up the accessors
> > - Use hierarchical irqdomain
> >
> > [0]
> > https://lore.kernel.org/linux-
> riscv/20181010123519.RVexDppaPFpIWl7QU_h
> > pP8tc5qqWPJgeuLYn0FaGbeQ@z/
> >
> > Yash Shah (6):
> > genirq: introduce irq_domain_translate_onecell
> > irqchip: nvic: Use irq_domain_translate_onecell instead of custom
> > func
> > irqchip: sifive: Support hierarchy irq domain
> > gpio: sifive: Add DT documentation for SiFive GPIO
> > gpio: sifive: Add GPIO driver for SiFive SoCs
> > riscv: dts: Add DT support for SiFive FU540 GPIO driver
>
> I've queued the first 5 patches. The last one should go via the corresponding
> platform tree.

Thanks.
@Paul, Are you going to merge the last patch (DT support for GPIO) or you want me to rebase and send it separately?

- Yash

>
> Thanks,
>
> M.
> --
> Jazz is not dead. It just smells funny...