static void button_pressed(void) { H2W_DBG(" "); atomic_set(&hi->btn_state, 1); input_report_key(hi->input, KEY_MEDIA, 1); input_sync(hi->input); #if 0 //def CONFIG_LGE_DIAGTEST if(if_condition_is_on_key_buffering == 1) lgf_factor_key_test_rsp((u8)KEY_MEDIA); #endif }
static void report_hs_key(uint32_t key_code, uint32_t key_parm) { int key, temp_key_code; if (key_code == HS_REL_K) key = hs_find_key(key_parm); else key = hs_find_key(key_code); temp_key_code = key_code; if (key_parm == HS_REL_K) key_code = key_parm; if (key_code != HS_REL_K) testmode_input_scancode(key); switch (key) { #ifndef CONFIG_MACH_MSM7X27_ALOHAV case KEY_POWER: case KEY_END: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); break; case KEY_MEDIA: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); break; case KEY_CONNECT: if (deskdock_detect_callback) deskdock_detect_callback((key_code != HS_REL_K)); break; #else case KEY_POWER: case KEY_END: case KEY_MEDIA: case KEY_VOLUMEUP: case KEY_VOLUMEDOWN: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); #if defined(CONFIG_LGE_DIAGTEST) if(if_condition_is_on_key_buffering == HS_TRUE && key_code == 0) lgf_factor_key_test_rsp((uint8_t)key); #endif break; #endif case SW_HEADPHONE_INSERT: report_headset_switch(hs->ipdev, key, (key_code != HS_REL_K)); #if defined(CONFIG_LGE_DIAGTEST) if(if_condition_is_on_key_buffering == HS_TRUE && key_code == 0) lgf_factor_key_test_rsp((uint8_t)key); #endif break; #if 0 case KEY_HEADSETHOOK: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); break; #endif case -1: printk(KERN_ERR "%s: No mapping for remote handset event %d\n", __func__, temp_key_code); return; } input_sync(hs->ipdev); printk(" %s : HS_KEY event : %d \n", __func__, key_code); }
static void report_hs_key(uint32_t key_code, uint32_t key_parm) { int key, temp_key_code; if (key_code == HS_REL_K) key = hs_find_key(key_parm); else key = hs_find_key(key_code); temp_key_code = key_code; if (key_parm == HS_REL_K) key_code = key_parm; switch (key) { #ifndef CONFIG_MACH_MSM7X27_ALOHAV case KEY_POWER: case KEY_END: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); break; case KEY_MEDIA: if (gpio_get_value(GPIO_EAR_SENSE_BIAS) == 1) { /* LGE_CHANGE * 2010-03-09, [email protected] To protect from wrong hook key operation */ input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); } break; case KEY_CONNECT: if (deskdock_detect_callback) deskdock_detect_callback((key_code != HS_REL_K)); break; #else /*CONFIG_MACH_MSM7X27_ALOHAG*/ case KEY_POWER: case KEY_END: case KEY_MEDIA: case KEY_VOLUMEUP: case KEY_VOLUMEDOWN: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); #if defined(CONFIG_LGE_DIAGTEST) /* LGE_CHANGES * [[email protected]] 2010-01-23, * [VS740] for key test */ if(if_condition_is_on_key_buffering == HS_TRUE && key_code == 0/*press*/) lgf_factor_key_test_rsp((uint8_t)key); #endif break; #endif /*CONFIG_MACH_MSM7X27_ALOHAG */ case SW_HEADPHONE_INSERT: #ifndef CONFIG_LGE_HEADSET report_headset_switch(hs->ipdev, key, (key_code != HS_REL_K)); #endif #if defined(CONFIG_LGE_DIAGTEST) /* LGE_CHANGES * [[email protected]] 2010-01-23 * [VS740] for key test */ if(if_condition_is_on_key_buffering == HS_TRUE && key_code == 0/*press*/) lgf_factor_key_test_rsp((uint8_t)key); #endif break; case -1: printk(KERN_ERR "%s: No mapping for remote handset event %d\n", __func__, temp_key_code); return; } input_sync(hs->ipdev); }
/* * tuple format: (key_code, key_param) * * old-architecture: * key-press = (key_code, 0) * key-release = (0xff, key_code) * * new-architecutre: * key-press = (key_code, 0) * key-release = (key_code, 0xff) */ static void report_hs_key(uint32_t key_code, uint32_t key_parm) { int key, temp_key_code; if (key_code == HS_REL_K) key = hs_find_key(key_parm); else key = hs_find_key(key_code); temp_key_code = key_code; if (key_parm == HS_REL_K) key_code = key_parm; switch (key) { #ifndef CONFIG_MACH_MSM7X27_ALOHAV case KEY_POWER: case KEY_END: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); #if defined (CONFIG_LGE_DIAGTEST) mtc_send_key_log_packet((unsigned long)key, !(key_code != HS_REL_K)); ats_eta_mtc_key_logging((int)key, (key_code != HS_REL_K)); #endif break; case KEY_MEDIA: if (gpio_get_value(GPIO_EAR_SENSE_BIAS) == 1) { input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); } break; case KEY_CONNECT: if (deskdock_detect_callback) deskdock_detect_callback((key_code != HS_REL_K)); break; #else /*CONFIG_MACH_MSM7X27_ALOHAG*/ case KEY_POWER: case KEY_END: case KEY_MEDIA: case KEY_VOLUMEUP: case KEY_VOLUMEDOWN: input_report_key(hs->ipdev, key, (key_code != HS_REL_K)); #if defined(CONFIG_LGE_DIAGTEST) if(if_condition_is_on_key_buffering == HS_TRUE && key_code == 0/*press*/) lgf_factor_key_test_rsp((uint8_t)key); #endif break; #endif /*CONFIG_MACH_MSM7X27_ALOHAG */ case SW_HEADPHONE_INSERT: #ifndef CONFIG_LGE_HEADSET report_headset_switch(hs->ipdev, key, (key_code != HS_REL_K)); #endif #if defined(CONFIG_LGE_DIAGTEST) if(if_condition_is_on_key_buffering == HS_TRUE && key_code == 0/*press*/) lgf_factor_key_test_rsp((uint8_t)key); #endif break; case -1: printk(KERN_ERR "%s: No mapping for remote handset event %d\n", __func__, temp_key_code); return; } input_sync(hs->ipdev); }