HSIC: Add support for product id 908A
Product Id 0x908A includes DIAG, SER3(System monitor), SER4(EFS sync),
DUN, CSVT, NET2(Muxed Embedded RmNet) and IPCR (IPC router) device
interfaces.
Change-Id: I1eba520339c3aba40ff39eea76f3f8684b6ce1ca
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
diff --git a/arch/arm/mach-msm/hsic_sysmon.c b/arch/arm/mach-msm/hsic_sysmon.c
index 79fb1a3..802a4a7 100644
--- a/arch/arm/mach-msm/hsic_sysmon.c
+++ b/arch/arm/mach-msm/hsic_sysmon.c
@@ -408,6 +408,7 @@
{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x904C, 1), .driver_info = 0, },
{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x9075, 1), .driver_info = 0, },
{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x9079, 1), .driver_info = 1, },
+ { USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x908A, 1), .driver_info = 0, },
{} /* terminating entry */
};
MODULE_DEVICE_TABLE(usb, hsic_sysmon_ids);
diff --git a/drivers/net/usb/rmnet_usb_data.c b/drivers/net/usb/rmnet_usb_data.c
index 945d200..75a34fa 100644
--- a/drivers/net/usb/rmnet_usb_data.c
+++ b/drivers/net/usb/rmnet_usb_data.c
@@ -878,6 +878,9 @@
{ USB_DEVICE_INTERFACE_NUMBER(0x05c6, 0x9079, 8),
.driver_info = (unsigned long)&rmnet_usb_info,
},
+ { USB_DEVICE_INTERFACE_NUMBER(0x05c6, 0x908A, 6), /*mux over hsic mdm*/
+ .driver_info = (unsigned long)&rmnet_info,
+ },
{ }, /* Terminating entry */
};
diff --git a/drivers/usb/misc/diag_bridge.c b/drivers/usb/misc/diag_bridge.c
index 1a2ad03..2ce429f 100644
--- a/drivers/usb/misc/diag_bridge.c
+++ b/drivers/usb/misc/diag_bridge.c
@@ -563,6 +563,8 @@
.driver_info = VALID_INTERFACE_NUM | DEV_ID(0), },
{ USB_DEVICE(0x5c6, 0x9079),
.driver_info = VALID_INTERFACE_NUM | DEV_ID(1), },
+ { USB_DEVICE(0x5c6, 0x908A),
+ .driver_info = VALID_INTERFACE_NUM | DEV_ID(0), },
{} /* terminating entry */
};
diff --git a/drivers/usb/misc/ks_bridge.c b/drivers/usb/misc/ks_bridge.c
index 538224c..f1ec63f 100644
--- a/drivers/usb/misc/ks_bridge.c
+++ b/drivers/usb/misc/ks_bridge.c
@@ -441,6 +441,8 @@
.driver_info = (unsigned long)&ksb_efs_hsic_dev, },
{ USB_DEVICE(0x5c6, 0x9079),
.driver_info = (unsigned long)&ksb_efs_usb_dev, },
+ { USB_DEVICE(0x5c6, 0x908A),
+ .driver_info = (unsigned long)&ksb_efs_hsic_dev, },
{} /* terminating entry */
};
@@ -635,6 +637,7 @@
case 0x9048:
case 0x904C:
case 0x9075:
+ case 0x908A:
if (ifc_num != 2)
return -ENODEV;
ksb = __ksb[EFS_HSIC_BRIDGE_INDEX];
diff --git a/drivers/usb/misc/mdm_data_bridge.c b/drivers/usb/misc/mdm_data_bridge.c
index eea217a..d351e80 100644
--- a/drivers/usb/misc/mdm_data_bridge.c
+++ b/drivers/usb/misc/mdm_data_bridge.c
@@ -1084,6 +1084,12 @@
{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x9079, 4),
.driver_info = (unsigned long)rmnet_hsusb_bridge_names,
},
+ { USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x908A, 3),
+ .driver_info = (unsigned long)serial_hsic_bridge_names,
+ },
+ { USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x908A, 5),
+ .driver_info = (unsigned long)rmnet_hsic_bridge_names,
+ },
{ } /* Terminating entry */
};
diff --git a/drivers/usb/serial/csvt.c b/drivers/usb/serial/csvt.c
index 675b3d3..d80d5a5 100644
--- a/drivers/usb/serial/csvt.c
+++ b/drivers/usb/serial/csvt.c
@@ -53,6 +53,7 @@
static const struct usb_device_id id_table[] = {
{ USB_DEVICE_AND_INTERFACE_INFO(0x05c6 , 0x904c, 0xff, 0xfe, 0xff)},
{ USB_DEVICE_AND_INTERFACE_INFO(0x05c6 , 0x9075, 0xff, 0xfe, 0xff)},
+ { USB_DEVICE_AND_INTERFACE_INFO(0x05c6 , 0x908A, 0xff, 0xfe, 0xff)},
{}, /* terminating entry */
};
MODULE_DEVICE_TABLE(usb, id_table);