diff mbox series

[1/2] USB: serial: option: add Lonsung U8300/U9300 product Update the USB serial option driver to support Longsung U8300/U9300.

Message ID 20240402073451.1751984-1-coiaprant@gmail.com (mailing list archive)
State New
Headers show
Series [1/2] USB: serial: option: add Lonsung U8300/U9300 product Update the USB serial option driver to support Longsung U8300/U9300. | expand

Commit Message

Coia Prant April 2, 2024, 7:34 a.m. UTC
ID 1c9e:9b05 OMEGA TECHNOLOGY (U8300)
ID 1c9e:9b3c OMEGA TECHNOLOGY (U9300)

U8300
 /: Bus
    |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=option, 480M (Debug)
        ID 1c9e:9b05 OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 1, Class=Vendor Specific Class, Driver=option, 480M (Modem / AT)
        ID 1c9e:9b05 OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=option, 480M (AT)
        ID 1c9e:9b05 OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 3, Class=Vendor Specific Class, Driver=option, 480M (AT / Pipe / PPP)
        ID 1c9e:9b05 OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 4, Class=Vendor Specific Class, Driver=qmi_wwan, 480M (NDIS / GobiNet / QMI WWAN)
        ID 1c9e:9b05 OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 5, Class=Vendor Specific Class, Driver=, 480M (ADB)
        ID 1c9e:9b05 OMEGA TECHNOLOGY

U9300
 /: Bus
    |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=, 480M (ADB)
        ID 1c9e:9b3c OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 1, Class=Vendor Specific Class, Driver=option, 480M (Modem / AT)
        ID 1c9e:9b3c OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=option, 480M (AT)
        ID 1c9e:9b3c OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 3, Class=Vendor Specific Class, Driver=option, 480M (AT / Pipe / PPP)
        ID 1c9e:9b3c OMEGA TECHNOLOGY
    |__ Port 1: Dev 3, If 4, Class=Vendor Specific Class, Driver=qmi_wwan, 480M (NDIS / GobiNet / QMI WWAN)
        ID 1c9e:9b3c OMEGA TECHNOLOGY

Tested successfully using Modem Manager on U9300.
Tested successfully AT commands using If=1, If=2 and If=3 on U9300.

Signed-off-by: Coia Prant <coiaprant@gmail.com>
Cc: stable@vger.kernel.org
---
 drivers/usb/serial/option.c | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Lars Melin April 2, 2024, 8:09 a.m. UTC | #1
On 2024-04-02 14:34, Coia Prant wrote:
> ID 1c9e:9b05 OMEGA TECHNOLOGY (U8300)
> ID 1c9e:9b3c OMEGA TECHNOLOGY (U9300)
> 
> U8300
>   /: Bus
>      |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=option, 480M (Debug)
>          ID 1c9e:9b05 OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 1, Class=Vendor Specific Class, Driver=option, 480M (Modem / AT)
>          ID 1c9e:9b05 OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=option, 480M (AT)
>          ID 1c9e:9b05 OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 3, Class=Vendor Specific Class, Driver=option, 480M (AT / Pipe / PPP)
>          ID 1c9e:9b05 OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 4, Class=Vendor Specific Class, Driver=qmi_wwan, 480M (NDIS / GobiNet / QMI WWAN)
>          ID 1c9e:9b05 OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 5, Class=Vendor Specific Class, Driver=, 480M (ADB)
>          ID 1c9e:9b05 OMEGA TECHNOLOGY
> 
> U9300
>   /: Bus
>      |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=, 480M (ADB)
>          ID 1c9e:9b3c OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 1, Class=Vendor Specific Class, Driver=option, 480M (Modem / AT)
>          ID 1c9e:9b3c OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=option, 480M (AT)
>          ID 1c9e:9b3c OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 3, Class=Vendor Specific Class, Driver=option, 480M (AT / Pipe / PPP)
>          ID 1c9e:9b3c OMEGA TECHNOLOGY
>      |__ Port 1: Dev 3, If 4, Class=Vendor Specific Class, Driver=qmi_wwan, 480M (NDIS / GobiNet / QMI WWAN)
>          ID 1c9e:9b3c OMEGA TECHNOLOGY
> 
> Tested successfully using Modem Manager on U9300.
> Tested successfully AT commands using If=1, If=2 and If=3 on U9300.
> 
> Signed-off-by: Coia Prant <coiaprant@gmail.com>
> Cc: stable@vger.kernel.org
> ---
>   drivers/usb/serial/option.c | 8 ++++++++
>   1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
> index 55a65d941ccb..27a116901459 100644
> --- a/drivers/usb/serial/option.c
> +++ b/drivers/usb/serial/option.c
> @@ -412,6 +412,10 @@ static void option_instat_callback(struct urb *urb);
>    */
>   #define LONGCHEER_VENDOR_ID			0x1c9e
>   
> +/* Longsung products */
> +#define LONGSUNG_U8300_PRODUCT_ID		0x9b05
> +#define LONGSUNG_U9300_PRODUCT_ID		0x9b3c
> +
>   /* 4G Systems products */
>   /* This one was sold as the VW and Skoda "Carstick LTE" */
>   #define FOUR_G_SYSTEMS_PRODUCT_CARSTICK_LTE	0x7605
> @@ -2054,6 +2058,10 @@ static const struct usb_device_id option_ids[] = {
>   	  .driver_info = RSVD(4) },
>   	{ USB_DEVICE(LONGCHEER_VENDOR_ID, ZOOM_PRODUCT_4597) },
>   	{ USB_DEVICE(LONGCHEER_VENDOR_ID, IBALL_3_5G_CONNECT) },
> +	{ USB_DEVICE(LONGCHEER_VENDOR_ID, LONGSUNG_U8300_PRODUCT_ID),
> +	  .driver_info = RSVD(4) | RSVD(5) },
> +	{ USB_DEVICE(LONGCHEER_VENDOR_ID, LONGSUNG_U9300_PRODUCT_ID),
> +	  .driver_info = RSVD(0) | RSVD(4) },
>   	{ USB_DEVICE(HAIER_VENDOR_ID, HAIER_PRODUCT_CE100) },
>   	{ USB_DEVICE_AND_INTERFACE_INFO(HAIER_VENDOR_ID, HAIER_PRODUCT_CE81B, 0xff, 0xff, 0xff) },
>   	/* Pirelli  */

