Samuel Holland <samuel@xxxxxxxxxxxx> writes: > On 6/29/22 9:30 AM, Aidan MacDonald wrote: >> The AXP192 PMIC is different enough from the PMICs supported by >> the AXP20x GPIO driver to warrant a separate driver. The AXP192 >> driver also supports interrupts and pinconf settings. >> >> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@xxxxxxxxx> >> --- >> .../bindings/gpio/x-powers,axp192-gpio.yaml | 68 +++++++++++++++++++ >> 1 file changed, 68 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/gpio/x-powers,axp192-gpio.yaml >> >> diff --git a/Documentation/devicetree/bindings/gpio/x-powers,axp192-gpio.yaml >> b/Documentation/devicetree/bindings/gpio/x-powers,axp192-gpio.yaml >> new file mode 100644 >> index 000000000000..ceb94aa2bc97 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/gpio/x-powers,axp192-gpio.yaml >> [...] >> + >> +required: >> + - compatible >> + - "#gpio-cells" >> + - gpio-controller >> + - gpio-ranges > > By requiring the gpio-ranges property, you will not be able to convert the > existing driver, as existing devicetrees do not have it. > > If you instead call pinctrl_add_gpio_range() from the driver, you can maintain > compatibility with the existing binding. > > Regards, > Samuel Originally I did use pinctrl_add_gpio_range(), but calling that from a pin control driver is apparently deprecated. It can be done from ->of_gpio_ranges_fallback to deal with old device trees, though.