TI中文支持网
TI专业的中文技术问题搜集分享网站

DS90UB948-Q1: DS90UB941AS-Q1 DS90UB948-Q1 bring up 問題

Part Number:DS90UB948-Q1Other Parts Discussed in Thread:ALP, DS90UB941AS-Q1

配置

MIPI / SYNC_PULSE_VDO_MOD -> 941 -> cable -> 948 -> LVDS / DE 

使用APL時 Eanble PGEN / Timing Source:Externel 無畫面

DSI_VC_DTYPE為0

想請問在這樣的架構下941/948是否有其他需設置的Register?

或是有什麼其他排查的方向

MIPI SOURCE

  • data lane每帧回LP11(Low Power state,dp,dn都为高电平),clk一直HS( High Speed),对应配置:
  • params->dsi.cont_clock=1;
  • params->dsi.clk_lp_per_line_enable=0;

Kailyn Chen:

您好,关于您的这个问题,我下周一给您答复。

,

Charles Lee:

請問是否有進一步資訊

,

Kailyn Chen:

您好,抱歉,能否将ALP的配置截图附上我这边看下您的配置?

然后我这边今天也会尽快给您答复。

,

Charles Lee:

ALP沒做什麼其他設置,基本就切換Timing Source而已

搜尋了一下資料

1. 應該這一頁也需要設置? TX Port / VC 要依據什麼設置?

2. 除了上面項目

可能還須設置 DSI_*SW_CFG_*、DSI_CONTINUOUS_CLOCK、DSI_SYNC_PULSES、TSKIP_CNT

除了上列是否有遺漏?

3. 一般腳本裡會看到的下列敘述是否在ALP裡就不須再額外配置

# Disable DSI
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x08
# Select FPD-Link III Port 0
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x1e 0x01
# Enable I2C_PASSTHROUGH
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x03 0x9a
# Force select port 0
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x5b 0x01
# Select DSI Port 0 digital registers
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x40 0x04
……
……

# Enable DSI
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x00

3. 在Timing control: External 的配置下, 勾選Enable Generator會看到Pattern畫面、取消勾選Enable Generator會看到SOC送出的畫面這樣理解對嗎

,

Kailyn Chen:

您好,只需要设置Pattern Generator这一页就可以。

Charles Lee said: 在Timing control: External 的配置下, 勾選Enable Generator會看到Pattern畫面、取消勾選Enable Generator會看到SOC送出的畫面這樣理解對嗎

都是要enable generator,使用外部timing和内部timing的区别在于是否外部提供PCLK以及外部控制信号比如HS, VS, DE。但是画面都是pattern的画面。

,

Kailyn Chen:

关于pattern产生,可以参考这篇Exploring the Int Test Pattern Generation Feature of FPDLink III IVI Devices应用手册:

https://www.ti.com/lit/an/snla132g/snla132g.pdf

,

Charles Lee:

顏色不正確該確認什麼東西

VC_DTYPE=3E

• RGB888 (Packed Pixel Stream, 24-bit Format, Data Type 0x3E)

Source:

params->dsi.data_format.color_order = LCM_COLOR_ORDER_RGB; params->dsi.data_format.trans_seq = LCM_DSI_TRANS_SEQ_MSB_FIRST; params->dsi.data_format.padding = LCM_DSI_PADDING_ON_LSB; params->dsi.data_format.format = LCM_DSI_FORMAT_RGB888;

params->dsi.packet_size = 256; params->dsi.intermediat_buffer_num = 0; params->dsi.PS = LCM_PACKED_PS_24BIT_RGB888;

LVDS: VESA 8bit dual chanel

MODE_SEL = A8

,

Kailyn Chen:

pattern已经出图了是吗?您指的哪里颜色不对?您配置的是什么pattern  format?

,

Charles Lee:

Pattern gen可看到正常畫面

關閉pattern gen可顯示SOC產生的畫面但畫面不正常

原圖是長

,

Kailyn Chen:

您好,关于您的这个问题,我昨天查了下其他资料,看了下serdes的数据手册,从图像的变化来看,发生了旋转,但是serdes对图像没有处理功能。

所以我怀疑不是serdes的问题。

如果要验证的话,Soc产生横条纹的 画面,验证下输出是否正常。

,

Charles Lee:

問題已解決

目前看起來即使沒有用ALP下面這些東西都不需要設置?

# Disable DSI

i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x08
# Select FPD-Link III Port 0
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x1e 0x01
# Enable I2C_PASSTHROUGH
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x03 0x9a
# Force select port 0
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x5b 0x01
# Select DSI Port 0 digital registers
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x40 0x04
……

 DSI_*SW_CFG_*、DSI_CONTINUOUS_CLOCK、DSI_SYNC_PULSES、TSKIP_CNT

