Hello, here I use the TS101 MIPI screen on VIM3 as an example:
pixel_clk:
It needs to be configured according to actual needs. Calculation method of pixel_clk: pixel_clk = h_period * v_period *
frame_rate. pixel_clk can also directly set the frame rate value. frame_rate is generally 60HZ
bit_rate_max:
Please check the specification book to determine this value. If it is not provided, you need to follow the formula pclk * 3 * 8 = bit_rate *
lane_num (both 6bit and 8bit lcd are calculated according to 8bit)
The relevant h_period and h_period examples below have comments that you can use as a reference.
lcd_2{
model_name = "TS101";
interface = "mipi";
basic_setting = <1920 1200 /*h_active, v_active*/
2066 1229 /*h_period, v_period*/
8 /*lcd_bits*/
154 86>; /*screen_widht, screen_height*/
lcd_timing = <4 23 0 /*hs_width, hs_bp, hs_pol*/
4 14 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <0xff /*fr_adj_type(0=clk, 1=htotal, 2=vtotal)*/
0 /*clk_ss_level */
1 /*clk_auto_generate*/
152346840>; /*pixel_clk(unit in Hz)*/
mipi_attr = <4 /*lane_num*/
1000 /*bit_rate_max(MHz)*/
0 /*factor(*100, default 0 for auto)*/
1 /*operation_mode_init(0=video, 1=command)*/
0 /*operation_mode_display(0=video, 1=command)*/
2 /*
*video_mode_type
*(0=sync_pulse,1=sync_event,2=burst)
*/
1 /*clk_always_hs(0=disable,1=enable)*/
0>; /*phy_switch(0=auto,1=standard,2=slow)*/