Thread (27 messages) 27 messages, 9 authors, 2021-07-28

Re: [RFC PATH 2/2] gpio: starfive-jh7100: Add StarFive JH7100 GPIO driver

From: Michael Walle <hidden>
Date: 2021-07-02 15:00:01
Also in: linux-gpio, linux-riscv, lkml

Hi Drew,

Am 2021-07-01 22:33, schrieb Drew Fustini:
On Thu, Jul 01, 2021 at 08:39:40AM +0200, Michael Walle wrote:
quoted
Hi Drew,

Am 2021-07-01 02:20, schrieb Drew Fustini:
quoted
Add GPIO driver for the StarFive JH7100 SoC [1] used on the
BeagleV Starlight JH7100 board [2].

[1] https://github.com/starfive-tech/beaglev_doc/
[2] https://github.com/beagleboard/beaglev-starlight

Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
Signed-off-by: Huan Feng <redacted>
Signed-off-by: Drew Fustini <redacted>
Could this driver use GPIO_REGMAP and REGMAP_IRQ? See
drivers/gpio/gpio-sl28cpld.c for an example.

-michael
Thank you for the suggestion.  I am not familiar with GPIO_REGMAP and
REGMAP_IRQ so I will read about it.  Is the advantage is that is helps
to reduce code duplication by using an abstraction?
Yes, I've looked briefly at your patch and it seemed that GPIO_REGMAP
might fit here which will reduce code.
I did notice that the gpio-sifive.c driver used regmap_update_bits() 
and
regmap_write().

I suppose that is better than writel_relaxed() and iowrite32() which
this RFC driver does?
Its just another abstraction layer in between. For MMIO it will also
end up using some variant of the above (see regmap-mmio.c). But if you
use regmap, you can also use REGMAP_IRQ which might also be a fit
for your GPIO controller and thus don't have to implement your own
versions for the irq_chip ops.

-michael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help