Reviewed-by Lars Melin (larsm17@gmail.com

added the maintainer to the recipient list
Johan Hovold April 15, 2024, 6:53 a.m. UTC | #2
On Tue, Apr 02, 2024 at 03:09:12PM +0700, Lars Melin wrote:
> On 2024-04-02 14:34, Coia Prant wrote:

You're Subject is missing two newline characters to separate the commit
summary from the commit message.

> > ID 1c9e:9b05 OMEGA TECHNOLOGY (U8300)
> > ID 1c9e:9b3c OMEGA TECHNOLOGY (U9300)
> > 
> > U8300
> >   /: Bus
> >      |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=option, 480M (Debug)
> >          ID 1c9e:9b05 OMEGA TECHNOLOGY
> >      |__ Port 1: Dev 3, If 1, Class=Vendor Specific Class, Driver=option, 480M (Modem / AT)
> >          ID 1c9e:9b05 OMEGA TECHNOLOGY
> >      |__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=option, 480M (AT)
> >          ID 1c9e:9b05 OMEGA TECHNOLOGY
> >      |__ Port 1: Dev 3, If 3, Class=Vendor Specific Class, Driver=option, 480M (AT / Pipe / PPP)
> >          ID 1c9e:9b05 OMEGA TECHNOLOGY
> >      |__ Port 1: Dev 3, If 4, Class=Vendor Specific Class, Driver=qmi_wwan, 480M (NDIS / GobiNet / QMI WWAN)
> >          ID 1c9e:9b05 OMEGA TECHNOLOGY
> >      |__ Port 1: Dev 3, If 5, Class=Vendor Specific Class, Driver=, 480M (ADB)
> >          ID 1c9e:9b05 OMEGA TECHNOLOGY

Could please use the more condensed output of the usb-devices command
(for both devices) which is better suited for a commit message?

> Reviewed-by Lars Melin (larsm17@gmail.com
> 
> added the maintainer to the recipient list

Thanks for reviewing, Lars.

Coia, you can include Lars's Reviewed-by tag when you send a v2.

Johan
diff mbox series

Patch

diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 55a65d941ccb..27a116901459 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -412,6 +412,10 @@  static void option_instat_callback(struct urb *urb);
  */
 #define LONGCHEER_VENDOR_ID			0x1c9e
 
+/* Longsung products */
+#define LONGSUNG_U8300_PRODUCT_ID		0x9b05
+#define LONGSUNG_U9300_PRODUCT_ID		0x9b3c
+
 /* 4G Systems products */
 /* This one was sold as the VW and Skoda "Carstick LTE" */
 #define FOUR_G_SYSTEMS_PRODUCT_CARSTICK_LTE	0x7605
@@ -2054,6 +2058,10 @@  static const struct usb_device_id option_ids[] = {
 	  .driver_info = RSVD(4) },
 	{ USB_DEVICE(LONGCHEER_VENDOR_ID, ZOOM_PRODUCT_4597) },
 	{ USB_DEVICE(LONGCHEER_VENDOR_ID, IBALL_3_5G_CONNECT) },
+	{ USB_DEVICE(LONGCHEER_VENDOR_ID, LONGSUNG_U8300_PRODUCT_ID),
+	  .driver_info = RSVD(4) | RSVD(5) },
+	{ USB_DEVICE(LONGCHEER_VENDOR_ID, LONGSUNG_U9300_PRODUCT_ID),
+	  .driver_info = RSVD(0) | RSVD(4) },
 	{ USB_DEVICE(HAIER_VENDOR_ID, HAIER_PRODUCT_CE100) },
 	{ USB_DEVICE_AND_INTERFACE_INFO(HAIER_VENDOR_ID, HAIER_PRODUCT_CE81B, 0xff, 0xff, 0xff) },
 	/* Pirelli  */