轉自:https://www.cnblogs.com/dirt2/p/5848979.html
轉自: http://blog.csdn.net/longxiaowu/article/details/24410021
一、MIPI
MIPI(移動行業處理器接口)是Mobile Industry Processor Interface的縮寫。MIPI(移動行業處理器接口)是MIPI聯盟發起的為移動應用處理器制定的開放標准。
已經完成和正在計划中的規范如下:
二、MIPI聯盟的MIPI DSI規范
1、名詞解釋
DSI分四層,對應D-PHY、DSI、DCS規范、分層結構圖如下:
• PHY 定義了傳輸媒介,輸入/輸出電路和和時鍾和信號機制。
• Lane Management層:發送和收集數據流到每條lane。
• Low Level Protocol層:定義了如何組幀和解析以及錯誤檢測等。
• Application層:描述高層編碼和解析數據流。
3、Command和Video模式
• DSI兼容的外設支持Command或Video操作模式,用哪個模式由外設的構架決定
• Command模式是指采用發送命令和數據到具有顯示緩存的控制器。主機通過命令間接的控制外設。Command模式采用雙向接口
• Video模式是指從主機傳輸到外設采用時實象素流。這種模式只能以高速傳輸。為減少復雜性和節約成本,只采用Video模式的系統可能只有一個單向數據路徑
三、D-PHY介紹
1、 D-PHY 描述了一同步、高速、低功耗、低代價的PHY。

•這個狀態下,lines處於空狀態 (LP-00)
• 時鍾Lane的超低功耗狀態
•時鍾Lane通過LP-11→LP-10→LP-00進入ULPS狀態
•通過LP-10 → TWAKEUP →LP-11退出這種狀態,最小TWAKEUP時間為1ms
•發送高速串行數據的行為稱為高速數據傳輸或觸發(burst)
•時鍾應該處於高速模式
•退出Escape模式的過程:LP-10→LP-11
•進入高速模式的過程:LP-11→LP-01→LP-00→SoT(00011101) → HSD (80Mbps ~ 1Gbps)
•退出高速模式的過程:EoT→LP-11
•控制模式 - BTA 傳輸過程:LP-11→LP-10→LP-00→LP-10→LP-00
•控制模式 - BTA 接收過程:LP-00→LP-10→LP-11

四、DSI介紹
1、DSI是一種Lane可擴展的接口,1個時鍾Lane/1-4個數據Lane
• DSI兼容的外設支持1個或2個基本的操作模式:
• Command Mode(類似於MPU接口)
• Video Mode(類似於RGB接口)- 必須用高速模式傳輸數據,支持3種格式的數據傳輸
• Non-Burst 同步脈沖模式
• Non-Burst 同步事件模式
• Burst模式
• 傳輸模式:
• 高速信號模式(High-Speed signaling mode)
• 低功耗信號模式(Low-Power signaling mode) - 只使用數據lane 0(時鍾是由DP,DN異或而來)。
• 幀類型
• 短幀:4 bytes (固定)
• 長幀:6~65541 bytes (可變)
• 兩個數據Lane高速傳輸示例
2、短幀結構
• 幀頭部(4個字節)
• 數據標識(DI) 1個字節
• 幀數據- 2個字節 (長度固定為2個字節)
• 錯誤檢測(ECC) 1個字節
• 幀大小
• 長度固定為4個字節
3、長幀結構
• 幀頭部(4個字節)
• 數據標識(DI) 1個字節
• 數據計數- 2個字節 (數據填充的個數)
• 錯誤檢測(ECC) 1個字節
•數據填充(0~65535 字節)
• 長度=WC*字節
• 幀尾:校驗和(2個字節)
• 幀大小:
• 4 + (0~65535) + 2 = 6 ~ 65541 字節
4、幀數據類型
具體代碼在drivers/video/msm/Mipi_dsi.h中
- /* dcs read/write */
- #define DTYPE_DCS_WRITE 0x05 /* short write, 0 parameter */
- #define DTYPE_DCS_WRITE1 0x15 /* short write, 1 parameter */
- #define DTYPE_DCS_READ 0x06 /* read */
- #define DTYPE_DCS_LWRITE 0x39 /* long write */
- /* generic read/write */
- #define DTYPE_GEN_WRITE 0x03 /* short write, 0 parameter */
- #define DTYPE_GEN_WRITE1 0x13 /* short write, 1 parameter */
- #define DTYPE_GEN_WRITE2 0x23 /* short write, 2 parameter */
- #define DTYPE_GEN_LWRITE 0x29 /* long write */
- #define DTYPE_GEN_READ 0x04 /* long read, 0 parameter */
- #define DTYPE_GEN_READ1 0x14 /* long read, 1 parameter */
- #define DTYPE_GEN_READ2 0x24 /* long read, 2 parameter */
- #define DTYPE_TEAR_ON 0x35 /* set tear on */
- #define DTYPE_MAX_PKTSIZE 0x37 /* set max packet size */
- #define DTYPE_NULL_PKT 0x09 /* null packet, no data */
- #define DTYPE_BLANK_PKT 0x19 /* blankiing packet, no data */
- #define DTYPE_CM_ON 0x02 /* color mode off */
- #define DTYPE_CM_OFF 0x12 /* color mode on */
- #define DTYPE_PERIPHERAL_OFF 0x22
- #define DTYPE_PERIPHERAL_ON 0x32
- /*
- * dcs response
- */
- #define DTYPE_ACK_ERR_RESP 0x02
- #define DTYPE_EOT_RESP 0x08 /* end of tx */
- #define DTYPE_GEN_READ1_RESP 0x11 /* 1 parameter, short */
- #define DTYPE_GEN_READ2_RESP 0x12 /* 2 parameter, short */
- #define DTYPE_GEN_LREAD_RESP 0x1a
- #define DTYPE_DCS_LREAD_RESP 0x1c
- #define DTYPE_DCS_READ1_RESP 0x21 /* 1 parameter, short */
- #define DTYPE_DCS_READ2_RESP 0x22 /* 2 parameter, short */
1、MIPI DSI在Low Power模式下的信號測量圖
2、MIPI的D-PHY和DSI的傳輸方式和操作模式
• Video Mode(類似於RGB接口)- 必須用高速模式傳輸數據