[RAMEN9610-12442][COMMON] muic: TA noti for sleep test
authorKim Taejeong <tj.kim@samsung.com>
Thu, 21 Feb 2019 02:15:42 +0000 (11:15 +0900)
committerCosmin Tanislav <demonsingur@gmail.com>
Mon, 22 Apr 2024 17:23:18 +0000 (20:23 +0300)
Change-Id: I09b9098ebdcdd71753bb24814d464ca4948ef032
Signed-off-by: Kim Taejeong <tj.kim@samsung.com>
drivers/muic/muic_core.c
drivers/usb/notify/usb_notifier.c

index 6cea5e528f915ec756bf6368b51769c5d0e688aa..58c778524d77107c31a920154da5b3381293d865 100644 (file)
@@ -703,6 +703,7 @@ static int muic_core_handle_attached_prev_dev(struct muic_platform_data *muic_pd
        muic_attached_dev_t new_dev, bool *noti)
 {
        int ret = 0;
+       bool detach_noti = *noti;
 
        pr_info("%s attached_dev: %d, new_dev: %d\n",
                __func__, muic_pdata->attached_dev, new_dev);
@@ -773,18 +774,21 @@ static int muic_core_handle_attached_prev_dev(struct muic_platform_data *muic_pd
                                ret = muic_core_detach_deskdock(muic_pdata);
                        else {
                                *noti = false;
+                               detach_noti = false;
                                ret = muic_core_detach_jig_uart_boot_on(muic_pdata);
                        }
                }
                break;
        case ATTACHED_DEV_NONE_MUIC:
+               detach_noti = false;
+               break;
        default:
                break;
        }
 
-       if (*noti) {
+       if (detach_noti) {
                if (!muic_pdata->suspended) {
-                       MUIC_SEND_NOTI_DETACH(muic_pdata->attached_dev);
+                       MUIC_SEND_NOTI_DETACH_ALL(muic_pdata->attached_dev);
                } else
                        muic_pdata->need_to_noti = true;
        }
@@ -820,7 +824,7 @@ static int muic_core_handle_attached_new_dev(struct muic_platform_data *muic_pda
 #if defined(CONFIG_HV_MUIC_S2MU004_AFC) || defined(CONFIG_MUIC_HV)
                MUIC_PDATA_FUNC(muic_if->check_afc_ready, muic_pdata->drv_data, &ret);
 #endif /* CONFIG_HV_MUIC_S2MU004_AFC */
-               MUIC_PDATA_FUNC(muic_if->set_com_to_open_with_vbus, muic_pdata->drv_data, &ret);
+               MUIC_PDATA_FUNC(muic_if->set_com_to_open, muic_pdata->drv_data, &ret);
                break;
        case ATTACHED_DEV_JIG_UART_OFF_VB_OTG_MUIC:
        case ATTACHED_DEV_JIG_UART_OFF_VB_FG_MUIC:
@@ -937,7 +941,7 @@ int muic_core_handle_attach(struct muic_platform_data *muic_pdata,
 
        if (noti) {
                if (!muic_pdata->suspended) {
-                       MUIC_SEND_NOTI_ATTACH(new_dev);
+                       MUIC_SEND_NOTI_ATTACH_ALL(new_dev);
                } else
                        muic_pdata->need_to_noti = true;
        }
@@ -951,6 +955,10 @@ int muic_core_handle_detach(struct muic_platform_data *muic_pdata)
        int ret = 0;
        bool noti = true;
        struct muic_interface_t *muic_if = (struct muic_interface_t *)muic_pdata->muic_if;
+       muic_attached_dev_t prev_dev = muic_pdata->attached_dev;
+
+       pr_info("%s attached_dev: %d\n",
+               __func__, muic_pdata->attached_dev);
 
        MUIC_PDATA_FUNC(muic_if->set_com_to_open, muic_pdata->drv_data, &ret);
 #if defined(CONFIG_MUIC_SUPPORT_TYPEB)
@@ -958,7 +966,6 @@ int muic_core_handle_detach(struct muic_platform_data *muic_pdata)
        MUIC_PDATA_FUNC(muic_if->set_jig_ctrl_on, muic_pdata->drv_data, &ret);
 #endif
 
-
        switch (muic_pdata->attached_dev) {
        case ATTACHED_DEV_JIG_USB_OFF_MUIC:
        case ATTACHED_DEV_JIG_USB_ON_MUIC:
@@ -1038,7 +1045,7 @@ int muic_core_handle_detach(struct muic_platform_data *muic_pdata)
 
        if (noti) {
                if (!muic_pdata->suspended) {
-                       MUIC_SEND_NOTI_DETACH(muic_pdata->attached_dev);
+                       MUIC_SEND_NOTI_DETACH_ALL(prev_dev);
                } else
                        muic_pdata->need_to_noti = true;
        }
index f67051328dcb084fc88816186991aa6e4eb5377f..cbcff2725657cabf7bb5e48e9b6a05217c967849 100644 (file)
@@ -425,6 +425,9 @@ static int muic_usb_handle_notification(struct notifier_block *nb,
        switch (attached_dev) {
 #if defined(CONFIG_IFCONN_NOTIFIER)
        case ATTACHED_DEV_TA_MUIC:
+#if defined(CONFIG_HV_MUIC_TURBO_CHARGER)
+       case ATTACHED_DEV_TURBO_CHARGER:
+#endif
                if (action == IFCONN_NOTIFY_ID_DETACH)
                        send_otg_notify(o_notify, NOTIFY_EVENT_CHARGER, 0);
                else if (action == IFCONN_NOTIFY_ID_ATTACH)