From: Benjamin Stürz Subject: uchcom(4): add missing usb device To: tech@openbsd.org Cc: jsg@openbsd.org Date: Sun, 10 Aug 2025 15:00:12 +0200 Hi tech@, I got a new WHY2025 badge [1] and it has a built-in CH340 chip, which uses the 7522 product ID, instead of the 7523 [2]. This patch adds the missing ID. Tested on amd64 and works with the badge. [1]: https://wiki.why2025.org/Badge [2]: https://usb-ids.gowdy.us/read/UD/1a86/7522 diff /usr/src path + /usr/src commit - 3f426169bdac9dbe851ed420bdcbc18639cb08cb blob - 19b50b5ad29f446f56600ea9344669455c05d778 file + sys/dev/usb/uchcom.c --- sys/dev/usb/uchcom.c +++ sys/dev/usb/uchcom.c @@ -241,7 +241,8 @@ const struct ucom_methods uchcom_methods = { static const struct usb_devno uchcom_devs[] = { { USB_VENDOR_WCH, USB_PRODUCT_WCH_CH341 }, - { USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH340 }, + { USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH340_1 }, + { USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH340_2 }, { USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH341A }, { USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH343 }, { USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH9102 } commit - 3f426169bdac9dbe851ed420bdcbc18639cb08cb blob - b52fa8ef37ab7c819afc97c9c4b938277f61ae1a file + sys/dev/usb/usbdevs --- sys/dev/usb/usbdevs +++ sys/dev/usb/usbdevs @@ -4710,7 +4710,8 @@ product WCH CH341 0x5523 CH341 serial/parallel product WCH2 CH341A 0x5523 CH341A serial/parallel product WCH2 CH343 0x55d3 CH343 serial/parallel product WCH2 CH9102 0x55d4 CH9102 serial/parallel -product WCH2 CH340 0x7523 CH340 serial/parallel +product WCH2 CH340_1 0x7522 CH340 serial/parallel +product WCH2 CH340_2 0x7523 CH340 serial/parallel product WCH2 TEMPER 0xe025 TEMPer sensor /* WIENER Plein & Baus products */ commit - 3f426169bdac9dbe851ed420bdcbc18639cb08cb blob - acb22cfa23aaed5441b05f974669c9c240ffeb95 file + sys/dev/usb/usbdevs.h --- sys/dev/usb/usbdevs.h +++ sys/dev/usb/usbdevs.h @@ -1,4 +1,4 @@ -/* $OpenBSD: usbdevs.h,v 1.792 2025/07/14 23:49:48 jsg Exp $ */ +/* $OpenBSD$ */ /* * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. @@ -4717,7 +4717,8 @@ #define USB_PRODUCT_WCH2_CH341A 0x5523 /* CH341A serial/parallel */ #define USB_PRODUCT_WCH2_CH343 0x55d3 /* CH343 serial/parallel */ #define USB_PRODUCT_WCH2_CH9102 0x55d4 /* CH9102 serial/parallel */ -#define USB_PRODUCT_WCH2_CH340 0x7523 /* CH340 serial/parallel */ +#define USB_PRODUCT_WCH2_CH340_1 0x7522 /* CH340 serial/parallel */ +#define USB_PRODUCT_WCH2_CH340_2 0x7523 /* CH340 serial/parallel */ #define USB_PRODUCT_WCH2_TEMPER 0xe025 /* TEMPer sensor */ /* WIENER Plein & Baus products */ commit - 3f426169bdac9dbe851ed420bdcbc18639cb08cb blob - 38d4fcf788e29d5d399149a80f3ee4833cf309d3 file + sys/dev/usb/usbdevs_data.h --- sys/dev/usb/usbdevs_data.h +++ sys/dev/usb/usbdevs_data.h @@ -1,4 +1,4 @@ -/* $OpenBSD: usbdevs_data.h,v 1.786 2025/07/14 23:49:48 jsg Exp $ */ +/* $OpenBSD$ */ /* * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. @@ -12138,10 +12138,14 @@ const struct usb_known_product usb_known_products[] = "CH9102 serial/parallel", }, { - USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH340, + USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH340_1, "CH340 serial/parallel", }, { + USB_VENDOR_WCH2, USB_PRODUCT_WCH2_CH340_2, + "CH340 serial/parallel", + }, + { USB_VENDOR_WCH2, USB_PRODUCT_WCH2_TEMPER, "TEMPer sensor", },