lkml.org 
[lkml]   [2021]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC PATH 2/2] gpio: starfive-jh7100: Add StarFive JH7100 GPIO driver
    Hi Drew,

    Am 2021-07-01 22:33, schrieb Drew Fustini:
    > On Thu, Jul 01, 2021 at 08:39:40AM +0200, Michael Walle wrote:
    >> Hi Drew,
    >>
    >> Am 2021-07-01 02:20, schrieb Drew Fustini:
    >> > 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 <huan.feng@starfivetech.com>
    >> > Signed-off-by: Drew Fustini <drew@beagleboard.org>
    >>
    >> 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

    \
     
     \ /
      Last update: 2021-07-02 17:00    [W:3.429 / U:0.104 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site