GPIO Binding BananaPi m2 ultra


(Mariano Hernan Caballero) #1

Hi all, I´m trying to modify my dts file to add support for GPIO (no through gpio-leds, direct GPIO support). My scenario is:

HW: BananaPi-m2-ultra O.S.: Armbian. kernel version: 4.19.36-sunxi

I added a child node to the standard pinctrl descrpition:

pio: pinctrl@1c20800 {
           compatible = "allwinner,sun8i-r40-pinctrl";
           reg = <0x1c20800 0x400>;
           interrupts = <0x0 0x1c 0x4>;
           clocks = <0x7 0x4f 0x2 0x4>;
           clock-names = "apb", "hosc", "losc";
           gpio-controller;
           interrupt-controller;
           #interrupt-cells = <0x3>;
           #gpio-cells = <0x3>;
           pinctrl-names = "default";
           pinctrl-0 = <0x13>;
           phandle = >0xd>;

           clk-out-a-pin {
               pins = "PI12";
               function = "clk_out_a";
               drive = <0x0>;
               pull = <0x0>;
               phandle = <0x13>;
           };

           /* A lot of child node */

           /* My child node */
           myCustomOutput {
               allwinner,pins = "PH3";
               allwinner,function = "myOutput";
               allwinner,drive = "1"; /* 20mA capable output */
           };
       }; /* End of pio */

So, when I want to implement the client node for myCustomOutputs I don’t figure what the value for compatible property must to be.

At root level, I want to write:

myOutput {
    compatible = "?????"; /* What value must be here */
    gpios = <&pio 0x7 0x3 GPIO_ACTIVE_HIGH>;
};

Could please somebody point me in the right direction?

Thanks in advance!

Mariano