usb: do not set usb gadget on emulator 59/95659/7
authortaeyoung <ty317.kim@samsung.com>
Sat, 12 Nov 2016 09:49:43 +0000 (18:49 +0900)
committertaeyoung <ty317.kim@samsung.com>
Sat, 12 Nov 2016 10:01:28 +0000 (19:01 +0900)
Emulator kernel does not have the usb module. Thus there is
no need to enable gadgets. Just state updating is required

Change-Id: Ib547932752182caeaeae194b07a4bc3171c56e9f
Signed-off-by: taeyoung <ty317.kim@samsung.com>
src/usb/usb.c

index 41e27ab..099819f 100644 (file)
@@ -245,13 +245,15 @@ static int usb_enable(unsigned int mode)
        if (usb_state_get_current_mode() != USB_FUNCTION_NONE)
                usb_state_update_state(USB_CONNECTED, USB_FUNCTION_NONE);
 
-       if (mode != selected)
-               usb_change_gadget(mode);
+       if (!is_emulator()) {
+               if (mode != selected)
+                       usb_change_gadget(mode);
 
-       ret = usb_config_enable();
-       if (ret < 0) {
-               _E("Failed to enable usb config (%d)", ret);
-               return ret;
+               ret = usb_config_enable();
+               if (ret < 0) {
+                       _E("Failed to enable usb config (%d)", ret);
+                       return ret;
+               }
        }
 
        usb_state_update_state(USB_CONNECTED, mode);
@@ -272,9 +274,11 @@ static int usb_disable(void)
                        usb_state_update_state(USB_DISCONNECTED, USB_FUNCTION_NONE);
        }
 
-       ret = usb_config_disable();
-       if (ret != 0)
-               _E("Failed to disable usb config (%d)", ret);
+       if (!is_emulator()) {
+               ret = usb_config_disable();
+               if (ret != 0)
+                       _E("Failed to disable usb config (%d)", ret);
+       }
 
        pm_unlock_internal(INTERNAL_LOCK_USB,
                        LCD_OFF, STAY_CUR_STATE);
@@ -378,17 +382,19 @@ static void usb_init(void *data)
 {
        int ret;
 
-       ret = usb_probe();
-       if (ret < 0) {
-               _E("USB client cannot be used (%d)", ret);
-               return;
-       }
-
        usb_state_retrieve_selected_mode();
-       
-       ret = usb_config_init();
-       if (ret < 0)
-               _E("Failed to initialize usb configuation");
+
+       if (!is_emulator()) {
+               ret = usb_probe();
+               if (ret < 0) {
+                       _E("USB client cannot be used (%d)", ret);
+                       return;
+               }
+
+               ret = usb_config_init();
+               if (ret < 0)
+                       _E("Failed to initialize usb configuation");
+       }
 
        ret = usb_dbus_init();
        if (ret < 0)
@@ -405,8 +411,11 @@ static void usb_exit(void *data)
 {
        remove_usb_tethering_handler();
        usb_state_update_state(USB_DISCONNECTED, USB_FUNCTION_NONE);
-       usb_config_deinit();
-       usb_release();
+
+       if (!is_emulator()) {
+               usb_config_deinit();
+               usb_release();
+       }
 }
 
 struct extcon_ops extcon_usb_ops = {