[PATCH 3/5] drm/bridge: tc358762: Instruct DSI host to generate HSE packets

Marek Vasut marex at denx.de
Thu Nov 16 18:17:08 UTC 2023


On 11/16/23 17:06, Marc Kleine-Budde wrote:
> Hey Marek,
> 
> On 15.06.2023 22:19:00, Marek Vasut wrote:
>> This bridge seems to need the HSE packet, otherwise the image is
>> shifted up and corrupted at the bottom. This makes the bridge
>> work with Samsung DSIM on i.MX8MM and i.MX8MP.
> 
> I'm using v6.6 (which includes this series) on an i.MX8MP with the 7inch
> Rspi Panel ("powertip,ph800480t013-idf02"), but I cannot get a stable
> image.
> 
> With an unmodified imx8mp clock tree the lower 1/4 of the image sheers
> to the left.
> 
> With 24.75 MHz on the media_disp1_pix and media_mipi_phy1_ref and 792
> MHz on video_pll1_out, the image is not static, but wobbly and it's
> wrapped around half of the image.
> 
>      video_pll1_ref_sel                1        1        0    24000000          0     0  50000         Y
>         video_pll1                     1        1        0   792000000          0     0  50000         Y
>            video_pll1_bypass           1        1        0   792000000          0     0  50000         Y
>               video_pll1_out           2        2        0   792000000          0     0  50000         Y
>                  media_mipi_phy1_ref       1        1        0    24750000          0     0  50000         Y
>                     media_mipi_phy1_ref_root       0        0        0    24750000          0     0  50000         Y
>                  media_disp2_pix       0        0        0   792000000          0     0  50000         N
>                     media_disp2_pix_root_clk       0        0        0   792000000          0     0  50000         N
>                  media_disp1_pix       1        1        0    24750000          0     0  50000         Y
>                     media_disp1_pix_root_clk       1        1        0    24750000          0     0  50000         Y
> 
> Do you have a working device tree for such a setup? regards, Marc

This seems to be what I used last time I tried (notice the 
samsung,burst-clock-frequency = <720000000>; ), but this was a few 
months ago:

/ {
         panel {
                 compatible = "powertip,ph800480t013-idf02";
                 backlight = <&attiny>;
                 enable-gpio = <&attiny 0 GPIO_ACTIVE_HIGH>;
                 power-supply = <&attiny>;

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

&mipi_dsi {
         /*
          * This is DSIM PLL frequency, DSI HS clock lane frequency
          * is half of the "samsung,burst-clock-frequency" value.
          */
         samsung,burst-clock-frequency = <720000000>;
         status = "okay";

         bridge at 0 {
                 compatible = "toshiba,tc358762";
                 reg = <0>;
                 vddc-supply = <&attiny>;
                 #address-cells = <1>;
                 #size-cells = <0>;
                 status = "okay";

                 port at 0 {
                         reg = <0>;
                         bridge_in: endpoint {
                                 data-lanes = <1>;
                                 remote-endpoint = <&dsi_out>;
                         };
                 };

                 port at 1 {
                         reg = <1>;
                         bridge_out: endpoint {
                                 remote-endpoint = <&panel_in>;
                         };
                 };
         };
};

&dsi_out {
         data-lanes = <1>;
         remote-endpoint = <&bridge_in>;
};

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

         touchscreen: touchscreen at 38 {
                 compatible = "edt,edt-ft5406";
                 reg = <0x38>;
                 reset-gpios = <&attiny 1 GPIO_ACTIVE_LOW>;
                 /*
                  * Disabled, since the IRQ line is not on
                  * the FPC cable, so we cannot get touch
                  * IRQs unless its connected otherwise. In
                  * that case, add entry like this one and
                  * enable below.
                  *
                  * interrupt-parent = <&gpiog>;
                  * interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
                  */
                 status = "disabled";
         };

         attiny: regulator at 45 {
                 compatible = 
"raspberrypi,7inch-touchscreen-panel-regulator";
                 gpio-controller;
                 #gpio-cells = <2>;
                 reg = <0x45>;
         };
};

&pwm1 {
         status = "okay";
};

&lcdif1 {
         status = "okay";
};



More information about the dri-devel mailing list