[PATCH] HID: logitech: Add ids for G PRO 2 LIGHTSPEED

Matt Coffin posted 1 patch 1 month, 2 weeks ago
drivers/hid/hid-ids.h            | 1 +
drivers/hid/hid-logitech-dj.c    | 4 ++++
drivers/hid/hid-logitech-hidpp.c | 2 ++
3 files changed, 7 insertions(+)
[PATCH] HID: logitech: Add ids for G PRO 2 LIGHTSPEED
Posted by Matt Coffin 1 month, 2 weeks ago
Adds support for the G PRO 2 LIGHTSPEED Wireless via it's nano receiver
or directly. This nano receiver appears to work identically to the 1_1
receiver for the case I've verified, which is the battery status through
lg-hidpp.

The same appears to be the case wired, sharing much with the Pro X
Superlight 2; differences seemed to lie in userland configuration rather
than in interfaces used by hid_logitech_hidpp on the kernel side.

I verified the sysfs interface for battery charge/discharge status, and
capacity read to be working on my 910-007290 device (white).

Signed-off-by: Matt Coffin <mcoffin13@gmail.com>
---
 drivers/hid/hid-ids.h            | 1 +
 drivers/hid/hid-logitech-dj.c    | 4 ++++
 drivers/hid/hid-logitech-hidpp.c | 2 ++
 3 files changed, 7 insertions(+)

diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 5a1096283855..37dc42380373 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -907,6 +907,7 @@
 #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_2		0xc534
 #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1	0xc539
 #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_1	0xc53f
+#define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_2	0xc543
 #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_POWERPLAY	0xc53a
 #define USB_DEVICE_ID_LOGITECH_BOLT_RECEIVER	0xc548
 #define USB_DEVICE_ID_SPACETRAVELLER	0xc623
diff --git a/drivers/hid/hid-logitech-dj.c b/drivers/hid/hid-logitech-dj.c
index 34fa71ceec2b..cce54dd9884a 100644
--- a/drivers/hid/hid-logitech-dj.c
+++ b/drivers/hid/hid-logitech-dj.c
@@ -1983,6 +1983,10 @@ static const struct hid_device_id logi_dj_receivers[] = {
 	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH,
 		USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_1),
 	 .driver_data = recvr_type_gaming_hidpp},
+	{ /* Logitech lightspeed receiver (0xc543) */
+	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH,
+		USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_2),
+	 .driver_data = recvr_type_gaming_hidpp},
 
 	{ /* Logitech 27 MHz HID++ 1.0 receiver (0xc513) */
 	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER),
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
index 10a3bc5f931b..aaef405a717e 100644
--- a/drivers/hid/hid-logitech-hidpp.c
+++ b/drivers/hid/hid-logitech-hidpp.c
@@ -4596,6 +4596,8 @@ static const struct hid_device_id hidpp_devices[] = {
 	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xC094) },
 	{ /* Logitech G Pro X Superlight 2 Gaming Mouse over USB */
 	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xC09b) },
+	{ /* Logitech G PRO 2 LIGHTSPEED Wireless Mouse over USB */
+	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xc09a) },
 
 	{ /* G935 Gaming Headset */
 	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0x0a87),
-- 
2.50.1
Re: [PATCH] HID: logitech: Add ids for G PRO 2 LIGHTSPEED
Posted by Jiri Kosina 1 month, 2 weeks ago
On Wed, 20 Aug 2025, Matt Coffin wrote:

> Adds support for the G PRO 2 LIGHTSPEED Wireless via it's nano receiver
> or directly. This nano receiver appears to work identically to the 1_1
> receiver for the case I've verified, which is the battery status through
> lg-hidpp.
> 
> The same appears to be the case wired, sharing much with the Pro X
> Superlight 2; differences seemed to lie in userland configuration rather
> than in interfaces used by hid_logitech_hidpp on the kernel side.
> 
> I verified the sysfs interface for battery charge/discharge status, and
> capacity read to be working on my 910-007290 device (white).
> 
> Signed-off-by: Matt Coffin <mcoffin13@gmail.com>
> ---
>  drivers/hid/hid-ids.h            | 1 +
>  drivers/hid/hid-logitech-dj.c    | 4 ++++
>  drivers/hid/hid-logitech-hidpp.c | 2 ++
>  3 files changed, 7 insertions(+)
> 
> diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
> index 5a1096283855..37dc42380373 100644
> --- a/drivers/hid/hid-ids.h
> +++ b/drivers/hid/hid-ids.h
> @@ -907,6 +907,7 @@
>  #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_2		0xc534
>  #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1	0xc539
>  #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_1	0xc53f
> +#define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_2	0xc543
>  #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_POWERPLAY	0xc53a
>  #define USB_DEVICE_ID_LOGITECH_BOLT_RECEIVER	0xc548
>  #define USB_DEVICE_ID_SPACETRAVELLER	0xc623
> diff --git a/drivers/hid/hid-logitech-dj.c b/drivers/hid/hid-logitech-dj.c
> index 34fa71ceec2b..cce54dd9884a 100644
> --- a/drivers/hid/hid-logitech-dj.c
> +++ b/drivers/hid/hid-logitech-dj.c
> @@ -1983,6 +1983,10 @@ static const struct hid_device_id logi_dj_receivers[] = {
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH,
>  		USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_1),
>  	 .driver_data = recvr_type_gaming_hidpp},
> +	{ /* Logitech lightspeed receiver (0xc543) */
> +	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH,
> +		USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_2),
> +	 .driver_data = recvr_type_gaming_hidpp},
>  
>  	{ /* Logitech 27 MHz HID++ 1.0 receiver (0xc513) */
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER),
> diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
> index 10a3bc5f931b..aaef405a717e 100644
> --- a/drivers/hid/hid-logitech-hidpp.c
> +++ b/drivers/hid/hid-logitech-hidpp.c
> @@ -4596,6 +4596,8 @@ static const struct hid_device_id hidpp_devices[] = {
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xC094) },
>  	{ /* Logitech G Pro X Superlight 2 Gaming Mouse over USB */
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xC09b) },
> +	{ /* Logitech G PRO 2 LIGHTSPEED Wireless Mouse over USB */
> +	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xc09a) },
>  
>  	{ /* G935 Gaming Headset */
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0x0a87),

