From 186323f048317e033819291e5d70ad19ded53768 Mon Sep 17 00:00:00 2001 From: "Derek J. Clark" Date: Mon, 14 Sep 2026 15:53:01 -0700 Subject: [PATCH] HID: hid-lenovo-go-s: Reorganize and rename hid_gos_cfg Renames hid_gos_cfg struct to gos_cfg_drvdata in preparation for later fixes. This is a prerequisite for later fixes. No functional change intended. Fixes: a23f3497bf208c59ad ("HID: hid-lenovo-go-s: Add Lenovo Legion Go S Series HID Driver") Cc: stable@vger.kernel.org Signed-off-by: Derek J. Clark Signed-off-by: Jiri Kosina --- drivers/hid/hid-lenovo-go-s.c | 43 +++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/drivers/hid/hid-lenovo-go-s.c b/drivers/hid/hid-lenovo-go-s.c index f1a0bcfcdb71..e5c4104a3adb 100644 --- a/drivers/hid/hid-lenovo-go-s.c +++ b/drivers/hid/hid-lenovo-go-s.c @@ -32,36 +32,41 @@ #define GO_S_CFG_INTF_IN 0x84 #define GO_S_PACKET_SIZE 64 -static struct hid_gos_cfg { - struct delayed_work gos_cfg_setup; +static struct gos_cfg_drvdata { + /* MCU General Variables */ struct completion send_cmd_complete; - struct led_classdev *led_cdev; + struct delayed_work gos_cfg_setup; struct hid_device *hdev; bool orphan_ack_pending; struct mutex cfg_mutex; /*ensure single synchronous output report*/ - bool gp_registered; - bool rgb_registered; int cmd_status; + + /* Gamepad Variables */ u8 gp_auto_sleep_time; - u8 gp_dpad_mode; - u8 gp_mode; - u8 gp_poll_rate; - u8 imu_bypass_en; u8 imu_manufacturer; + bool gp_registered; + u8 tp_windows_mode; + u8 tp_manufacturer; + u8 tp_linux_mode; + u8 imu_bypass_en; u8 imu_sensor_en; + u8 gp_dpad_mode; + u8 gp_poll_rate; u8 mcu_id[12]; u8 mouse_step; - u8 os_mode; - u8 rgb_effect; - u8 rgb_en; - u8 rgb_mode; - u8 rgb_profile; - u8 rgb_speed; - u8 tp_en; - u8 tp_linux_mode; - u8 tp_windows_mode; u8 tp_version; - u8 tp_manufacturer; + u8 gp_mode; + u8 os_mode; + u8 tp_en; + + /* RGB Variables */ + struct led_classdev *led_cdev; + bool rgb_registered; + u8 rgb_profile; + u8 rgb_effect; + u8 rgb_speed; + u8 rgb_mode; + u8 rgb_en; } drvdata; struct gos_cfg_attr {