Exemplo n.º 1
0
static void rt9396_wakeup(struct rt9396_driver_data *drvdata)
{
	if (!drvdata || drvdata->state == NORMAL_STATE)
		return;

   printk("[rt9396_wakeup] pre intensity:%d !!!!!\n", drvdata->intensity);
	if(rt9396_powerstate == SLEEP_STATE){
			rt9396_powerstate = NORMAL_STATE;
	}
//LGE_CHANGE_S, [[email protected]] , 2012-07-09
	//For backlight timing
	if(bl_chargerlogo == 1)
		msleep(50);
	else
		msleep(100);
//LGE_CHANGE_E, [[email protected]] , 2012-07-09	
	if (drvdata->state == POWEROFF_STATE) {
		//rt9396_poweron(drvdata);
	} else if (drvdata->state == SLEEP_STATE) {
		if (drvdata->mode == NORMAL_MODE) 
		{
         #if 0 /*2012-09-26 junghoon-kim([email protected]) LCD-LED brightness bug.[START]*/
			rt9396_set_table(drvdata, drvdata->cmds.normal);			
         #endif /*2012-09-26 junghoon-kim([email protected]) porting from bu61800 driver [END]*/
			drvdata->state = NORMAL_STATE;
		} else if (drvdata->mode == ALC_MODE) {
			//nothing
		}
	}

   #if 0//[V3][junghoon79.kim][2012.9.16] no file ( LG_diag_testmode.c )
	/* LGE_CHANGE_S : Test Mode(Flight Mode)
	 * 2012-07-05, [email protected]
	 * [L38C][Test Mode][Common] Modify to automatically turn off LCD while test mode flight mode on.
	 */
	// LGE_CHANGE_S [[email protected]][07-03][start]
	// minimum current at SMT
	if(LGF_TestMode_Is_SleepMode())
	{
		if(rt9396_powerstate == NORMAL_STATE )
		{
				LGF_SendKey(116);	// power key
				set_operation_mode(true);
		}
	}
	// LGE_CHANGE_E [[email protected]][07-03][end]
	/* LGE_CHANGE_E : Test Mode(Flight Mode) */
   #endif

}
Exemplo n.º 2
0
static void lm3530_wakeup(struct lm3530_driver_data *drvdata)
{
//	unsigned int lm3530_intensity;

	if (!drvdata || drvdata->state == NORMAL_STATE)
		return;

	// [email protected] 20111024 set lcd_bl_en & sub_pm_en high when wake up
	//#define LCD_BL_EN 124
    	gpio_tlmm_config(GPIO_CFG(124, 0, GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), GPIO_CFG_ENABLE);
    	gpio_set_value(124, 1); 
	//udelay(10);
	msleep(150);  /* [email protected] 2011-12-27  */
    lm3530_current_state = NORMAL_STATE;
	
	dprintk("operation mode is %s\n", (drvdata->mode == NORMAL_MODE) ? "normal_mode" : "alc_mode");

	if (drvdata->state == POWEROFF_STATE) {
		lm3530_poweron(drvdata);
		/* LGE_CHANGE
		 * Because the lm3530_go_opmode is called in the lm3530_poweron above, so I remove below function.
		 * If it is called two times when the previous state of AAT2862 is POWEROFF_STATE, it causes malfucction.
		 * 2010-07-31. [email protected]
		 */
		//lm3530_go_opmode(drvdata);
	} else if (drvdata->state == SLEEP_STATE) {
		if (drvdata->mode == NORMAL_MODE) {
				lm3530_set_table(drvdata, drvdata->cmds.normal);
				lm3530_write(drvdata->client, drvdata->reg_addrs.bl_m, drvdata->intensity);
			drvdata->state = NORMAL_STATE;
		} else if (drvdata->mode == ALC_MODE) {
			/* LGE_CHANGE
			 * Remove ALC mode
			 * 2010-07-26. [email protected]
			 */
			//lm3530_set_table(drvdata, drvdata->cmds.alc);
			//drvdata->state = NORMAL_STATE;
		}
	}

	if(LGF_TestMode_Is_SleepMode())
	{
		msleep(500);
	    LGF_SendKey(116);	// power key
	}
}