Applied to hid.git#for-6.17/upstream-fixes, thanks.

-- 
Jiri Kosina
SUSE Labs
Re: [PATCH] HID: logitech: Add ids for G PRO 2 LIGHTSPEED
Posted by Bastien Nocera 1 month, 2 weeks ago
On Wed, 2025-08-20 at 01:49 -0600, Matt Coffin wrote:
> Adds support for the G PRO 2 LIGHTSPEED Wireless via it's nano receiver

"its"

> or directly. This nano receiver appears to work identically to the 1_1
> receiver for the case I've verified, which is the battery status through
> lg-hidpp.
> 
> The same appears to be the case wired, sharing much with the Pro X
> Superlight 2; differences seemed to lie in userland configuration rather
> than in interfaces used by hid_logitech_hidpp on the kernel side.
> 
> I verified the sysfs interface for battery charge/discharge status, and
> capacity read to be working on my 910-007290 device (white).
> 
> Signed-off-by: Matt Coffin <mcoffin13@gmail.com>

Otherwise LGTM

Reviewed-by: Bastien Nocera <hadess@hadess.net>

> ---
>  drivers/hid/hid-ids.h            | 1 +
>  drivers/hid/hid-logitech-dj.c    | 4 ++++
>  drivers/hid/hid-logitech-hidpp.c | 2 ++
>  3 files changed, 7 insertions(+)
> 
> diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
> index 5a1096283855..37dc42380373 100644
> --- a/drivers/hid/hid-ids.h
> +++ b/drivers/hid/hid-ids.h
> @@ -907,6 +907,7 @@
>  #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_2		0xc534
>  #define
> USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1	0xc539
>  #define
> USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_1	0xc53f
> +#define
> USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_2	0xc543
>  #define USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_POWERPLAY	0xc53a
>  #define USB_DEVICE_ID_LOGITECH_BOLT_RECEIVER	0xc548
>  #define USB_DEVICE_ID_SPACETRAVELLER	0xc623
> diff --git a/drivers/hid/hid-logitech-dj.c b/drivers/hid/hid-
> logitech-dj.c
> index 34fa71ceec2b..cce54dd9884a 100644
> --- a/drivers/hid/hid-logitech-dj.c
> +++ b/drivers/hid/hid-logitech-dj.c
> @@ -1983,6 +1983,10 @@ static const struct hid_device_id
> logi_dj_receivers[] = {
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH,
>  		USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_1)
> ,
>  	 .driver_data = recvr_type_gaming_hidpp},
> +	{ /* Logitech lightspeed receiver (0xc543) */
> +	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH,
> +		USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1_2)
> ,
> +	 .driver_data = recvr_type_gaming_hidpp},
>  
>  	{ /* Logitech 27 MHz HID++ 1.0 receiver (0xc513) */
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH,
> USB_DEVICE_ID_MX3000_RECEIVER),
> diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-
> logitech-hidpp.c
> index 10a3bc5f931b..aaef405a717e 100644
> --- a/drivers/hid/hid-logitech-hidpp.c
> +++ b/drivers/hid/hid-logitech-hidpp.c
> @@ -4596,6 +4596,8 @@ static const struct hid_device_id
> hidpp_devices[] = {
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xC094) },
>  	{ /* Logitech G Pro X Superlight 2 Gaming Mouse over USB */
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xC09b) },
> +	{ /* Logitech G PRO 2 LIGHTSPEED Wireless Mouse over USB */
> +	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xc09a) },
>  
>  	{ /* G935 Gaming Headset */
>  	  HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0x0a87),