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
staticssleever668
6c8a2d36fe
sinowealth: use proper config size when writing
2021-10-26 11:57:53 +03:00
staticssleever668
875aae6985
sinowealth: add support for mice with longer configuration data
2021-10-26 11:57:53 +03:00
staticssleever668
6a071dc1ee
sinowealth: expose all eight resolution slots
...
It was limited to six because Glorious' software exposes only so many of
them, but SinoWealth mice firmware allows up to eight.
2021-07-24 22:05:16 +01:00
staticssleever668
7c9a75da9e
sinowealth: add support for changing report rate
2021-07-24 22:04:55 +01:00
staticssleever668
dd1c72a1d0
sinowealth: add support for reading current report rate
2021-07-24 22:04:55 +01:00
staticssleever668
4075227eb7
sinowealth: add support for changing active resolution number
2021-07-24 22:03:44 +01:00
staticssleever668
6b97d94a2f
sinowealth: print out firmware version when probing
2021-06-23 15:40:38 +00:00
Thomas H.P. Andersen
01d2cf8477
sinowealth: silence warning
2020-09-29 01:07:12 +02:00
Thomas H.P. Andersen
aeda65cbfa
sinowealth: remove per-resolution led
...
The glorious mice uses a single profile. To differentiate between
resolutions each one has customizable color. A led on the bottom
of the mouse shows the active resolution color.
Libratbag does not support a per-resolution color.
To allow adjusting these colors the sinowealth driver defines a led
for each resolution. This is a misuse of the model and will cause
problems when the mouse is added to Piper.
This patch removes the per-resolution leds and hardcodes the led
count to one.
2020-09-25 20:51:45 +01:00
Marian Beermann
bb230d390d
sinowealth: fix reading RGB brightness from device
2020-07-23 00:45:29 +01:00
Marian Beermann
93a076bed9
sinowealth: code style changes
2020-07-23 00:45:29 +01:00
Marian Beermann
e7b50c9061
sinowealth: rewrite RGB LED mode conversions
2020-07-23 00:45:29 +01:00
Marian Beermann
9d533bdc3e
sinowealth: fix dpi_count not being updated
...
The firmware of these mice only considers the first dpi_count zero bits
in dpi_enabled.
2020-07-23 00:45:29 +01:00
Marian Beermann
d7906b54b4
sinowealth: code cleanup and style changes
2020-07-23 00:45:29 +01:00
Marian Beermann
f1eba370ed
sinowealth: do not typedef structs
2020-07-23 00:45:29 +01:00
Marian Beermann
7b5ab2ed99
sinowealth: separate capability setting logic from read_profile
2020-07-23 00:45:29 +01:00
Marian Beermann
d2d5471836
sinowealth: implement brightness and speed controls
2020-07-23 00:45:29 +01:00
Marian Beermann
9cfc1e98e3
sinowealth: fixed rgb
...
Turns out it was caused by two mistakes:
1.) While writing the struct I overlooked a changed offset in my notes,
so a bunch of padding was missing in the middle of the struct (unk4[33]);
that padding is probably the set of colors (11) used by tail mode
2.) The LED bodies actually use RBG ordering instead of RGB
2020-07-23 00:45:29 +01:00
Marian Beermann
691661276f
pad struct sinowealth_config_report to full size of report
2020-07-23 00:45:29 +01:00
Marian Beermann
25ed99db84
Add sinowealth driver
2020-07-23 00:45:29 +01:00