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@0 {
compatible = "toshiba,tc358762";
reg = <0>;
vddc-supply = <&attiny>;
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
port@0 {
reg = <0>;
bridge_in: endpoint {
data-lanes = <1>;
remote-endpoint = <&dsi_out>;
};
};
port@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@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@45 {
compatible =
"raspberrypi,7inch-touchscreen-panel-regulator";
gpio-controller;
#gpio-cells = <2>;
reg = <0x45>;
};
};
&pwm1 {
status = "okay";
};
&lcdif1 {
status = "okay";
};