[PATCH v8 3/4] gpio: rpmsg: add generic rpmsg GPIO driver

Andrew Lunn andrew at lunn.ch
Tue Feb 24 13:01:03 PST 2026


> > How does port_idx fit into this?
> 
> I think you were assuming there is only one remoteproc in the system?
> In practice, the setup can look more like this:
> 
> + remote_cm33{
> +     rpmsg {
> +        rpmsg-io-channel {
> +          #address-cells = <1>;
> +          #size-cells = <0>;
> +
> +          gpio at 0 {
> +            compatible = "rpmsg-gpio";
> +            reg = <0>;
> +            gpio-controller;
> +            #gpio-cells = <2>;
> +            #interrupt-cells = <2>;
> +            interrupt-controller;
> +          };
> +          gpio at 1 {
> +            compatible = "rpmsg-gpio";
> +            reg = <1>;
> +            gpio-controller;
> +            #gpio-cells = <2>;
> +            #interrupt-cells = <2>;
> +            interrupt-controller;
> +          };
> +  ...
> +        };
> +      };
> +};
> +
> + remote_dsp {
> +     rpmsg {
> +        rpmsg-io-channel {
> +          #address-cells = <1>;
> +          #size-cells = <0>;
> +
> +          gpio at 0 {
> +            compatible = "rpmsg-gpio";
> +            reg = <0>;
> +            gpio-controller;
> +            #gpio-cells = <2>;
> +            #interrupt-cells = <2>;
> +            interrupt-controller;
> +          };
> +  ...
> +        };
> +      };
> +};

And why would this require a port_idx? If they are different rpmsg
instances, the channel numbers are in different address spaces.

	Andrew



More information about the linux-arm-kernel mailing list