Hi Radxa Team,
I just received the Official panel, just in time with your patches, and I am trying to make it work but having some issues.
The wiring seems to be in accordance with the wiki image but the panel does not light. Seems not powered, at least the backlight.
Maybe I missed something.
Here is the relevant info:
Board v1.2
CONFIG_ROCKPI_MCU=y
CONFIG_TOUCHSCREEN_ROCKPI_FT5406=y
CONFIG_DRM_PANEL_TOSHIBA_TC358762=y
[ 0.442952] rockchip-drm display-subsystem: Linked as a consumer to fe070000.dsi
[ 0.447590] dw-mipi-dsi fe070000.dsi: [drm:dw_mipi_dsi_bind] *ERROR* Failed to find panel or bridge: -517
[ 0.453789] find panel: rockpi,tc358762
[ 0.453839] bridge-tc358762-dsi fe070000.dsi.0: Looking up power-supply from device tree
[ 0.453860] bridge-tc358762-dsi fe070000.dsi.0: Looking up power-supply property in node /dsi@fe070000/dsi-panel@0 failed
[ 0.453886] bridge-tc358762-dsi fe070000.dsi.0: fe070000.dsi.0 supply power not found, using dummy regulator
[ 0.453995] bridge-tc358762-dsi fe070000.dsi.0: Linked as a consumer to regulator.0
[ 0.863143] rockpi-mcu: rockpi_mcu_probe: address = 0x45
[ 0.863176] rockpi-mcu: send_cmds: 80
[ 1.868388] rockpi-mcu: rockpi_mcu_probe: init_cmd_check failed, -110
[ 1.868427] rockpi_mcu: probe of 3-0045 failed with error -110
[ 1.868759] rockpi-ft5406: rockpi_ft5406_probe: address = 0x38
[ 2.434988] rockpi-ft5406: rockpi_ft5406_probe: wait connected timeout
[ 2.771814] rockchip-drm display-subsystem: bound fe070000.dsi (ops 0xffffff8008fdd060)
[ 3.035001] dw-mipi-dsi fe070000.dsi: [drm:dw_mipi_dsi_encoder_enable] final DSI-Link bandwidth: 708 x 1 Mbps
[ 3.057573] panel enable
[ 3.057610] rockpi_mcu_screen_power_up
i2c3 alone works, but mcu seems to be the problem and the i2c3 timeout.
[ 2310.475926] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2311.489162] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2312.502464] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2313.515769] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2314.529076] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2315.542378] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2316.555691] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2317.568989] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2318.582293] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2319.595616] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
[ 2320.608918] rk3x-i2c fe5c0000.i2c: timeout, ipd: 0x00, state: 2
Here is my dts to 5inch panel:
/ {
compatible = "radxa,rock-3-a", "rockchip,rk3568";
vcc_mipi: vcc-mipi {
status = "okay";
compatible = "regulator-fixed";
regulator-name = "vcc_mipi";
regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
enable-active-high;
regulator-always-on;
gpio = <&gpio3 16 0>;
vin-supply = <&vcc3v3_sys>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
&video_phy1 {
status = "okay";
};
&dsi1 {
status = "okay";
power-supply = <&vcc_mipi>;
dsi1_panel: dsi-panel@0 {
compatible = "rockpi,tc358762";
reg = <0x0>;
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi1: endpoint {
remote-endpoint = <&dsi1_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
dsi1_out_panel: endpoint@0 {
reg = <0>;
remote-endpoint = <&panel_in_dsi1>;
};
};
};
};
&dsi1_in_vp0 {
status = "okay";
};
&dsi1_in_vp1 {
status = "okay";
};
&route_dsi1 {
status = "okay";
connect = <&vp1_out_dsi1>;
};
&i2c3 {
status = "okay";
pinctrl-0 = <&i2c3m1_xfer>;
rockpi_mcu: rockpi-mcu@45 {
compatible = "rockpi_mcu";
reg = <0x45>;
status = "okay";
};
rockpi_ft5406: rockpi_ft5406@38 {
compatible = "rockpi_ft5406";
reg = <0x38>;
status = "okay";
};
};
Can you spot what is wrong, or what is missing?