static ssize_t tethering_switch_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { int usbstatus; usbstatus = FSA9480_Get_USB_Status(); dmsg("usbstatus = 0x%x, currentusbstatus = 0x%x\n", usbstatus, currentusbstatus); if (strncmp(buf, "1", 1) == 0) { dmsg("tethering On\n"); g_tethering = 1; usb_switch_select(USBSTATUS_VTP); UsbIndicator(0); } else if (strncmp(buf, "0", 1) == 0) { dmsg("tethering Off\n"); g_tethering = 0; usb_switch_select(oldusbstatus); if(usbstatus) UsbIndicator(1); } return size; }
static ssize_t UsbMenuSel_switch_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { if (strncmp(buf, "KIES", 4) == 0) { UsbMenuSelStore(0); usb_switch_select(USBSTATUS_SAMSUNG_KIES); } if (strncmp(buf, "MTP", 3) == 0) { UsbMenuSelStore(1); usb_switch_select(USBSTATUS_MTPONLY); } if (strncmp(buf, "UMS", 3) == 0) { UsbMenuSelStore(2); usb_switch_select(USBSTATUS_UMS); } #if !defined(CONFIG_ARIES_NTT) // disable tethering xmoondash if (strncmp(buf, "VTP", 3) == 0) { UsbMenuSelStore(3); usb_switch_select(USBSTATUS_VTP); } #endif if (strncmp(buf, "ASKON", 5) == 0) { UsbMenuSelStore(4); usb_switch_select(USBSTATUS_ASKON); } return size; }
static ssize_t DMport_switch_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { #if 0 int fd; int i; char dm_buf[] = "DM port test sucess\n"; int old_fs = get_fs(); set_fs(KERNEL_DS); if (strncmp(buf, "DMport", 5) == 0 || strncmp(buf, "dmport", 5) == 0) { fd = sys_open("/dev/dm", O_RDWR, 0); if(fd < 0) { printk("Cannot open the file"); return fd; } for(i=0; i<5; i++) { sys_write(fd,dm_buf,sizeof(dm_buf)); mdelay(1000); } sys_close(fd); set_fs(old_fs); } if ((strncmp(buf, "logusb", 6) == 0)||(log_via_usb == log_usb_enable)) { log_via_usb = log_usb_active; printk("denis_test_prink_log_via_usb_1\n"); mdelay(1000); printk(KERN_INFO"%s: 21143 10baseT link beat good.\n", "denis_test"); set_fs(old_fs); } return size; #else if (strncmp(buf, "ENABLE", 6) == 0) { usb_switch_select(USBSTATUS_DM); } if (strncmp(buf, "DISABLE", 6) == 0) { usb_switch_select(USBSTATUS_SAMSUNG_KIES); } return size; #endif }
static ssize_t UsbMenuSel_switch_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { dmsg("buf=%s\n", buf); #ifdef _SUPPORT_SAMSUNG_AUTOINSTALLER_ if (strncmp(buf, "KIES_REAL", 9) == 0) { //UsbMenuSelStore(0); usb_switch_select(USBSTATUS_SAMSUNG_KIES_REAL); } else #endif if (strncmp(buf, "KIES", 4) == 0) { UsbMenuSelStore(0); usb_switch_select(USBSTATUS_SAMSUNG_KIES); } if (strncmp(buf, "MTP", 3) == 0) { UsbMenuSelStore(1); usb_switch_select(USBSTATUS_MTPONLY); } if (strncmp(buf, "UMS", 3) == 0) { UsbMenuSelStore(2); usb_switch_select(USBSTATUS_UMS); } #if !defined(CONFIG_TARGET_LOCALE_NTT) // disable tethering xmoondash if (strncmp(buf, "VTP", 3) == 0) { UsbMenuSelStore(3); usb_switch_select(USBSTATUS_VTP); } #endif if (strncmp(buf, "ASKON", 5) == 0) { UsbMenuSelStore(4); usb_switch_select(USBSTATUS_ASKON); } return size; }
static void connectivity_switching_init(struct work_struct *ignored) { int usb_sel, uart_sel, samsung_kies_sel, ums_sel, mtp_sel, vtp_sel, askon_sel; int lpm_mode_check = charging_mode_get(); switch_sel = 0; dmsg("\n"); if (sec_get_param_value) { sec_get_param_value(__SWITCH_SEL, &switch_sel); cancel_delayed_work(&switch_init_work); } else { schedule_delayed_work(&switch_init_work, msecs_to_jiffies(100)); return; } if(BOOTUP) { BOOTUP = 0; otg_phy_init(); //USB Power on after boot up. } usb_sel = switch_sel & (int)(USB_SEL_MASK); uart_sel = (switch_sel & (int)(UART_SEL_MASK)) >> 1; samsung_kies_sel = (switch_sel & (int)(USB_SAMSUNG_KIES_MASK)) >> 2; ums_sel = (switch_sel & (int)(USB_UMS_MASK)) >> 3; mtp_sel = (switch_sel & (int)(USB_MTP_MASK)) >> 4; #if !defined(CONFIG_TARGET_LOCALE_NTT) // disable tethering xmoondash vtp_sel = (switch_sel & (int)(USB_VTP_MASK)) >> 5; #endif askon_sel = (switch_sel & (int)(USB_ASKON_MASK)) >> 6; printk("\n[WJ] %s, %s, switch_sel=%d\n", __FILE__, __FUNCTION__, switch_sel); if( samsung_kies_sel ) currentusbstatus = USBSTATUS_SAMSUNG_KIES; else if(ums_sel) currentusbstatus = USBSTATUS_UMS; else if(mtp_sel) currentusbstatus = USBSTATUS_MTPONLY; else if(askon_sel) currentusbstatus = USBSTATUS_ASKON; if((switch_sel == 0x1) || (factoryresetstatus == 0xAE)) { PathSelStore(AP_USB_MODE); Ap_Cp_Switch_Config(AP_USB_MODE); usb_switching_value_update(SWITCH_PDA); PathSelStore(CP_UART_MODE); Ap_Cp_Switch_Config(CP_UART_MODE); uart_switching_value_update(SWITCH_MODEM); } else { if(usb_sel) { Ap_Cp_Switch_Config(AP_USB_MODE); usb_switching_value_update(SWITCH_PDA); } else { if(MicroJigUARTOffStatus) { Ap_Cp_Switch_Config(AP_USB_MODE); } else { Ap_Cp_Switch_Config(CP_USB_MODE); usb_switching_value_update(SWITCH_MODEM); } } if(uart_sel) { Ap_Cp_Switch_Config(AP_UART_MODE); uart_switching_value_update(SWITCH_PDA); } else { Ap_Cp_Switch_Config(CP_UART_MODE); uart_switching_value_update(SWITCH_MODEM); } } /*Turn off usb power when LPM mode*/ if(lpm_mode_check) otg_phy_off(); switching_value_update(); if((switch_sel == 1) || (factoryresetstatus == 0xAE)) { usb_switch_select(USBSTATUS_SAMSUNG_KIES); mtp_mode_on = 1; ap_usb_power_on(0); UsbMenuSelStore(0); } else { if(usb_sel) { if(samsung_kies_sel) { usb_switch_select(USBSTATUS_SAMSUNG_KIES); /*USB Power off till MTP Appl launching*/ #ifdef _SUPPORT_SAMSUNG_AUTOINSTALLER_ //mtp_mode_on = 1; //ap_usb_power_on(0); #else mtp_mode_on = 1; ap_usb_power_on(0); #endif } else if(mtp_sel) { usb_switch_select(USBSTATUS_MTPONLY); /*USB Power off till MTP Appl launching*/ mtp_mode_on = 1; ap_usb_power_on(0); } else if(ums_sel) { usb_switch_select(USBSTATUS_UMS); } #if !defined(CONFIG_TARGET_LOCALE_NTT) // disable tethering xmoondash else if(vtp_sel) { usb_switch_select(USBSTATUS_VTP); } #endif else if(askon_sel) { usb_switch_select(USBSTATUS_ASKON); } } } if(!FSA9480_Get_USB_Status()) { s3c_usb_cable(1); mdelay(5); s3c_usb_cable(0); } else { s3c_usb_cable(1); indicator_dev.state = 1; } dmsg("switch_sel : 0x%x\n", switch_sel); microusb_uart_status(1); connectivity_switching_init_state=1; }