static void lcm_suspend_power(void)
{
	MDELAY(120);	
	ldo_p5m5_dsv_off(); // DSV +-5V power off
	MDELAY(20);
	//VCI/IOVCC off
	ldo_1v8io_off();
	ldo_ext_3v0_off();
	LCM_PRINT("[LCD] lcm_suspend_power \n");
}
static void lcm_init(void)
{
#if defined(BUILD_LK)
        SET_RESET_PIN(0);  // RESET low
        ldo_p5m5_dsv_off();
        ldo_1v8io_off();
        ldo_ext_3v0_off();
        MDELAY(2);

        ldo_1v8io_on();  // VDDI on
        ldo_ext_3v0_on(); // VPNL/TVDD on
        mt_set_gpio_mode(GPIO_LCD_PMODE_EN, GPIO_LCD_PMODE_EN_M_GPIO);
        mt_set_gpio_dir(GPIO_LCD_PMODE_EN, GPIO_DIR_OUT);
        mt_set_gpio_out(GPIO_LCD_PMODE_EN, GPIO_OUT_ZERO);  // PMODE pin low
        MDELAY(2);        
        mt_set_gpio_out(GPIO_LCD_PMODE_EN, GPIO_OUT_ONE);  // PMODE pin high
        MDELAY(5);
#else
        SET_RESET_PIN(0);
        ldo_1v8io_on();
        ldo_ext_3v0_on();
        MDELAY(10);
#endif
        SET_RESET_PIN(1);
        MDELAY(30);

        init_lcm_registers();
        MDELAY(20);
        ldo_p5m5_dsv_on();
        MDELAY(20);    
        init_lcm_registers_added(); //Display On

	need_set_lcm_addr = 1;

	LCM_PRINT("[LCD] lcm_init \n");
}