Yaroslav Chvanov
3f936eff68
data: add another name to Glorious Model O - O-
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
c25864c18a
data: add SinoWealth Generic Mouse (258a:0027)
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
cf64aac5f1
sinowealth: set the RGB effect to unsupported if LED type is not defined
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
0a39552a65
sinowealth: add default sensor type and LED type
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
03d2d71f82
sinowealth: don't enable LED support if LED type is not defined
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
1edb6df25b
sinowealth: define set_active_profile method in the driver
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
9c7494c5c0
sinowealth: select first profile before getting any data from the mouse
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
7f29c0423f
sinowealth: add active profile setter
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
07307b85d3
sinowealth: add commands IDs for the second profile
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
219218118d
sinowealth: print LOD and angle snapping value
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
1e2489c9e7
sinowealth: add LOD and angle snapping value getter
...
LOD - lift-off distance.
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
479c4352af
sinowealth: print debounce time
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
763655516c
sinowealth: add debounce time getter
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
944c4f0af5
sinowealth: print profile index
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
268ccab111
sinowealth: add profile index getter
...
Thank you so much, @araghon007!
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
603b0ca1fc
sinowealth: use RGB or RBG colors depending on device
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
4e50c506de
sinowealth: format code
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
4351eb3d72
sinowealth: support different sensors
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
9f4a1ba405
sinowealth: print device model based on firmware version
...
sinowealth: detect Glorious Model O with old firmware
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
451894b1b4
sinowealth: make the firmware version printing helper return it instead
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
c6051cb9ea
sinowealth: handle new RGB effects
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
34fafbc0f8
sinowealth: use enum types in config report directly
...
Although I'm not sure this if this would work on every compiler, having
a bit of extra type safety is always nice.
It does work with GCC and Clang at the very least.
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
75d075cc67
sinowealth: make some utility functions take unsigned integers
...
To avoid implicit conversions.
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
2f330b6466
sinowealth: use a struct to store lighting mode
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
c7adc9b9f6
sinowealth: print config data size
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
16a7b6ed18
sinowealth: use NULL instead of 0 for pointers
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
7ff73c8515
sinowealth: rename a config entry to make more sense
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
f11e31d671
sinowealth: add some hidden lighting types
...
These are not available in Glorious software.
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
f69457c280
sinowealth: add breathing_mode to config report
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
756fee1202
sinowealth: sort values in an enum
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
d4126463e4
sinowealth: don't say that amount of breathing colors is constant
...
Based on information in gloryctl's documentation, it's not. I guess it
was marked as such because Glorious software doesn't allow to change it.
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
00832cb9f0
sinowealth: add a lift off distance value to config report
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
866d4e6433
sinowealth: put some macros into enums
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
cbba00f997
sinowealth: use a map to convert report rates
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
d2e4fcc23e
sinowealth: put report rate conversion comparison in order
...
And also not use some random number in the comparison.
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
f0c66d0e1f
sinowealth: separate config to real config and report_rate nibbles
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
b2fb91e261
sinowealth: use correct bits for report rate
...
Turns out it takes the whole nibble, not just three bits.
2022-02-01 07:20:28 +10:00
Yaroslav Chvanov
1a64d2b85d
Add a TODO to make ratbag_button_action_match support macro actions
2022-02-01 07:11:43 +10:00
Yaroslav Chvanov
8f5fdf8590
Fix ratbag_button_action_match not matching on type NONE
2022-02-01 07:11:43 +10:00
Yaroslav Chvanov
baad36060d
util: fix a string of text being printed out of nowhere
2022-02-01 07:06:38 +10:00
Yaroslav Chvanov
7ecabea70d
sinowealth: remove a redundant comment
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
c0c8d6c544
sinowealth: increase log level of printed firmware version
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
37587bb99c
sinowealth: fix a memory leak
...
We were getting profiles, but never unreferenced them afterwards.
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
cc2fff9c06
sinowealth: rename some functions to be more clear
...
So that they would match button data reading later on.
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
b80d3ac0a3
sinowealth: use the detected LED count
...
I put this in a separate commit as 99% of this is just a change of
indentation levels, which doesn't look nice in git.
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
a757180d60
sinowealth: detect LED count at run-time
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
8c0124d654
sinowealth: move raw data reading from init function to probe function
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
b5d41e3657
sinowealth: put reading of raw configuration data into a helper
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
bfd2fc9969
sinowealth: print firmware version on profile init, not on reading
2022-01-28 10:31:09 +10:00
Yaroslav Chvanov
566d160de3
sinowealth: make init_profile return error codes
2022-01-28 10:31:09 +10:00