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: Can't read DPCD or EDID

Part Number: SN65DSI86-Q1
Other Parts Discussed in Thread: SN65DSI86

Tool/software: Linux

Hi

I'm triying to use chip SN65DSI86 with panel Innolux N140HCE

After using Tuner app i set configuration registers, but panel showed no image (demo pettern enabled 0x3C=0x10).

I read registers F0-F8 and they showed me error DSI_PROTOCOL_ERR and AUX_RPLY_TOUT

I decide to resolve chip-to-panel chain problem and first my goal is to read DPCD or EDID data to test reliability of AUX.

Unfortunely i don't have AUX analyzer and can only rely on read/write registers by i2c.

Problem with reading DPCD data is that after i set CMD,ADDR,LEN and SEND bit register F4 always shows 0x00, and reading registers 0x79... also always are 0x00

My code is (i run it before init, after init registers, after software reset with no luck):

i2c_smbus_write_byte_data(dsi85_i2c_client, 0xF4, 0xFF); // clear

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); // send

msleep(20);
printk(KERN_INFO "eDP: aux-F4-I2C: read 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); // clear

What to do and how can i diagnose problem?