static int __init mipi_cmd_orise_720p_pt_init(void) { int ret; if (msm_fb_detect_client("mipi_cmd_orise_720p")) return 0; pinfo.xres = 720; pinfo.yres = 1280; pinfo.type = MIPI_CMD_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; pinfo.lcdc.h_back_porch = 160; pinfo.lcdc.h_front_porch = 160; pinfo.lcdc.h_pulse_width = 8; pinfo.lcdc.v_back_porch = 32; pinfo.lcdc.v_front_porch = 32; pinfo.lcdc.v_pulse_width = 1; pinfo.lcdc.border_clr = 0; pinfo.lcdc.underflow_clr = 0xff; pinfo.lcdc.hsync_skew = 0; pinfo.bl_max = 200; pinfo.bl_min = 1; pinfo.fb_num = 2; pinfo.clk_rate = 507000000; pinfo.lcd.vsync_enable = TRUE; pinfo.lcd.hw_vsync_mode = TRUE; pinfo.lcd.refx100 = 6000; pinfo.lcd.v_back_porch = 32; pinfo.lcd.v_front_porch = 32; pinfo.lcd.v_pulse_width = 1; pinfo.mipi.mode = DSI_CMD_MODE; pinfo.mipi.dst_format = DSI_CMD_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.data_lane2 = TRUE; pinfo.mipi.data_lane3 = TRUE; pinfo.mipi.t_clk_post = 0x04; pinfo.mipi.t_clk_pre = 0x1e; pinfo.mipi.stream = 0; pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_NONE; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.te_sel = 1; pinfo.mipi.interleave_max = 1; pinfo.mipi.insert_dcs_cmd = TRUE; pinfo.mipi.wr_mem_continue = 0x3c; pinfo.mipi.wr_mem_start = 0x2c; pinfo.mipi.dsi_phy_db = &dsi_cmd_mode_phy_db; ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_720P_PT); if (ret) pr_err("%s: failed to register device!\n", __func__); return ret; }
static int __init mipi_video_orise_720p_pt_init(void) { int ret; if (msm_fb_detect_client("mipi_video_orise_720p")) return 0; pinfo.xres = 720; pinfo.yres = 1280; pinfo.lcdc.xres_pad = 0; pinfo.lcdc.yres_pad = 0; pinfo.type = MIPI_VIDEO_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; pinfo.lcdc.h_back_porch = 160; pinfo.lcdc.h_front_porch = 160; pinfo.lcdc.h_pulse_width = 8; pinfo.lcdc.v_back_porch = 32; pinfo.lcdc.v_front_porch = 32; pinfo.lcdc.v_pulse_width = 1; pinfo.lcdc.border_clr = 0; /* blk */ pinfo.lcdc.underflow_clr = 0xff; /* blue */ pinfo.lcdc.hsync_skew = 0; pinfo.bl_max = 255;//200; pinfo.bl_min = 1; pinfo.fb_num = 2; pinfo.mipi.mode = DSI_VIDEO_MODE; pinfo.mipi.pulse_mode_hsa_he = TRUE; pinfo.mipi.hfp_power_stop = TRUE; pinfo.mipi.hbp_power_stop = TRUE; pinfo.mipi.hsa_power_stop = FALSE; pinfo.mipi.eof_bllp_power_stop = TRUE; pinfo.mipi.bllp_power_stop = TRUE; pinfo.mipi.traffic_mode = DSI_NON_BURST_SYNCH_EVENT; pinfo.mipi.dst_format = DSI_VIDEO_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.rgb_swap = DSI_RGB_SWAP_RGB; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.data_lane2 = TRUE; pinfo.mipi.data_lane3 = TRUE; pinfo.mipi.t_clk_post = 0x04; pinfo.mipi.t_clk_pre = 0x1c; pinfo.mipi.stream = 0; /* dma_p */ pinfo.mipi.mdp_trigger = 0; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.frame_rate = 55; pinfo.mipi.dsi_phy_db = &dsi_video_mode_phy_db; pinfo.mipi.tx_eot_append = TRUE; pinfo.mipi.esc_byte_ratio = 4; ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_720P_PT); if (ret) printk(KERN_ERR "%s: failed to register device!\n", __func__); return ret; }
static int __init mipi_cmd_orise_720p_pt_init(void) { int ret; if (msm_fb_detect_client("mipi_cmd_orise_720p")) return 0; pr_info("Neal N1 mipi_cmd_orise_720p_pt_init init\n"); pinfo.xres = 1080; pinfo.yres = 1920; pinfo.type = MIPI_CMD_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; pinfo.mipi.data_lane2 = TRUE; pinfo.lcdc.h_back_porch = 120; //pinfo.lcdc.h_front_porch = 100; //pinfo.lcdc.h_back_porch = 101; pinfo.lcdc.h_front_porch = 100; pinfo.lcdc.h_pulse_width = 8; pinfo.lcdc.v_back_porch = 11; pinfo.lcdc.v_front_porch = 10; pinfo.lcdc.v_pulse_width = 5; pinfo.lcdc.border_clr = 0; //blk pinfo.lcdc.underflow_clr = 0xff; /* blue */ pinfo.lcdc.hsync_skew = 0; pinfo.bl_max = 255; pinfo.bl_min = 0; pinfo.fb_num = 2; //pinfo.clk_rate = 550000000; //pinfo.clk_rate = 499000000; pinfo.clk_rate = 900000000; pinfo.mipi.esc_byte_ratio = 4; pinfo.lcd.vsync_enable = TRUE; pinfo.lcd.hw_vsync_mode = TRUE; pinfo.lcd.refx100 = 6300; /* adjust refx100 to prevent tearing */ //pinfo.lcd.refx100 = 6204; //pinfo.lcd.refx100 = 6105; //pinfo.lcd.refx100 = 6205; pinfo.mipi.mode = DSI_CMD_MODE; pinfo.mipi.dst_format = DSI_CMD_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.rgb_swap = DSI_RGB_SWAP_RGB; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.data_lane2 = TRUE; pinfo.mipi.data_lane3 = TRUE; //pinfo.mipi.t_clk_post = 0x04; //pinfo.mipi.t_clk_pre = 0x1d; pinfo.mipi.t_clk_post = 0x20; pinfo.mipi.t_clk_pre = 0x2F; pinfo.mipi.stream = 0; /* dma_p */ pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; //pinfo.mipi.traffic_mode = DSI_BURST_MODE; //pinfo.mipi.traffic_mode = DSI_NON_BURST_SYNCH_EVENT; //pinfo.mipi.dsi_pclk_rate = ; //pinfo.mipi.frame_rate = 60; pinfo.mipi.te_sel = 1; /* TE from vsync gpio */ pinfo.mipi.interleave_max = 1; pinfo.mipi.insert_dcs_cmd = TRUE; pinfo.mipi.wr_mem_continue = 0x3c; pinfo.mipi.wr_mem_start = 0x2c; pinfo.mipi.dsi_phy_db = &dsi_cmd_mode_phy_db_1080p; pinfo.mipi.tx_eot_append = 0x01; pinfo.mipi.rx_eot_ignore = 0x0; ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_720P_PT); if (ret) pr_err("%s: failed to register device!\n", __func__); return ret; }
static int __init mipi_cmd_orise_pt_init(void) { int ret; pr_info("[DISPLAY] +%s\n", __func__); pinfo.xres = 480; pinfo.yres = 854; pinfo.type = MIPI_CMD_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; /* MM-VH-DISPLAY-NICKI14*[ */ pinfo.lcdc.h_back_porch = 44; pinfo.lcdc.h_front_porch = 46; pinfo.lcdc.h_pulse_width = 4; pinfo.lcdc.v_back_porch = 16; pinfo.lcdc.v_front_porch = 15; pinfo.lcdc.v_pulse_width = 1; /* MM-VH-DISPLAY-NICKI14*] */ /* Make sure change this value after modified pinfo.pll*/ pinfo.clk_rate = 400000000; pinfo.lcdc.border_clr = 0; /* blk */ pinfo.lcdc.underflow_clr = 0xf0; /* blue */ pinfo.lcdc.hsync_skew = 0; /* MM-KW-Backlight-02+{ */ pinfo.bl_max = 255; /* MM-KW-Backlight-02-} */ pinfo.bl_min = 1; pinfo.fb_num = 2; /* MM-KW-Logo-00+{ */ pinfo.width = 50; pinfo.height = 89; /* MM-KW-Logo-00-} */ pinfo.mipi.mode = DSI_CMD_MODE; pinfo.mipi.dst_format = DSI_CMD_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.rgb_swap = DSI_RGB_SWAP_RGB; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.data_lane2 = FALSE; pinfo.mipi.data_lane3 = FALSE; pinfo.mipi.tx_eot_append = TRUE; pinfo.mipi.t_clk_post = 0x5; pinfo.mipi.t_clk_pre = 0x18; pinfo.mipi.stream = 0; /* dma_p */ pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.frame_rate = 60; pinfo.mipi.dsi_phy_db = &dsi_cmd_mode_phy_db; pinfo.mipi.dlane_swap = 0x01; //pinfo.lcdc.xres_pad = 0; //pinfo.lcdc.yres_pad = 0; pinfo.lcd.refx100 = 7000; /* adjust refx100 to prevent tearing */ pinfo.mipi.te_sel = 1; /* TE from vsync gpio */// pinfo.mipi.interleave_max = 1; pinfo.mipi.insert_dcs_cmd = TRUE; pinfo.mipi.wr_mem_continue = 0x3c; pinfo.mipi.wr_mem_start = 0x2c; //pinfo.mipi.rx_eot_ignore = 0; pinfo.lcd.vsync_enable = TRUE; pinfo.lcd.hw_vsync_mode = TRUE; //pinfo.mipi.dsi_pclk_rate = 12000000; pinfo.mipi.esc_byte_ratio = 4; /* MM-VH-DISPLAY-NICKI18*] */ ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_FWVGA_PT); if (ret) pr_err("%s: failed to register device!\n", __func__); return ret; }
static int __init mipi_video_orise_pt_init(void) { int ret; printk(KERN_ERR "[DISPLAY] Enter %s\n", __func__); pinfo.xres = 480; pinfo.yres = 854; pinfo.type = MIPI_VIDEO_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; pinfo.lcdc.h_back_porch = 80; pinfo.lcdc.h_front_porch = 24; pinfo.lcdc.h_pulse_width = 15; pinfo.lcdc.v_back_porch = 50; pinfo.lcdc.v_front_porch = 8; pinfo.lcdc.v_pulse_width = 1; pinfo.clk_rate = 499000000; pinfo.lcdc.border_clr = 0; /* blk */ pinfo.lcdc.underflow_clr = 0xf0; /* blue */ pinfo.lcdc.hsync_skew = 0; pinfo.bl_max = 10; pinfo.bl_min = 1; pinfo.fb_num = 2; /* FIH-SW-MM-VH-DISPLAY-22+[ */ pinfo.width = 50; pinfo.height = 89; /* FIH-SW-MM-VH-DISPLAY-22+] */ pinfo.mipi.mode = DSI_VIDEO_MODE; pinfo.mipi.pulse_mode_hsa_he = TRUE; pinfo.mipi.hfp_power_stop = FALSE; pinfo.mipi.hbp_power_stop = FALSE; pinfo.mipi.hsa_power_stop = FALSE; pinfo.mipi.eof_bllp_power_stop = TRUE; pinfo.mipi.bllp_power_stop = TRUE; pinfo.mipi.traffic_mode = DSI_NON_BURST_SYNCH_PULSE; pinfo.mipi.dst_format = DSI_VIDEO_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.rgb_swap = DSI_RGB_SWAP_RGB; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.data_lane2 = FALSE; pinfo.mipi.data_lane3 = FALSE; pinfo.mipi.tx_eot_append = TRUE; pinfo.mipi.t_clk_post = 0x20; pinfo.mipi.t_clk_pre = 0x20; /* FIH-SW2-MM-NC-LCM_INIT-02 */ pinfo.mipi.stream = 0; /* dma_p */ pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_NONE; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; /* FIH-SW-MM-VH-DISPLAY-43*[ */ pinfo.mipi.frame_rate = 61; /* FIH-SW-MM-VH-DISPLAY-43*] */ pinfo.mipi.dsi_phy_db = &dsi_video_mode_phy_db; pinfo.mipi.dlane_swap = 0x01; ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_FWVGA_PT); if (ret) pr_err("%s: failed to register device!\n", __func__); return ret; }
static int __init mipi_cmd_orise_oppo_n1_pt_init(void) { int ret; /* OPPO 2013-11-13 gousj Add begin for device information */ #ifdef CONFIG_VENDOR_EDIT register_device_proc("lcd", DEVICE_VERSION, DEVICE_MANUFACUTRE); #endif /* OPPO 2013-11-13 gousj Add end */ if (msm_fb_detect_client("mipi_cmd_orise_oppo_n1")) return 0; pr_info("%s:\n", __func__); pinfo.xres = 1080; pinfo.yres = 1920; pinfo.type = MIPI_CMD_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; pinfo.mipi.data_lane2 = TRUE; pinfo.lcdc.h_back_porch = 120; //pinfo.lcdc.h_front_porch = 100; //pinfo.lcdc.h_back_porch = 101; pinfo.lcdc.h_front_porch = 100; pinfo.lcdc.h_pulse_width = 8; pinfo.lcdc.v_back_porch = 11; pinfo.lcdc.v_front_porch = 10; pinfo.lcdc.v_pulse_width = 5; pinfo.lcdc.border_clr = 0; //blk pinfo.lcdc.underflow_clr = 0xff; /* blue */ pinfo.lcdc.hsync_skew = 0; pinfo.bl_max = 255; pinfo.bl_min = 0; pinfo.fb_num = 2; pinfo.clk_rate = 900000000; pinfo.mipi.esc_byte_ratio = 4; pinfo.lcd.vsync_enable = TRUE; pinfo.lcd.hw_vsync_mode = TRUE; /* OPPO 2013-12-10 gousj Add begin for new panel adaption increase frame rate */ pinfo.lcd.refx100 = 6400; /* adjust refx100 to prevent tearing */ /* OPPO 2013-12-10 gousj Add end */ pinfo.mipi.mode = DSI_CMD_MODE; pinfo.mipi.dst_format = DSI_CMD_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.rgb_swap = DSI_RGB_SWAP_RGB; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.data_lane2 = TRUE; pinfo.mipi.data_lane3 = TRUE; //pinfo.mipi.t_clk_post = 0x04; //pinfo.mipi.t_clk_pre = 0x1d; pinfo.mipi.t_clk_post = 0x20; pinfo.mipi.t_clk_pre = 0x2F; pinfo.mipi.stream = 0; /* dma_p */ pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; //pinfo.mipi.traffic_mode = DSI_BURST_MODE; //pinfo.mipi.traffic_mode = DSI_NON_BURST_SYNCH_EVENT; //pinfo.mipi.dsi_pclk_rate = ; pinfo.mipi.frame_rate = 61; pinfo.mipi.te_sel = 1; /* TE from vsync gpio */ pinfo.mipi.interleave_max = 1; pinfo.mipi.insert_dcs_cmd = TRUE; pinfo.mipi.wr_mem_continue = 0x3c; pinfo.mipi.wr_mem_start = 0x2c; pinfo.mipi.dsi_phy_db = &dsi_cmd_mode_phy_db_1080p; pinfo.mipi.tx_eot_append = 0x01; pinfo.mipi.rx_eot_ignore = 0x0; ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_720P_PT); if (ret) pr_err("%s: failed to register device!\n", __func__); return ret; }
static int __init mipi_cmd_orise_qhd_pt_init(void) { int ret; if (msm_fb_detect_client("mipi_cmd_orise_qhd")) return 0; PR_DISP_INFO("panel: mipi_cmd_orise_qhd\n"); pinfo.xres = 540; pinfo.yres = 960; pinfo.type = MIPI_CMD_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; pinfo.width = 56; pinfo.height = 99; pinfo.lcdc.h_back_porch = 22; pinfo.lcdc.h_front_porch = 22; pinfo.lcdc.h_pulse_width = 1; pinfo.lcdc.v_back_porch = 3; pinfo.lcdc.v_front_porch = 3; pinfo.lcdc.v_pulse_width = 1; pinfo.lcdc.border_clr = 0; pinfo.lcdc.underflow_clr = 0xff; pinfo.lcdc.hsync_skew = 0; pinfo.bl_max = 255; pinfo.bl_min = 1; pinfo.fb_num = 2; pinfo.clk_rate = 482000000; pinfo.lcd.vsync_enable = TRUE; pinfo.lcd.hw_vsync_mode = TRUE; pinfo.lcd.refx100 = 6096; pinfo.lcd.v_back_porch = 2; pinfo.lcd.v_front_porch = 2; pinfo.lcd.v_pulse_width = 2; pinfo.mipi.mode = DSI_CMD_MODE; pinfo.mipi.dst_format = DSI_CMD_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.esc_byte_ratio = 4; pinfo.mipi.t_clk_post = 0x0a; pinfo.mipi.t_clk_pre = 0x21; pinfo.mipi.stream = 0; pinfo.mipi.mdp_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.te_sel = 1; pinfo.mipi.interleave_max = 1; pinfo.mipi.insert_dcs_cmd = TRUE; pinfo.mipi.wr_mem_continue = 0x3c; pinfo.mipi.wr_mem_start = 0x2c; pinfo.mipi.tx_eot_append = 1; pinfo.mipi.dsi_phy_db = &dsi_cmd_mode_phy_db; ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_QHD_PT); if (ret) PR_DISP_ERR("%s: failed to register device!\n", __func__); return ret; }
static int __init mipi_video_orise_720p_pt_init(void) { int ret; int rc = 0; if (msm_fb_detect_client("mipi_video_orise_720p")) return 0; /*OPPO Neal add for sharp panel*/ rc = gpio_request(LCD_DIS_GPIO, "LCD_DIS_GPIO"); if (rc < 0) { pr_err("MIPI GPIO LCD_TE_GPIO request failed: %d\n", rc); return -ENODEV; } gpio_direction_output(LCD_DIS_GPIO,0); dis = gpio_get_value(LCD_DIS_GPIO); printk(KERN_ERR "mipi_orise_lcd_probe Neal ******************************: dis = %d\n", dis); gpio_free(LCD_DIS_GPIO); /*OPPO Neal add end*/ pinfo.xres = 1080; pinfo.yres = 1920; pinfo.lcdc.xres_pad = 0; pinfo.lcdc.yres_pad = 0; pinfo.type = MIPI_VIDEO_PANEL; pinfo.pdest = DISPLAY_1; pinfo.wait_cycle = 0; pinfo.bpp = 24; #if 1 /* OPPO 2013-03-07 Gousj Modify begin for solve the issue of lack of virtical pixel. */ //Gousj modified h_back_porch from 100 to 101 /*OPPO Neal add for sharp panel*/ if(get_panel_info() == 0) { pinfo.lcdc.h_back_porch = 100;//100;//80; pinfo.lcdc.v_back_porch = 5; //must > 4,Otherwise,it will increase the burden of clock huyu printk(KERN_ERR "%s: register sharp device!\n", __func__); } else { pinfo.lcdc.h_back_porch = 101;//100;//80; pinfo.lcdc.v_back_porch = 4; //must > 4,Otherwise,it will increase the burden of clock huyu printk(KERN_ERR "%s: register jdi device!\n", __func__); } /*OPPO Neal add end*/ pinfo.lcdc.h_front_porch = 130;//120 pinfo.lcdc.h_pulse_width = 8; //Modified by Gousj on date 2013-3-4 ,the value of v_back_porch decreased from 5 to 4 . pinfo.lcdc.v_front_porch = 3; //Modified by Gousj on date 2013-3-4 ,the value of v_pulse_width decreased from 2 to 1 . pinfo.lcdc.v_pulse_width = 1;//2; /* OPPO 2013-03-07 Gousj Modify end */ #endif pinfo.lcdc.border_clr = 0; /* blk */ pinfo.lcdc.underflow_clr = 0xff; /* blue */ pinfo.lcdc.hsync_skew = 0; /* OPPO 2013-04-22 Gousj Modify for black light not light */ pinfo.bl_max = 127; /* OPPO 2013-04-022 Gousj Modify end */ pinfo.bl_min = 1; pinfo.fb_num = 2; pinfo.mipi.mode = DSI_VIDEO_MODE; pinfo.mipi.pulse_mode_hsa_he = FALSE; pinfo.mipi.hfp_power_stop = TRUE; pinfo.mipi.hbp_power_stop = FALSE; pinfo.mipi.hsa_power_stop = FALSE; pinfo.mipi.eof_bllp_power_stop = FALSE; pinfo.mipi.bllp_power_stop = FALSE; pinfo.mipi.traffic_mode = DSI_BURST_MODE; pinfo.mipi.dst_format = DSI_VIDEO_DST_FORMAT_RGB888; pinfo.mipi.vc = 0; pinfo.mipi.rgb_swap = DSI_RGB_SWAP_RGB; pinfo.mipi.data_lane0 = TRUE; pinfo.mipi.data_lane1 = TRUE; pinfo.mipi.data_lane2 = TRUE; pinfo.mipi.data_lane3 = TRUE; pinfo.mipi.t_clk_post = 0x25;//0x19; pinfo.mipi.t_clk_pre = 0x36;//0x37; pinfo.mipi.stream = 0; /* dma_p */ pinfo.mipi.mdp_trigger = 0; pinfo.mipi.dma_trigger = DSI_CMD_TRIGGER_SW; pinfo.mipi.frame_rate = 60; pinfo.mipi.dsi_phy_db = &dsi_video_mode_phy_db_1080p; pinfo.mipi.tx_eot_append = TRUE; pinfo.mipi.esc_byte_ratio = 4; ret = mipi_orise_device_register(&pinfo, MIPI_DSI_PRIM, MIPI_DSI_PANEL_720P_PT); if (ret) printk(KERN_ERR "%s: failed to register device!\n", __func__); return ret; }