工具/软件:
我尝试将 MIPI 显示屏连接到 AM62L 上暴露的 DSI 接口、并期望其正常工作。 但是、驱动程序在探测期间异常退出、并且该 mipi_dsi_attach 函数返回错误代码。 从函数代码中、我可以看到发生错误的原因是 ops DSI 器件结构 host 字段中的(运算)函数指针为 NULL。 这是否是由于设备树配置中的问题导致连接操作失败?
&dss {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&main_dpi_pins_default>;
bootph-all;
};
&dss_ports {
port@0 {
reg = <0>;
dpi_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
&dphy_tx0 {
status = "okay";
bootph-all;
};
&dsi0 {
status = "okay";
bootph-all;
panel@0 {
compatible = "amelin,aml070wxii4006";
reg = <0>;
vcc-lcd-supply = <&vcc_3v3_sys>;
pinctrl-names = "default";
pinctrl-0 = <&mipi_lcd_rst>;
reset-gpio = <&main_gpio0 50 GPIO_ACTIVE_LOW>;
backlight = <&mipi_dsi_backlight>;
status = "okay";
port {
panel_in: endpoint {
remote-endpoint = <&dpi_out>;
};
};
};
};这是 k3-am62l3-evm.dts 上的编辑器件
drm_panel_add(&ctx->panel);
dsi->format = MIPI_DSI_FMT_RGB888;
dsi->lanes = 4;
dsi->mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_VIDEO_HSE | MIPI_DSI_MODE_LPM;
ret = of_property_read_u32(dsi->dev.of_node, "video-mode", &video_mode);
if (!ret) {
dsi->mode_flags = video_mode;
}
dev_info(&dsi->dev, "dsi video mode[0x%lx]\n", dsi->mode_flags);
return mipi_dsi_attach(dsi);这是它退出的探测函数、当它进入 probe、时、它将从 mipi_dsi_attach 退出、 DSI host?是否存在问题
