On Mon, Mar 23, 2020 at 9:55 PM <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx> wrote: > > From: Serge Semin <fancer.lancer@xxxxxxxxx> > > There is no need in any fixes to have the Baikal-T1 SoC DW GPIO controllers > supported by the kernel DW APB GPIO driver. It works for them just fine with > no modifications. But still there is a room for optimizations there. > > First of all as it tends to be traditional for all Baikal-T1 SoC related > patchset we replaced the legacy plain text-based dt-binding file with > yaml-based one. Baikal-T1 DW GPIO port A supports a debounce functionality, > but in order to use it the corresponding reference clock must be enabled. > We added support of that clock in the driver and made sure the dt-bindings > had its declaration. In addition seeing both APB and debounce reference > clocks are optional, we replaced the standard devm_clk_get() usage with > the function of optional clocks acquisition. > > This patchset is rebased and tested on the mainline Linux kernel 5.6-rc4: > commit 98d54f81e36b ("Linux 5.6-rc4"). Thank you! FWIW, Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> > > Changelog v2: > - Use a shorter summary describing the DT bindings conversion patch. > - Add myself to the MAINTAINERS file as a maintainer of the DW APB GPIO driver. > - Add myself to the maintainers list of the DW APB GPIO driver DT schema. > - Print error instead of info-message if APB/debounce clocks either > failed to be acquired or couldn't be enabled. > - Rearrange the SoB tags. > - Make sure DT schema defines the lowercase hex numbers in the main dt-node > name and in the sub-node names. > - Use "allOf:" statement to apply uint32 and "minimum/maximum" limitations > on the "snps,nr-gpios" property of the DW APB GPIO DT schema. > - Discard "interrupts-extended" property from the DT schema. > - Make sure the sub-nodes have names with either 'gpio-port' or > 'gpio-controller' prefixes. > - Our corporate email server doesn't change Message-Id anymore, so the patchset > is resubmitted being in the cover-letter-threaded format. > > Changelog v3: > - Replace S: with M: section entry in the MAINTAINERS file. > - Cc Andy to all patches he isn't added by the auto "cc-cmd" command. > > Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx> > Cc: Alexey Malahov <Alexey.Malahov@xxxxxxxxxxxxxxxxxxxx> > Cc: Maxim Kaurkin <Maxim.Kaurkin@xxxxxxxxxxxxxxxxxxxx> > Cc: Pavel Parkhomenko <Pavel.Parkhomenko@xxxxxxxxxxxxxxxxxxxx> > Cc: Ramil Zaripov <Ramil.Zaripov@xxxxxxxxxxxxxxxxxxxx> > Cc: Ekaterina Skachko <Ekaterina.Skachko@xxxxxxxxxxxxxxxxxxxx> > Cc: Vadim Vlasov <V.Vlasov@xxxxxxxxxxxxxxxxxxxx> > Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx> > Cc: Paul Burton <paulburton@xxxxxxxxxx> > Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > Cc: Hoan Tran <hoan@xxxxxxxxxxxxxxxxxxxxxx> > Cc: Linus Walleij <linus.walleij@xxxxxxxxxx> > Cc: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> > Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > Cc: Mark Rutland <mark.rutland@xxxxxxx> > Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>, > Cc: linux-gpio@xxxxxxxxxxxxxxx > Cc: devicetree@xxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > > Serge Semin (6): > dt-bindings: gpio: Convert snps,dw-apb-gpio to DT schema > dt-bindings: gpio: Add DW GPIO debounce clock property > dt-bindings: gpio: Add Sergey Semin to DW APB GPIO driver maintainers > gpio: dwapb: Use optional-clocks interface for APB ref-clock > gpio: dwapb: Add debounce reference clock support > MAINTAINERS: Add Segey Semin to maintainers of DW APB GPIO driver > > .../bindings/gpio/snps,dw-apb-gpio.yaml | 134 ++++++++++++++++++ > .../bindings/gpio/snps-dwapb-gpio.txt | 65 --------- > MAINTAINERS | 1 + > drivers/gpio/gpio-dwapb.c | 41 ++++-- > 4 files changed, 161 insertions(+), 80 deletions(-) > create mode 100644 Documentation/devicetree/bindings/gpio/snps,dw-apb-gpio.yaml > delete mode 100644 Documentation/devicetree/bindings/gpio/snps-dwapb-gpio.txt > > -- > 2.25.1 > -- With Best Regards, Andy Shevchenko