Presentation is loading. Please wait.

Presentation is loading. Please wait.

Android RISC Team Wendy Wang July,2017

Similar presentations


Presentation on theme: "Android RISC Team Wendy Wang July,2017"— Presentation transcript:

1 Android RISC Team Wendy Wang July,2017
Display Implement Android RISC Team Wendy Wang July,2017

2 Freescale i.MX6D/Q Reference Manual
Agenda Overview Freescale i.MX6D/Q Reference Manual Simple block diagram Image processing unit (IPU) LVDS Display Bridge (LDB) Kernel implement Power on sequence implement Reference 2

3 Overview What is the display driver owner to do?
LVDS/HDMI settings Kernel Kernel Command Panel Power on Sequence Bootloader We use HIT-W101L as sample to explain. Android version: 5.1.1 LCD panel model name: OT101ZBWDLN-08 SPEC 3

4 Freescale i.MX6D/Q Reference Manual
Simple Block Diagram WXUGA : 1920*1200 HDMI 1.4 : 4K*2K HDMI 1.4(尚未porting過那麼高的解析度) WXUGA( Reference: 4

5 Freescale i.MX6D/Q Reference Manual
Image processing unit (IPU): The IPU is planned to be a part of the video and graphics subsystem in an application processor. The goal of the IPU is to provide comprehensive support for the flow of data from an image sensor and/or to a display device. Image processing unit Linux: 4 Frame buffers Android: 2 Frame buffers 二/四核心是兩個IPU 單核心的是一個IPU IPU(Image Processing Unit)图像处理单元。图像处理单元的目标是提供从图像输入(摄像头传感器 / 电视信号输入等)到显示设备(LCD显示屏 / TV输出 / 外部图像处理单元等)端到端的数据流信号处理的全面支持。 Reference: 5

6 Android RISC Team Wendy Wang July,2017
Kernel Device tree setting Android RISC Team Wendy Wang July,2017

7 HIT-W101L IPU Display Settings
Device tree Path: ../kernel_imx/arch/arm/boot/dts/imx6ql-dmssr09.dtsi Image processing unit HDMI status=“okay” Parameter settings: ipu_id=<0> disp_id=<0> MIPI status=“disabled” LVDS1 crtc = "ipu2-di0" LVDS2

8 LVDS panel parameter settings
Device tree Path: ../kernel_imx/arch/arm/boot/dts/imx6qdl-dmssr09.dtsi Display mode: Default=single mode. Left margin(hfront-porch) + right margin(hback-porch) + hsync-len = 160( ) Upper margin(vfront-porch) + lower margin(vfront-porch) + vsync-len = 23( ) 通常會數值會調整Typ. 8

9 LVDS Display Mode Freescale i.MX6D/Q Reference Manual-LVDS Display Bridge (LDB) LDB will be used to connect the IPU to External LVDS Display interface. There are 2 LVDS channel. The LVDS ports may be used as below: Single channel output Dual channel output (one input source, two channels outputs for two displays) Split channel output (one input source, split to 2 channels on output) IPU LDB LVDS1 LVDS2 Split: 用於高畫質 9

10 HDMI parameter settings
Device tree Path: Path: ../kernel_imx/arch/arm/boot/dts/imx6qdl-dmssr09.dtsi Settings Enable hdmi_core/hdmi_video/hdmi_audio/hdmi_edid. This project doesn’t support hdmi_cec function. Introduction Extended display identification data(EDID) Consumer Electronics Control (CEC) 延伸顯示能力識別(Extended display identification data,簡稱EDID)是指螢幕解析度的資料,包括廠商名稱與序號。一般EDID存在於顯示器的PROM或EEPROM內。一般如要讀取EDID都是透過I2C,slave address是0x50。 CEC全文為Consumer Electronics Control 必須預留線路,但可以不必實作 用來傳送工業規格的AV Link協定訊號,以便支援單一遙控器操作多台AV機器

11 Dual display framebuffer settings
Device tree Path: Path: ../kernel_imx/arch/arm/boot/dts/imx6qdl-dmssr09.dtsi Setting RGB Data of 18 or 24 bits. 18 bits: “RGB666” 24 bits: “RGB24” 與hw team詢問,現在的display的bits。 標準的RGB圖檔是紅、綠、藍三個色頻(Color Channel)構成,每個色頻都是8-bit, 三者相疊就構成繽紛的彩色影像,因此RGB圖檔具有24 bit的彩色能力,總共可以 顯示2的24次方= ,216種顏色,稱為全彩 (True Color)圖檔。 電腦影像處理的主要對象是24-bit影像 ,當然還有其他色階的規格,如 Targa(. TGA)與PICT(.PIC)檔案格式均支援16-bit的影像,可以有效縮小RGB圖檔的檔案容 量。 11

12 Android RISC Team Wendy Wang July,2017
Kernel Kernel cmdline settings Android RISC Team Wendy Wang July,2017

13 Kernel command settings(1)
Boot command Path: ../device/fsl/dmssr09_6dq/BoardConfig.mk Setting primary output(mxcfb0) and secondary output(mxcfb1/mxcfb2/mxcfb3). Parameter settings Consloe只是土訊息debug用而已 主要看mxcfb那邊就好 這邊主要是要開幾組畫面輸出 然後誰是主輸出,誰是次要輸出, 主輸出的framebuffer為 fb0 次要輸出的frame buffer為fb1 TREK-734是單顯,所以其他的顯示路徑都off,只有指定mxcfb0 13

14 Parameter description
Kernel Parameter Description video Tells kernel/driver which resolution/depth and refresh rate should be used, or tells kernel/driver not to register a framebuffer device for a display device. vmalloc Vmalloc virtual range size for kernel. cma(Contiguous Memory Allocator) For GPU/VPU physical memory allocation. IPU GPU VPU Reference: Vmalloc是分配給核心的連續虛擬的記憶體 mxc_hdmi 20e0000.hdmi_video: same edid Solution: Change different HDMI display, the issue will be fixed.

15 Android RISC Team Wendy Wang July,2017
Power sequence introduction Android RISC Team Wendy Wang July,2017

16 Power sequence(1) SPEC Power on sequence (bootloader) T2, T3, T8, T9
為什麼要調power on/off sequence?? 1.確保display可以正常動作(不會閃爍,或是不會亮的問題) 2.延長display壽命 因為HIT-W101L沒有power key去關閉電源,只有插拔電源,所以只要調整power on sequence。 如何對應pin腳? 1.每一個對應的pin腳請找EE畫 調整時間相關問題 1.若是訊號爬升的過程所花費的時間,請EE調 2.SW只能調整pin與pin之間的時間差。還有拉pin的順序問題 解釋要怎麼看區間: T值代表兩者訊號與訊號之間的時間差 T值有左右箭頭 左箭頭代表開始的點,右箭頭代表結束的點 舉例T9 T9代表PWM從low到high起來的時間點,到LED_EN low到high起來的時間點的時間間距。

17 Power sequence(2) SPEC

18 GPIO Definition Pin definition Bootloader
Path: Path: ../bootable/bootloader/uboot-imx/board/advantech/mx6dmssr09/mx6dmssr09.c Power supply for logic VDD LCD_PWR_EN GPIO3_IO19 Interface signal Vi (LVDS signal of transmitter) LVDS_CLK N/A LED_EN GPIO4_IO10 PWM LCD_PWM2 GPIO1_IO01 Power supply for BL VLED LCD_BK_PWR_EN GPIO1_IO02 首先要先確認每一隻pin腳的panel spec與硬體定義的GPIO,之後才能將他實現在code裡面。 有關於LVDS_CLK,主要是透過程式將register寫入後,才能

19 Sequence flow Condition Sequence order
VLED  VDD  LVDS_CLK  PWM  LED_EN VDD  LVDS_CLK  LED_EN T2 0~50 T3 200up VLED  PWM  LED_EN T8 10up T9 0~180 T2 T9 根據spec,需要符合上面兩個條件 所以可將sequence 排序排成以下的關係, T8 10up T3 200up

20 Power on sequence implement
Power on sequence (bootloader) Path: ../bootable/bootloader/uboot-imx/common/stdio.c Stdio.c Stdio_add_devices: 函数stdio_add_devices执行stdio设备的注册,比如标准输出设备可能包括I2C、显示器等。 所以有關於顯示器相關的sequence的實現,都是在這個function實作。

21 Oscilloscope measurement(1)
LVDS_CLK check timer

22 Oscilloscope measurement(2)
T2=40ms

23 Oscilloscope measurement(3)
T9=90ms

24 Oscilloscope measurement(4)
T3>200ms

25 Oscilloscope measurement(5)
T8>10ms

26 Reference Website from Aaron
26

27


Download ppt "Android RISC Team Wendy Wang July,2017"

Similar presentations


Ads by Google