mirror of
https://github.com/libratbag/libratbag.git
synced 2026-11-07 23:23:52 +01:00
hidpp10: use the directory profile count to get the device info
The G700 has 5 available profiles, bump HIDPP10_NUM_PROFILES. On the other hand, hidpp10_get_device_info() doesn't fill anything... Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
This commit is contained in:
committed by
Benjamin Tissoires
parent
8d65710846
commit
ff44609bef
@@ -1440,6 +1440,8 @@ hidpp10_get_device_info(struct hidpp10_device *dev)
|
||||
enum hidpp10_led_status led[6];
|
||||
int8_t current_profile;
|
||||
struct hidpp10_profile profiles[HIDPP10_NUM_PROFILES];
|
||||
int count;
|
||||
struct hidpp10_directory directory[16];
|
||||
|
||||
hidpp10_get_individual_features(dev, &feature_mask);
|
||||
hidpp10_get_hidpp_notifications(dev, ¬ifications);
|
||||
@@ -1452,7 +1454,9 @@ hidpp10_get_device_info(struct hidpp10_device *dev)
|
||||
|
||||
hidpp10_get_current_profile(dev, ¤t_profile);
|
||||
|
||||
for (i = 0; i < HIDPP10_NUM_PROFILES; i++)
|
||||
count = hidpp10_get_profile_directory(dev, directory,
|
||||
ARRAY_LENGTH(directory));
|
||||
for (i = 0; i < count && i < HIDPP10_NUM_PROFILES; i++)
|
||||
hidpp10_get_profile(dev, i, &profiles[i]);
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
|
||||
/* FIXME: that's what my G500s supports, but only pages 3-5 are valid.
|
||||
* 0 is zeroed, 1 and 2 are garbage, all above 6 is garbage */
|
||||
#define HIDPP10_NUM_PROFILES 3
|
||||
#define HIDPP10_NUM_PROFILES 5
|
||||
|
||||
#define HIDPP10_MAX_PAGE_NUMBER 31
|
||||
|
||||
|
||||
Reference in New Issue
Block a user