Thank you for your contribution! Sashiko AI review found 2 potential issue(s) 
to consider:
- [High] dts: virtio device nodes are ignored due to missing of_node linkage in 
remoteproc
- [Medium] Process: Patch is a Proof-Of-Concept and not meant for integration
--

commit a7b0e29a0ba6644ce08c06f5c058683c28280b67
Author: Francesco Valla <[email protected]>

PoC: arm64: dts: imx93-11x11-frdm: add multiple vdevs

This commit adds rings for multiple vdevs and the required virtio nodes for
I2C, SPI, and GPIO functionalities to the imx93-11x11-frdm devicetree. It
also includes example peripherals to demonstrate these virtio interfaces.

>     NOTE: this is a Proof-Of-Concept, not meant to be integrated!

[Severity: Medium]
Since this patch is explicitly marked as a Proof-Of-Concept and not meant for
integration, should it be dropped from the queue to prevent merging unstable
or incomplete code?

> diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts 
> b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
> index bd14ba28690c0..dfa3b122ac5f4 100644
> --- a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
> +++ b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
> @@ -53,6 +53,32 @@ button-k3 {
>               };
>       };
>  
> +     gpio-keys-virtio {
> +             compatible = "gpio-keys-polled";
> +             poll-interval = <100>;
> +
> +             button-v1 {
> +                     label = "Button V1";
> +                     linux,code = <BTN_3>;
> +                     gpios = <&v_gpio 23 GPIO_ACTIVE_LOW>;
> +             };

[Severity: High]
Will the v_gpio phandle fail to resolve because the v_gpio node is not
recognized as a valid OF GPIO controller by the system?

[ ... ]

> @@ -149,8 +200,67 @@ &cm33 {
>                <&mu1 3 1>;
>       mbox-names = "tx", "rx", "rxdb";
>       memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>,
> -                     <&vdev1vring0>, <&vdev1vring1>, <&rsc_table>;
> +                     <&vdev1vring0>, <&vdev2vring0>, <&vdev2vring1>,
> +                     <&vdev3vring0>, <&vdev4vring0>,
> +                     <&vdev5vring0>, <&vdev5vring1>, <&vdev5vring2>;
>       status = "okay";
> +
> +     virtio {
> +             #address-cells = <1>;
> +             #size-cells = <0>;
> +
> +             vdev@2 {
> +                     reg = <2>;
> +
> +                     v_gpio: gpio {
> +                             compatible = "virtio,device29";

[Severity: High]
Will these virtio subnodes remain unlinked to the actual devices?

virtio_device_of_init() attempts to match devicetree nodes by checking
dev_of_node(dev->dev.parent). For remoteproc-created virtio devices, the
parent is the dynamically created rproc-virtio platform device (created in
rproc_handle_vdev()), which is never assigned an of_node.

Does this result in the devicetree matching failing silently, causing
dependent peripheral drivers (e.g., gpio-keys) to defer probing indefinitely?

-- 
Sashiko AI review ยท 
https://sashiko.dev/#/patchset/[email protected]?part=12

Reply via email to