This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/SN65DSI86-Q1:可以't读取DPCD或EDID

Guru**** 2463330 points
Other Parts Discussed in Thread: SN65DSI86

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/584981/linux-sn65dsi86-q1-can-t-read-dpcd-or-edid

部件号:SN65DSI86-Q1
主题中讨论的其它部件:SN65DSI86

工具/软件:Linux

你(们)好

我正在试用芯片SN65DSI86和面板Innolux N140HCE

使用调谐器应用程序后,我设置了配置寄存器,但面板没有显示图像(演示启用了pettern 0x3C=0x10)。

我读取了寄存器F0-F8,它们显示了错误DSI_Protocol_ERR和AUX_RPLY_tout

我决定解决芯片到面板链的问题,首先我的目标是读取DPCD或EDID数据以测试AUX的可靠性。

不幸的是,我没有AUX分析器,只能依靠i2c的读/写寄存器。

读取DPCD数据时出现的问题是,在我设置CMD,ADDR,LEN和发送位寄存器F4后,始终显示0x00,而读取寄存器0x79...也始终显示0x00

我的代码是(我在init之前,init注册之后,软件重置之后,不走运地运行它):

I2C_smbus_write_byte_data (dsi85_i2c_client,0xF4,0xFF);//清除

I2C_smbus_write_byte_data (dsi85_i2c_client,0x78,0x90);// cmd
I2C_smbus_write_byte_data (dsi85_i2c_client,0x74,0x00);// ADDR 19:16
I2C_smbus_write_byte_data (dsi85_i2c_client,0x75,0x00);// ADDR 15:8
I2C_smbus_write_byte_data (dsi85_i2c_client,0x76,0x00);// ADDR 7:0
I2C_smbus_write_byte_data (dsi85_i2c_client,0x77,0x10);// LEN
I2C_smbus_write_byte_data (dsi85_i2c_client,0x78,0x91);//发送

msleep(20);
printk (kern_info "eDP:aux-F4-I2C:读取0x%02x - 0x%02x\n",0xF4,i2c_smbus_read_byte_data (dsi85_i2c_client,0xF4);
I2C_smbus_write_byte_data (dsi85_i2c_client,0xF4,0xFF);//清除

该怎么办?如何诊断问题?