Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 46b520b3 authored by Guang Jian Zeng's avatar Guang Jian Zeng
Browse files

usb:misc: Add support for HSIC PID 0x90A4



This is an MDM device composition consisting of the following interfaces:
1. DIAG (Interrupt IN)
2. DCI (Interrupt IN)
3. System Monitor
4. EFS Sync (Interrupt IN)
5. QDSS Trace (Bulk IN only)
6. DUN (Interrupt IN)
7. CSVT
8. Tethered RmNet
9. Embedded RmNet
10. IPC Router

Change-Id: Iaa61f2e9580f29fe69f95771489d0de2cae2d02e
Signed-off-by: default avatarGuang Jian Zeng <gzeng@codeaurora.org>
parent 4db175e5
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -411,6 +411,7 @@ static const struct usb_device_id hsic_sysmon_ids[] = {
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909C, 1), .driver_info = 0, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909C, 1), .driver_info = 0, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909D, 1), .driver_info = 0, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909D, 1), .driver_info = 0, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909E, 2), .driver_info = 0, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909E, 2), .driver_info = 0, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A4, 2), .driver_info = 0, },


	{} /* terminating entry */
	{} /* terminating entry */
};
};
+3 −0
Original line number Original line Diff line number Diff line
@@ -727,6 +727,9 @@ static const struct usb_device_id vidpids[] = {
	{ USB_DEVICE_INTERFACE_NUMBER(0x05c6, 0x90A0, 6), /*mux over hsic mdm*/
	{ USB_DEVICE_INTERFACE_NUMBER(0x05c6, 0x90A0, 6), /*mux over hsic mdm*/
	.driver_info = (unsigned long)&rmnet_info,
	.driver_info = (unsigned long)&rmnet_info,
	},
	},
	{ USB_DEVICE_INTERFACE_NUMBER(0x05c6, 0x90A4, 8), /*mux over hsic mdm*/
	.driver_info = (unsigned long)&rmnet_info,
	},


	{ }, /* Terminating entry */
	{ }, /* Terminating entry */
};
};
+5 −0
Original line number Original line Diff line number Diff line
@@ -605,6 +605,11 @@ static const struct usb_device_id diag_bridge_ids[] = {
	.driver_info =  DEV_ID(1), },
	.driver_info =  DEV_ID(1), },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A0, 0),
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A0, 0),
	.driver_info =  DEV_ID(0), },
	.driver_info =  DEV_ID(0), },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A4, 0),
	.driver_info =	DEV_ID(0), },
	/* 909E, ifc#1 refers to diag client interface */
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A4, 1),
	.driver_info =	DEV_ID(1), },


	{} /* terminating entry */
	{} /* terminating entry */
};
};
+1 −0
Original line number Original line Diff line number Diff line
@@ -681,6 +681,7 @@ static const struct usb_device_id ipc_bridge_ids[] = {
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x908E, 9) },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x908E, 9) },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909D, 5) },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909D, 5) },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909E, 7) },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x909E, 7) },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A4, 9) },


	{} /* terminating entry */
	{} /* terminating entry */
};
};
+3 −0
Original line number Original line Diff line number Diff line
@@ -451,6 +451,8 @@ static const struct usb_device_id ksb_usb_ids[] = {
	.driver_info = (unsigned long)&ksb_efs_hsic_dev, },
	.driver_info = (unsigned long)&ksb_efs_hsic_dev, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A0, 2),
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A0, 2),
	.driver_info = (unsigned long)&ksb_efs_hsic_dev, },
	.driver_info = (unsigned long)&ksb_efs_hsic_dev, },
	{ USB_DEVICE_INTERFACE_NUMBER(0x5c6, 0x90A4, 3),
	.driver_info = (unsigned long)&ksb_efs_hsic_dev, },


	{} /* terminating entry */
	{} /* terminating entry */
};
};
@@ -662,6 +664,7 @@ ksb_usb_probe(struct usb_interface *ifc, const struct usb_device_id *id)
	case 0x909C:
	case 0x909C:
	case 0x909D:
	case 0x909D:
	case 0x909E:
	case 0x909E:
	case 0x90A4:
		ksb = __ksb[EFS_HSIC_BRIDGE_INDEX];
		ksb = __ksb[EFS_HSIC_BRIDGE_INDEX];
		break;
		break;
	case 0x9079:
	case 0x9079:
Loading