……

# Initialize DSI clock settings (From Section 10.2 of datasheet)
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x40 0x10
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x41 0x86
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x42 0x0A
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x41 0x94
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x42 0x0A

# Enable DSI
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x00

,

Kailyn Chen:

图像旋转的问题解决了是吗?是怎么解决的可以分享下吗?

,

Charles Lee:

沒有旋轉,只是拍攝角度,問題是顏色不對

,

Kailyn Chen:

您好,那颜色不对的问题解决了吗?

您上面提到的问题已解决指的是哪部分?

,

Charles Lee:

顏色問題已解決

目前看起來即使沒有用ALP,下面這些東西也都不需要特別透過SOC設置就可以?

# Disable DSI

i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x08
# Select FPD-Link III Port 0
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x1e 0x01
# Enable I2C_PASSTHROUGH
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x03 0x9a
# Force select port 0
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x5b 0x01
# Select DSI Port 0 digital registers
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x40 0x04
……

 DSI_*SW_CFG_*、DSI_CONTINUOUS_CLOCK、DSI_SYNC_PULSES、TSKIP_CNT

……

# Initialize DSI clock settings (From Section 10.2 of datasheet)
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x40 0x10
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x41 0x86
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x42 0x0A
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x41 0x94
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x42 0x0A

# Enable DSI
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x00

,

Kailyn Chen:

您好,颜色问题是怎么解决的,感谢分享下,是serdes这边的时序配置问题吗?

另外,您列举的这些寄存器是需要配置的,比如选择0x1E,FPD link port,0x03:enable I2C pass through(否则不能和remote ser/des通信)

或者0x5B配置输出模式,都是需要配置的。

,

Charles Lee:

MODE_SEL錯誤導致

I2C pass through可以理解

但目前上電後什麼都不做畫面就可以顯示,所以很困惑到底什麼是需要配置的什麼是多餘的?

另外若要配寄存器下面時序是必要的?

# Disable DSI

i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x08

XXXXX

# Initialize DSI clock settings (From Section 10.2 of datasheet)
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x40 0x10
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x41 0x86
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x42 0x0A
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x41 0x94
i2cset -y -f $I2C_BUS_NUMBER $UB941AS_ADDR 0x42 0x0A

# Enable DSI
i2cset -y -f -r $I2C_BUS_NUMBER $UB941AS_ADDR 0x01 0x00

,

Kailyn Chen:

您好,按照默认配置是可以显示的,配置寄存器的目的是为了满足实际的应用需求。比如默认配置输出为独立2:2显示输出,那实际需要配置split mode,那就需要更改寄存器的配置。但是按照默认的配置也是可以出图的。

配置寄存器的话,是需要按照10.2 Power-Up and Initialization初始化进行的。

,

Charles Lee:

所以理論上暫存器都不需要設置

941-948會自動依據SOC端的訊號自動配置相關暫存器(如tx port / lane數)於948端顯示對嗎

那這些暫存器什麼情況下才需要手動變更 DSI_*SW_CFG_*、DSI_CONTINUOUS_CLOCK、DSI_SYNC_PULSES、TSKIP_CNT

,

Kailyn Chen:

Charles Lee said:DSI_CONTINUOUS_CLOCK

当 DS90UB941AS-Q1 在 DSI 参考时钟模式下工作时,来自源 DSI 时钟用于直接设置 FPD-Link 正向通道频率 和视频 PCLK 频率。必须确保 DSI 时钟始终连续(非 LP-11 转换).

对于非连续时钟模式,时钟通道可能会在 HS 数据包传输之间进入 LP-11 低功耗状态。

Charles Lee said:DSI_*SW_CFG_

用来设置同步脉冲宽度的。 参考下面DSI_SYNC_PULSES的解释。

Charles Lee said:DSI_SYNC_PULSES

这个是用来配置是否使用原始同步hsync和Vync时序的。

就是说当DSI source是sync pulse模式,则设置DSI_SYNC_PULSES=1;当DSI source是Event mode或者burst  mode模式,则设置DSI_SYNC_PULSES=0,并且要把VS和HS的width写入DSI_HSYNC_WIDTH和DSI_VSYNC_WIDTH寄存器中。

Charles Lee said:TSKIP_CNT

这个参数是根据DSI clock频率来配置的,可以参考数据手册8.3.1.2部分介绍:

赞(0)
未经允许不得转载:TI中文支持网 » DS90UB948-Q1: DS90UB941AS-Q1 DS90UB948-Q1 bring up 問題
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1