Other Parts Discussed in Thread: DS90UB928Q
Hi Team,
We are facing some issue with serializer configuration while getting the display.
Our Current HW configuration:
Qualcomm SOC (Android) --> MIPI --> Serializer (DS90UB941AS) --> FPD Link --> Deserializer (DS90UB928Q) --> LVDS Display.
Currently as a bringup process we are not configuring serializer in kernel rather we do it in userspace script. The configuration looks good, as we can see the display.
The problem we are facing today is we are not able to see the display soon after the script execution is done, rather we need to press android pwr key two times, which makes device to sleep and wakeup. (you can assume how android phone's pwr key we use to off and on the display).
I would like to understand this part why it has to goto off and On to get the display. Because as part of booting process I can see the dsi data is available. So I am epecting soon after the script executed I should see the available display., but its not happening.
Below is my script. After executing this script ON and OFF makes the display up.
#! /system/bin/sh
i2cset -y 3 0x0c 0x01 0x08 b #//Disable DSI
i2cset -y 3 0x0c 0x1E 0x01 b #Select FPD-Link III Port 0
i2cset -y 3 0x0c 0x03 0x9A b #Enable I2C_PASSTHROUGH, FPD-Link III Port 0
i2cset -y 3 0x0c 0x07 0x94 b #Set Slave Address
i2cset -y 3 0x0c 0x08 0x94 b #Set Slave Alias
i2cset -y 3 0x0c 0x1E 0x01 b # Select FPD-Link III Port 0
i2cset -y 3 0x0c 0x40 0x05 b # 001 : DSI/D-PHY Port 0 Digital Registers
i2cset -y 3 0x0c 0x41 0x21 b # Select DSI_CONFIG_1 register
i2cset -y 3 0x0c 0x42 0x60 b # Set DSI_VS_POLARITY=DSI_HS_POLARITY=1
i2cset -y 3 0x0c 0x1E 0x01 b # Select FPD-Link III Port 0
i2cset -y 3 0x0c 0x4F 0x8C b # Set DSI_CONTINUOUS_CLOCK, 4 lanes, DSI Port 0
i2cset -y 3 0x0c 0x40 0x04 b # Select DSI Port 0 digital registers
i2cset -y 3 0x0c 0x41 0x05 b # Select DPHY_SKIP_TIMING register
i2cset -y 3 0x0c 0x42 0x02 b # Write TSKIP_CNT value for 90 MHz DSI clock (800p, PCLK = 30 MHz)
i2cset -y 3 0x0c 0x01 0x00 b #//Enable DSI
Can you please let us know what causes this issue? I want to understand more on DSI enable and disable part, to design the driver better.