bool max77693_muic_is_mhl_attached(void) { const int err = -1; int val; int ret; #ifdef CONFIG_SAMSUNG_USE_11PIN_CONNECTOR val = max77693_muic_get_status1_adc1k_value(); pr_info("%s(1): %d\n", __func__, val); return val; #else ret = gpio_request(GPIO_MHL_SEL, "MHL_SEL"); if (ret) { pr_err("fail to request gpio %s\n", "GPIO_MHL_SEL"); return err; } val = gpio_get_value(GPIO_MHL_SEL); pr_info("%s(2): %d\n", __func__, val); gpio_free(GPIO_MHL_SEL); return !!val; #endif }
/*extern void MHL_On(bool on);*/ void max77693_muic_mhl_cb(int attached) { pr_info("MUIC attached:%d\n", attached); if (attached == MAX77693_MUIC_ATTACHED) { /*MHL_On(1);*/ /* GPIO_LEVEL_HIGH */ pr_info("MHL Attached !!\n"); #ifdef CONFIG_SAMSUNG_MHL #ifdef CONFIG_MHL_SII8246_VE pr_info("[MHL] max77693_muic_mhl_cb (): system_rev = %d \n", system_rev ); if(system_rev > 8) { sii8246_wake_lock(); sii8246_mhl_onoff_ex(1); }else #endif { #ifdef CONFIG_MACH_MIDAS sii9234_wake_lock(); #endif #ifdef CONFIG_MHL_SII8246_VE sii9234_mhl_onoff_ex(1); #else mhl_onoff_ex(1); #endif #endif } } else { /*MHL_On(0);*/ /* GPIO_LEVEL_LOW */ pr_info("MHL Detached !!\n"); #ifdef CONFIG_SAMSUNG_MHL #ifdef CONFIG_MHL_SII8246_VE if(system_rev > 8) { sii8246_mhl_onoff_ex(false); sii8246_wake_unlock(); }else { sii9234_mhl_onoff_ex(false); #else { mhl_onoff_ex(false); #endif #ifdef CONFIG_MACH_MIDAS sii9234_wake_unlock(); #endif } #endif } } bool max77693_muic_is_mhl_attached(void) { int val; #ifdef CONFIG_SAMSUNG_USE_11PIN_CONNECTOR val = max77693_muic_get_status1_adc1k_value(); pr_info("%s(1): %d\n", __func__, val); return val; #else const int err = -1; int ret; ret = gpio_request(GPIO_MHL_SEL, "MHL_SEL"); if (ret) { pr_err("fail to request gpio %s\n", "GPIO_MHL_SEL"); return err; } val = gpio_get_value(GPIO_MHL_SEL); pr_info("%s(2): %d\n", __func__, val); gpio_free(GPIO_MHL_SEL); return !!val; #endif }