SoMLabs / openst-cube-mx

STM32CubeMX projects for VisionSOM-STM32MP1
0 stars 1 forks source link

Which driver is used for Riverdi display? #1

Closed Qbicz closed 4 months ago

Qbicz commented 4 months ago

Hi, I can see here: https://github.com/SoMLabs/openst-cube-mx/blob/dunfell/VisionSOM-dsi-rvt70hsmnwc00-emmc/CA7/DeviceTree/VisionSOM-dsi-rvt70hsmnwc00-emmc/kernel/stm32mp157a-visionsom-dsi-rvt70hsmnwc00-emmc-mx.dts#L597 that you used

&dsi{
    status = "okay";

    /* USER CODE BEGIN dsi */

    #address-cells = <1>;
    #size-cells = <0>;

    ports {
        #address-cells = <1>;
        #size-cells = <0>;

        port@0 {
            reg = <0>;
            dsi_in: endpoint {
                remote-endpoint = <&ltdc_ep0_out>;
            };
        };

        port@1 {
            reg = <1>;
            dsi_out: endpoint {
                remote-endpoint = <&panel_in>;
            };
        };
    };

    panel@0 {
        compatible = "riverdi,rvt70hsmnwc00";
        reg = <0>;
        reset-gpios = <&gpioa 1 GPIO_ACTIVE_LOW>;
        power-supply = <&vdd>;
        backlight = <&panel_backlight>;
        status = "okay";

        port {
            panel_in: endpoint {
                remote-endpoint = <&dsi_out>;
            };
        };
    };

    /* USER CODE END dsi */
};

So which driver is actually in use that configures the RIverdi rvt70hsmnwc00 display? Which kernel driver/bindings should I search to be able to integrate it on my board? Any pointers are welcome.

Qbicz commented 4 months ago

Using compatible = "riverdi,rvt70hsmnwc00" suggests that there is a driver for this display in https://github.com/torvalds/linux/tree/master/drivers/gpu/drm/panel, however there is no such driver. Which Linux fork do you use?

Qbicz commented 4 months ago

Ok, I've found it on 5.15 branch of SoMLabs fork! https://github.com/SoMLabs/somlabs-linux-stm32mp1/blob/v5.15-stm32mp-somlabs/drivers/gpu/drm/panel/panel-riverdi-rvt70hsmnwc00.c

kchojnowski commented 4 months ago

Hi @Qbicz That's right. Our openst-cube-mx is used together with meta-openst layer for OpenSTLinux. In case of dunfell version the meta-somlabs points to the kernel release: https://github.com/SoMLabs/openst-meta-somlabs/blob/dunfell/recipes-kernel/linux/linux-stm32mp_5.10.bbappend

The driver for OpenST 5.10 version is here: https://github.com/SoMLabs/somlabs-linux-stm32mp1/blob/v5.10-stm32mp-somlabs/drivers/gpu/drm/panel/panel-riverdi-rvt70hsmnwc00.c

For kirkstone OpenSTLinux release the corresponding versions are here: https://github.com/SoMLabs/openst-meta-somlabs/blob/kirkstone/recipes-kernel/linux/linux-stm32mp_5.15.bbappend https://github.com/SoMLabs/somlabs-linux-stm32mp1/blob/v5.15-stm32mp-somlabs/drivers/gpu/drm/panel/panel-riverdi-rvt70hsmnwc00.c

Krzysztof