void aat1271a_falsh_movie_control(int ctrl) { if (ctrl) { /* Falsh Mode Off */ gpio_set_value(GPIO_CAM_FLASH_EN, GPIO_LEVEL_LOW); /* Movie Mode Current Setting & On */ aat1271a_flash_write(MOVIE_MODE_CURRENT, MOVIE_MODE_CURRENT_63); s3c_bat_set_compensation_for_drv(1,OFFSET_CAM_FLASH); } else { /* Falsh Mode Off */ gpio_set_value(GPIO_CAM_FLASH_EN, GPIO_LEVEL_LOW); /* Movie Mode Off */ gpio_set_value(GPIO_CAM_FLASH_SET, GPIO_LEVEL_LOW); s3c_bat_set_compensation_for_drv(0,OFFSET_CAM_FLASH); } }
static void set_vibetonz(int state) { if(!state) { gpio_set_value(GPIO_HAPTIC_EN, GPIO_LEVEL_LOW); s5p6442_timer_setup(0, 10,0,0); #ifdef __BATTERY_COMPENSATION__ s3c_bat_set_compensation_for_drv(0, OFFSET_VIBRATOR_ON); #endif /* __BATTERY_COMPENSATION__ */ } else { s5p6442_timer_setup(0, 10 ,vibrator_period,vibrator_on_period); gpio_set_value(GPIO_HAPTIC_EN, GPIO_LEVEL_HIGH); #ifdef __BATTERY_COMPENSATION__ s3c_bat_set_compensation_for_drv(1, OFFSET_VIBRATOR_ON); #endif /* __BATTERY_COMPENSATION__ */ } // printk("[VIBETONZ] vibrator_period = %lu, vibrator_on_period = %lu \n",vibrator_period,vibrator_on_period); }
static int set_vibetonz(int timeout) { int val = 0; if(!timeout) { /* 2009.09.13(sunday) drkim - adjust vibratonz strength */ s3c6410_timer_setup(1,10,VIBRATOR_ON_STRONG_PERIOD, VIBRATOR_OFF_STRONG_PERIOD); gpio_set_value(GPIO_VIB_EN, GPIO_LEVEL_LOW); #if defined(CONFIG_MACH_SPICA) || defined(CONFIG_MACH_INSTINCTQ) s3c_bat_set_compensation_for_drv(0,OFFSET_VIBRATOR_ON); #endif } else { /* 2009.09.13(sunday) drkim - adjust vibratonz strength */ if(timeout == -1) { //printk("[VIBETONZ] HI TEST MODE\n"); s3c6410_timer_setup(1,10,VIBRATOR_ON_STRONG_PERIOD, VIBRATOR_OFF_STRONG_PERIOD); } else { if (timeout >= VIBRATOR_STRENGTH) { s3c6410_timer_setup(1,10,VIBRATOR_ON_WEEK_PERIOD, VIBRATOR_OFF_WEEK_PERIOD); timeout -= 0x40000000; //printk("[VIBETONZ] LOW, timeout= %x\n", timeout); } else { s3c6410_timer_setup(1,10,VIBRATOR_ON_STRONG_PERIOD,VIBRATOR_OFF_STRONG_PERIOD); } } gpio_set_value(GPIO_VIB_EN, GPIO_LEVEL_HIGH); #if defined(CONFIG_MACH_SPICA) || defined(CONFIG_MACH_INSTINCTQ) s3c_bat_set_compensation_for_drv(1,OFFSET_VIBRATOR_ON); #endif } vibrator_value = timeout; // printk("[VIBETONZ] END, timeout = %x\n", vibrator_value); return timeout; }
void aat1271a_falsh_camera_control(int ctrl) { if (ctrl) { /* Movie Mode Off */ gpio_set_value(GPIO_CAM_FLASH_SET, GPIO_LEVEL_LOW); gpio_set_value(GPIO_CAM_FLASH_EN, GPIO_LEVEL_LOW); udelay(10); /* Falsh Mode On */ gpio_set_value(GPIO_CAM_FLASH_EN, GPIO_LEVEL_HIGH); s3c_bat_set_compensation_for_drv(1,OFFSET_CAM_FLASH); } else { /* Movie Mode Off */ gpio_set_value(GPIO_CAM_FLASH_SET, GPIO_LEVEL_LOW); /* Falsh Mode Off */ gpio_set_value(GPIO_CAM_FLASH_EN, GPIO_LEVEL_LOW); s3c_bat_set_compensation_for_drv(0,OFFSET_CAM_FLASH); } }
static int set_vibetonz(int timeout) { if(!timeout) { printk("[VIBETONZ] reserved VIBRATOR_DISABLE\n"); gpio_set_value(GPIO_VIB_EN, GPIO_LEVEL_LOW); gpio_direction_input(GPIO_VIB_EN); s3c_gpio_setpull(GPIO_VIB_EN,S3C_GPIO_PULL_DOWN); #if defined (CONFIG_MACH_MAX) s3c6410_pwm_stop(1); #endif #if defined(CONFIG_MACH_SPICA) || defined(CONFIG_MACH_INSTINCTQ) || defined(CONFIG_MACH_INFOBOWLQ) s3c_bat_set_compensation_for_drv(0,OFFSET_VIBRATOR_ON); #endif } else { #ifdef CONFIG_MACH_VINSQ s3c6410_timer_setup(1,10,290,3); #else s3c6410_timer_setup(1,10,300,3); #endif printk("[VIBETONZ] reserved VIBRATOR_ENABLE\n"); gpio_direction_output(GPIO_VIB_EN, GPIO_LEVEL_LOW); mdelay(1); gpio_set_value(GPIO_VIB_EN, GPIO_LEVEL_HIGH); #if defined(CONFIG_MACH_SPICA) || defined(CONFIG_MACH_INSTINCTQ) || defined(CONFIG_MACH_INFOBOWLQ) s3c_bat_set_compensation_for_drv(1,OFFSET_VIBRATOR_ON); #endif } vibrator_value = timeout; return 0; }