/* usb cable call back function */ void max77803_muic_usb_cb(u8 usb_mode) { struct power_supply *psy; psy = power_supply_get_by_name("dwc-usb"); if (!psy) { pr_info("%s: couldn't get usb power supply\n", __func__); return; } pr_info("%s: MUIC attached: %d\n", __func__, usb_mode); #ifdef CONFIG_SEC_LOCALE_KOR if (is_usb_locked) { pr_info("%s: usb locked by mdm\n", __func__); return; } #endif if (usb_mode == USB_CABLE_DETACHED || usb_mode == USB_CABLE_ATTACHED) { if (usb_mode == USB_CABLE_ATTACHED) max77803_muic_set_safeout(AP_USB_MODE); #if defined(CONFIG_SEC_H_PROJECT) set_redriver_power(usb_mode); #endif pr_info("usb: dwc3 power supply set(%d)", usb_mode); power_supply_set_present(psy, usb_mode); if (usb_mode == USB_CABLE_DETACHED) { set_ncm_ready(0); #if defined(CONFIG_SEC_H_PROJECT) usb30en = 0; set_redriver_power(usb_mode); #endif } #ifdef CONFIG_USB_HOST_NOTIFY } else if (usb_mode == USB_OTGHOST_DETACHED || usb_mode == USB_OTGHOST_ATTACHED) { if (usb_mode == USB_OTGHOST_DETACHED) { pr_info("USB Host detached"); sec_otg_notify(HNOTIFY_ID_PULL); } else { pr_info("USB Host attached"); sec_otg_notify(HNOTIFY_ID); } } else if (usb_mode == USB_POWERED_HOST_DETACHED || usb_mode == USB_POWERED_HOST_ATTACHED) { if (usb_mode == USB_POWERED_HOST_DETACHED){ pr_info("USB Host HNOTIFY_SMARTDOCK_OFF"); sec_otg_notify(HNOTIFY_SMARTDOCK_OFF); }else{ pr_info("USB Host HNOTIFY_SMARTDOCK_ON"); sec_otg_notify(HNOTIFY_SMARTDOCK_ON); } #endif } }
static int exynos_set_peripheral(bool enable) { if (enable) { pr_info("%s usb attached\n", __func__); check_usb_vbus_state(1); } else { pr_info("%s usb detached\n", __func__); check_usb_vbus_state(0); set_ncm_ready(false); } return 0; }