Re: [PATCH v4] usb: serial : option: add multiple MeiG VID/PID

From: Johan Hovold

Date: Mon Jul 20 2026 - 10:34:12 EST


On Wed, Jun 24, 2026 at 11:35:24AM +0800, yangsizhe wrote:
> Add the PID and VID to facilitate the binding of our company's module
>
> Real name:MeiG Smart Technology Co., Ltd

Please mention which devices you are adding here (and in Subject if you
can generalise it, e.g. SLM8xxx) and include output of usb-devices which
gives an overview of the configuration. Please also mention what each
interface is for.

Here's a recent example of what this may look like:

https://lore.kernel.org/all/20260517153237.55995-3-janvolck@xxxxxxxxx/

You may want to break the patch up in one patch per device family.

Also, what chipset are these devices based on?

> Signed-off-by: yangsizhe <18392868223@xxxxxxx>

Is this how you would write you name in a legal document (i.e. all lower
case and no space between first and last name)?

> ---
> Changes from v3
> 1.Resolve the issue of compilation failure
>
> Changes from v2
> 1.Adjust reserved interface mask,avoid conflicts with RNDIS driver
>
> Changes from v1
> 1.Add Real name into commit changelog descriptor for device identification
> ---
> drivers/usb/serial/option.c | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
> index a34e79cfd5b6..1bf37df4493d 100644
> --- a/drivers/usb/serial/option.c
> +++ b/drivers/usb/serial/option.c
> @@ -2459,6 +2459,25 @@ static const struct usb_device_id option_ids[] = {
> { USB_DEVICE_AND_INTERFACE_INFO(0x2dee, 0x4d64, 0xff, 0xff, 0x40) }, /* MeiG SRM813Q (AT) */
> { USB_DEVICE_AND_INTERFACE_INFO(0x2dee, 0x4d64, 0xff, 0xff, 0x60) }, /* MeiG SRM813Q (NMEA) */
>

No need for a newline separator here since you're adding further MeiG
devices. You can just remove the existing one which snuck in by
mistake.

> + { USB_DEVICE(0x2dee, 0x4d23), /* MeiG SLM868x*/
> + .driver_info = RSVD(4) | RSVD(5) | RSVD(6) },
> + { USB_DEVICE(0x2dee, 0x4d62), /* MeiG SLM820x*/
> + .driver_info = RSVD(4) },
> + { USB_DEVICE(0x2dee, 0x4d30), /* MeiG SRM813Q*/
> + .driver_info = RSVD(0) | RSVD(1) },
> + { USB_DEVICE(0x2dee, 0x4d50), /* MeiG SRM811x*/
> + .driver_info = RSVD(0) | RSVD(1) | RSVD(6) },
> + { USB_DEVICE(0x2dee, 0x4d51), /* MeiG SRM821x*/
> + .driver_info = RSVD(0) | RSVD(1) | RSVD(6) },
> + { USB_DEVICE(0x2dee, 0x4d52), /* MeiG SRM810x*/
> + .driver_info = RSVD(0) | RSVD(1) | RSVD(6) },
> + { USB_DEVICE(0x2dee, 0x4d57), /* MeiG SLM770A*/
> + .driver_info = RSVD(0) | RSVD(1) },
> + { USB_DEVICE(0x2dee, 0x4d58), /* MeiG SLM828A*/
> + .driver_info = RSVD(0) | RSVD(1) },

Please keep the entries sorted by PID and add the missing space at the
end of each comment (i.e. before "*/").

> + { USB_DEVICE(0x05c6, 0xf601), /* MeiG SLM750x*/
> + .driver_info = RSVD(5) },

That's not the usual VID. Please highlight this in the commit message
and explain what's going on.

> +
> { USB_DEVICE_INTERFACE_CLASS(0x2df3, 0x9d03, 0xff) }, /* LongSung M5710 */
> { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1404, 0xff) }, /* GosunCn GM500 RNDIS */
> { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1405, 0xff) }, /* GosunCn GM500 MBIM */

Johan