Commit graph

438 commits

Author SHA1 Message Date
Christoffer Sandberg f08b9af714 Add three profiles to polaris/stellaris gen2/3 for the LEDs 2022-07-27 11:47:10 +02:00
Christoffer Sandberg 55022eb636 Add BA15 with two power profiles 2022-07-27 11:47:10 +02:00
Christoffer Sandberg feca6dbcf4 tuxedo_io: Add uw perf prof ioctl interface 2022-07-27 11:47:10 +02:00
Christoffer Sandberg ad8d42454e Add PH4TQX 2022-07-27 11:47:10 +02:00
Christoffer Sandberg 7593dd33ee Add uw min/max TDP interface
- Min/max TDP interface prototype
- Identification structure for "old style"
  uw perf. profiles
2022-07-27 11:47:10 +02:00
Christoffer Sandberg dd5e48fb09 Add uw TDP ioctl interface 2022-07-27 11:47:10 +02:00
Christoffer Sandberg cc4c1445b9 Fix whitespace 2022-07-27 11:47:10 +02:00
Werner Sembach e77d9748ee Add debug output 2022-07-22 15:40:44 +02:00
Werner Sembach 45a240f5f2 Add debug on wmi call 13 output for testing
Fix wrong pointer dereferentiation

Add debug output for clevo_acpi

Create more flexible clevo_evaluate_method2()
2022-07-22 15:39:43 +02:00
Werner Sembach 42f8a677cf Add basic leds interface backlight control 2022-07-15 14:46:25 +02:00
Werner Sembach 6cf70084ab Add header guard 2022-07-15 14:45:51 +02:00
Christoffer Sandberg 48666348c6
Update version to 3.0.10 + changelog 2022-04-28 14:47:28 +02:00
Christoffer dd774d8b0d Merge branch '57-stellaris-intel-gen-4-support' into 'master'
Resolve "Stellaris Intel gen 4 support"

Closes #57

See merge request tuxedocomputers/development/packages/tuxedo-keyboard!26
2022-04-25 15:55:26 +00:00
Christoffer Sandberg 46ad491825
Add lightbar support for Stellaris Intel gen 4 2022-04-21 12:05:18 +02:00
Christoffer Sandberg abd6036eb9 Initialize uw lightbar to be "off" 2022-02-02 16:42:05 +01:00
Christoffer Sandberg e1c8e5bf3b Update version to 3.0.9 + changelog 2021-10-18 22:28:14 +02:00
Christoffer Sandberg 0c07dfcba4 Move old now unused io structs to debug def 2021-10-18 20:03:02 +02:00
Christoffer Sandberg b856c9644e Add new board name for IBS15gen6 + 17 version 2021-10-08 20:01:00 +02:00
Christoffer Sandberg 0747e94f89 tuxedo_io: Update id check data for uw on ioctl id check request
Should fix failing to identify uniwill device if tuxedo_io module
loaded before interface registration.
2021-10-04 14:59:15 +02:00
Christoffer Sandberg 5b57ddbec1 Remove unused return statuses 2021-09-22 01:39:02 +02:00
Christoffer Sandberg f6226ac07a Expose and clarify uw WMI read/write method as parameter 2021-09-22 00:51:16 +02:00
Christoffer Sandberg 2440ed47b5 Remove old uw probe, notifys and event handlers 2021-09-22 00:02:49 +02:00
Christoffer Sandberg df3df09c10 Remove rest of tongfang_wmi.h
- Reference includes
- Move remaining unions to interfaces
- Remove remaining uniwill_exit from tuxedo_io
2021-09-18 00:37:46 +02:00
Christoffer Sandberg d2ff4e4b83 Add uniwill interface str id and read for tuxedo_io 2021-09-18 00:30:00 +02:00
Christoffer Sandberg ea720826e8 Fix some whitespace format issues 2021-09-18 00:17:30 +02:00
Christoffer Sandberg f8bd16ca68 Move uw fan ctrl helper funcs 2021-09-18 00:03:49 +02:00
Christoffer Sandberg da31d09aad Check input device reference before using 2021-09-17 23:53:42 +02:00
Christoffer Sandberg 4fa915fcc3 Change use of uw if read/write to new ones
- For tuxedo_io
2021-09-17 23:50:16 +02:00
Christoffer Sandberg de124948ab Change use of uw if read/write to new ones
- For fan control
2021-09-17 20:19:58 +02:00
Christoffer Sandberg cf4d9967b7 tuxedo_io: Add new uw interfaces header 2021-09-17 20:16:39 +02:00
Christoffer Sandberg 56b5c5461d Move uw manual mode set/remove 2021-09-17 19:17:10 +02:00
Christoffer Sandberg 64c47a6943 Change use of uw if read/write to new ones
- For uniwill_keyboard part
- Remove now unused uw_io.h
2021-09-16 21:36:35 +02:00
Christoffer Sandberg 931d3c7f30 Add visible error on missing uw interface read/write attempt 2021-09-16 20:34:06 +02:00
Christoffer Sandberg 16f7c246dd Adjust clevo driver init and remove accordingly 2021-09-16 00:29:07 +02:00
Christoffer Sandberg 9ec3dc927a Reorder uniwill driver init and remove 2021-09-15 22:23:29 +02:00
Christoffer Sandberg 57ebb3a9fe Move and include mem read/write functions 2021-09-13 23:35:29 +02:00
Christoffer Sandberg 0da37ce0ca Add uniwill wmi event callb hooks and handling
- Event/notify handling
- Actually adding interface
2021-09-10 22:57:43 +02:00
Christoffer Sandberg 13510d6fc2 Fix missing bracket 2021-09-10 00:16:03 +02:00
Christoffer Sandberg 54c6da280e Add uniwill interface methods 2021-09-08 21:14:56 +02:00
Christoffer Sandberg 9db498b836 Add/correct interface include guards 2021-09-07 19:47:31 +02:00
Christoffer Sandberg 3637247351 Add basic uniwill-wmi module
- Add separate uniwill-wmi module
- Add uniwill interfaces header
2021-09-03 22:07:13 +02:00
Christoffer Sandberg 914e50b160
Update version to 3.0.8 + changelog 2021-07-09 12:54:21 +02:00
Christoffer Sandberg bce9817464
Add IBS14v6 to perf. prof workaround 2021-07-09 12:44:58 +02:00
Christoffer Sandberg aae9f01feb
Update version to 3.0.7 + changelog
- tuxedo-io to 0.2.4
- clevo-wmi to 0.0.3
2021-06-24 13:07:00 +02:00
Christoffer Sandberg 0c929206bd
Add Stellaris devices for lightbar 2021-06-24 13:06:33 +02:00
tuxedoxt 9f8def2643
Merge pull request #91 from ArlindoFNeto/patch-1
Add Avell A60 MUV as lightbar_supported
2021-06-24 10:06:09 +02:00
tuxedoxt d1639d1734
Merge pull request #95 from BlackIkeEagle/linux-5.13-compat
fix incompatible pointer type for linux 5.13
2021-06-24 09:45:36 +02:00
BlackEagle 216899e1cf fix incompatible pointer type for linux 5.13
this fixes the following build issue:

```
src/clevo_wmi.c:149:19: error: initialization of ‘void (*)(struct wmi_device *)’ from incompatible pointer type ‘int (*)(struct wmi_device *)’ [-Werror=incompatible-pointer-types]
  149 |         .remove = clevo_wmi_remove,
      |                   ^~~~~~~~~~~~~~~~
```

Signed-off-by: BlackEagle <ike.devolder@gmail.com>
2021-06-23 22:51:53 +02:00
Christoffer Sandberg 4beb504569
Add new polaris devices
Add Polaris device to backlight driver
- Polaris AMD Gen 2
- Polaris Intel Gen 2
- Polaris AMD Gen 3
- Polaris Intel Gen 3
2021-06-16 15:39:22 +02:00
Christoffer Sandberg d7f358a778
Update version to 3.0.6 + changelog 2021-06-07 17:06:27 +02:00
Christoffer Sandberg 1f292258d5
Add cl perf profile set ioctl 2021-05-19 18:40:27 +02:00
Arlindo F. Neto cbc1813ef7
Add Avell A60 MUV as lightbar_supported
I've suggested this in #89 issue.
2021-05-14 16:31:03 -03:00
Christoffer Sandberg 8a965edb33
Update version to 3.0.5 + changelog 2021-04-23 18:33:53 +02:00
Christoffer Sandberg 5ff4174be9
Add XP gen 11 & 12 to perf. profile workaround 2021-04-23 18:30:04 +02:00
Christoffer Sandberg d7304b3170
Add EDUBOOK1502 to perf. profile workaround 2021-04-23 11:46:28 +02:00
Christoffer Sandberg bea182ed6d
Clean-up cl driver state init
- Ensure keyb bl state is initialized from params
- Unify state writing (directly from state struct)
- Use same state write on resume
- Don't attempt to init twice if already initialized (should prevent
  some double writing and make debugging easier)
2021-04-19 14:39:06 +02:00
Christoffer Sandberg c2061a9596
Comment out cl method debug prints per default 2021-04-19 14:04:58 +02:00
Christoffer Sandberg 6e65f2ea97
Add NS50MU to perf. profile workaround
Implements #44
2021-04-06 12:59:56 +02:00
Christoffer Sandberg fd683d410b
Update version to 3.0.4 + changelog 2021-03-19 16:35:40 +01:00
Christoffer Sandberg 67fb677d88
clevo_keyboard: Add mutex to interface operations 2021-03-19 16:34:34 +01:00
Christoffer Sandberg b7a0b23db1
Merge branch '38-tuxedo-io-breaks-device-default-silent-fan-mode-on-tongfang-devices'
- Conflicts => Included everything (init of uw dev fan curves & perf prof)
- Removed comments and unneeded "uninitialized check" as per WSE
  recommendation
2021-03-19 15:31:53 +01:00
Christoffer 2e8e9d9195 Merge branch 'set_full_fan_mode_less_intrusive' into 'master'
Set full fan mode less intrusive

See merge request tuxedocomputers/development/packages/tuxedo-keyboard!18
2021-03-19 13:46:51 +00:00
Christoffer Sandberg e53d4870ea
Add standard Aura (now new) board name to perf. profile workaround
- Convert remaining matches to string in for robustness
  (with occational space padding)
- Add missing device comment
2021-03-17 13:58:07 +01:00
Christoffer Sandberg afae768fda
Add IBS14v5 to perf. profile workaround 2021-03-17 13:49:10 +01:00
Werner Sembach d24f698dd0 Remove minimum version defines for single ioctl 2021-03-16 14:24:18 +00:00
Christoffer Sandberg f4622e28f1
tuxedo_keyboard: Fix possible race condition on driver init
Modified patch from https://github.com/ftufo

https://github.com/tuxedocomputers/tuxedo-keyboard/issues/75
2021-03-15 12:47:24 +01:00
Christoffer Sandberg 852c28cec4
Update version to 3.0.3 + changelog 2021-03-05 13:28:37 +01:00
Christoffer Sandberg 1e96de2c56
Add XP14 to perf. profile workaround 2021-03-05 13:27:55 +01:00
Werner Sembach f2b722c7b6 Don't reset fan speed on disable full-fan-mode because it gets reset automatically 2021-03-03 12:09:52 +01:00
Werner Sembach 6519645696 Fix typo and use bool type 2021-02-25 15:11:19 +01:00
Werner Sembach cbb258e13d Always initialize custom fan curve to prevent inconsistencies 2021-02-25 14:40:47 +01:00
Werner Sembach b8cb3ed34b Bump version and add defines to check for minimum version with new ioctl 2021-02-24 20:35:02 +01:00
Werner Sembach 96a9485a84 Set balanced profile on init for the time being until we have a way to switch it while tuxedo_io is loaded 2021-02-24 19:56:58 +01:00
Werner Sembach 226a40b8fb Fix wrong macro call breaking compilation and add header guard 2021-02-22 20:12:58 +01:00
Werner Sembach 5b99255be8 Add ioctl to reset fanspeed to auto 2021-02-19 21:33:30 +01:00
Werner Sembach 4306a80513 Only set one bit required for full-fan-mode and not whole byte 2021-02-19 21:04:08 +01:00
Werner Sembach ea23edca26 Use universal header guard 2021-02-18 20:18:05 +01:00
Werner Sembach 1b58247daf Use default values found elsewhere in the ec memory insted of hardcoded values 2021-02-16 16:50:44 +01:00
Werner Sembach 2d33628610 Proof of concept initialization of manual-mode fan-curve 2021-02-15 22:01:13 +01:00
Christoffer Sandberg 4296f75372
Update version to 3.0.2
- Update changelog
- Update tuxedo_keyboard to 3.0.2
- Update clevo_wmi to 0.0.2
- Update clevo_acpi to 0.0.2
2021-01-29 14:47:50 +01:00
Christoffer Sandberg e38fe87fad
Aura perf. profile workaround
Explicitly sets the performance profile for Aura on keyboard init.
This has the effect of setting the state (previously not done by
firmware) to the relevant ACPI object. After this it should
restore the performance profile correctly on its own on power supply
change.
2021-01-29 14:34:49 +01:00
Christoffer Sandberg 7ad2c50d1f
Fix clevo keyboard init order 2021-01-29 14:34:23 +01:00
Christoffer Sandberg 4f763e9e74
Update version to 3.0.1
- tuxedo_io to 0.2.1
- changelogs
2020-12-21 17:33:50 +01:00
Christoffer Sandberg cb4bf91341
Deactivate method debug print cluttering 2020-12-21 17:18:57 +01:00
Christoffer Sandberg 1611244de9
tuxedo_io: Attempt workaround to reduce uw fan ramp-up 2020-12-21 17:12:21 +01:00
Christoffer Sandberg e61ea200a3
uw_keyboard: Map space brightness to kbd brightness toggle
Implements #34

Affects Trinity devices
2020-12-21 11:08:33 +01:00
Christoffer Sandberg b209a5b082
uw_keyboard: Add trinity IDs for lightbar ctrl
Implements #33
2020-12-21 11:04:55 +01:00
Christoffer Sandberg 1beae3c5a9
Update license headers with outdated address 2020-12-09 13:20:42 +01:00
Christoffer Sandberg 912c0ca109 Adjust some old references 2020-12-09 12:42:29 +01:00
Christoffer Sandberg 4bbc290a8d
tuxedo_io: Convert ioctl spaces to tabs for consistency 2020-12-08 15:54:51 +01:00
Christoffer Sandberg 2c32684ee8
tuxedo_io: Prefix the clevo ioctls with CL for clarity 2020-12-08 15:50:25 +01:00
Christoffer Sandberg 51741558ed
tuxedo_io: Add clevo interface string read ioctl 2020-12-08 15:48:18 +01:00
Christoffer Sandberg 95a8097b0f
clevo_interfaces: Minor text clean-ups 2020-12-08 11:46:13 +01:00
Christoffer Sandberg 423e515121
Increase module versions 2020-12-08 10:51:45 +01:00
Christoffer Sandberg 4aa71e4ef0
clevo_keyboard: Remove non-error "error" output 2020-12-08 10:25:06 +01:00
Christoffer Sandberg 15cb908351
tuxedo_io: Fix build, remove leftover dummy variable 2020-12-08 09:30:27 +01:00
Christoffer Sandberg 596212e17a
tuxedo_io: include tuxedo_cc_wmi as tuxedo_io
- Clevo part now using exported interface from clevo_interfaces
- Uniwill part still works as previously
- Additional module alias for ACPI interface needed and added
2020-12-07 16:57:32 +01:00
Christoffer Sandberg 597902a808
clevo_interfaces: Move module alias defines 2020-12-07 16:39:01 +01:00
Christoffer Sandberg bea8621bdb
clevo_interfaces: Export method and ID interface 2020-12-07 12:19:36 +01:00
Christoffer Sandberg 1f8b5a66b3
clevo_interfaces: Move resource ID defs 2020-12-07 11:00:24 +01:00
Christoffer Sandberg 8667006c4a
clevo_interfaces: Add clevo cmd defines
- Fix incl. guard "typo"
2020-12-07 10:01:18 +01:00
Christoffer Sandberg b484e47de0
clevo_wmi: Add explicit module alias "for older kernels" 2020-12-04 16:11:47 +01:00
Christoffer Sandberg 21c65b40b0
clevo_wmi: Fix device list end 2020-12-04 15:50:48 +01:00
Christoffer Sandberg 6e3ce9ca6a
clevo_keyboard: Remove/refactor leftover wmi references 2020-12-04 15:20:55 +01:00
Christoffer Sandberg 14c37444e6
clevo_interfaces: Change event handling & use separate wmi module 2020-12-04 13:16:49 +01:00
Christoffer Sandberg bbc29f39fc
clevo_interfaces: Add decoupled clevo_wmi interface 2020-12-04 12:23:39 +01:00
Christoffer Sandberg b581e45ee0
clevo_interfaces: add missing licensing headers 2020-12-03 13:34:33 +01:00
Christoffer Sandberg 2c7eb248b1
clevo_interfaces: debug modifications & clarifications 2020-12-03 12:10:07 +01:00
Christoffer Sandberg 459a16de00
clevo_interfaces: remove/clean up headers 2020-12-03 10:15:38 +01:00
Christoffer Sandberg 6f14b22b33
clevo_keyboard: Basic modularization to allow for multiple interfaces
Basic working implementation, WIP

- Modularize clevo_keyboard, allowing interfaces to "register" themselves
- Add clevo_acpi interface to clevo_keyboard
- Prefer acpi interface
- Fixed some previously still coupled features on uniwill_keyboard side
to allow for the structure change
2020-12-02 17:32:09 +01:00
Christoffer Sandberg 6d76c68eb4 clevo_acpi: Add acpi evaluate and event enable functionality 2020-11-17 17:30:03 +01:00
Christoffer Sandberg fe41e0d039
Add basic driver structure for "new" clevo interface 2020-11-16 16:27:34 +01:00
Christoffer Sandberg 878a528223
Update version to 2.1.0 + changelog 2020-11-13 12:47:04 +01:00
Christoffer Sandberg a95d0ecdd5
uw: Add keyboard brightness up/down mapping 2020-11-12 10:57:45 +01:00
Christoffer Sandberg eea83c3a37
uw: Fix touchpad toggle
Actually only returning notify stop on last key
messes up some platforms leading to that next toggle
does not register.

Should either stop all or none. From now stopping none.
2020-11-12 10:36:19 +01:00
Christoffer Sandberg d035d7afb0
uniwill: Refactor and simplify external symbol handling
tuxedo-cc-mwi symbols now used in many places. Until further
aggregation some wrappers are needed for clarity.
2020-10-30 12:17:17 +01:00
Christoffer Sandberg a28f8858ac uw_lightbar: Add compatible device check 2020-10-29 12:09:48 +01:00
Christoffer Sandberg 0d954602b5 uw_lightbar: Fix init structure 2020-10-28 17:08:32 +01:00
Christoffer Sandberg 50f8afdf75 Add uw lightbar "animation led" 2020-10-27 10:02:23 +01:00
Christoffer Sandberg a3e69ca8f9 Change uw lightbar led names for possible future compliance 2020-10-27 10:02:23 +01:00
Christoffer Sandberg 8db1b16c79 Fix uw kbd bl rgb sysfs removal 2020-10-27 10:02:23 +01:00
Christoffer Sandberg 839f13b350 Fix uw lightbar color comparison 2020-10-27 09:58:22 +01:00
Christoffer Sandberg 821c502823 Initial classdev lightbar support 2020-10-27 09:58:22 +01:00
Christoffer Sandberg 8c0a618f6b uw: fix module cleanup for non single rgb kbd bl 2020-10-27 09:38:08 +01:00
Christoffer Sandberg fbd1cd8e8a
Update to version 2.0.6
- Changelogs
- Update with final device names
2020-10-06 15:05:50 +02:00
Christoffer Sandberg cfac56be26
Add new uw kbd bl IDs 2020-09-18 17:37:02 +02:00
Christoffer Sandberg 9f05c50681
Reset uw kbd bl color on resume 2020-09-08 12:13:23 +02:00
Christoffer Sandberg 56cadb61de
Add uw kbd bl color device 2020-09-08 12:12:35 +02:00
Christoffer Sandberg ab29e5e392
Tweak reset timout 2020-09-03 10:43:53 +02:00
Christoffer Sandberg 0c2d597c22
Fix reset uw kbd bl on init 2020-09-03 10:27:19 +02:00
Christoffer Sandberg 0e1e4987ff
Add missing event defines 2020-09-01 16:03:59 +02:00
Christoffer Sandberg 2055fa5774
Fix: write uw kbd bl on cable switch 2020-09-01 10:37:11 +02:00
Christoffer Sandberg 8fdd6aea99
Add manual mode rfkill key mapping 2020-08-28 13:09:37 +02:00
Christoffer Sandberg 06ea622d59 Lessen debug out and make sure init timeout is seen in any case 2020-08-26 11:13:02 +02:00
Christoffer Sandberg 038c5d7602 Comment out uw bl read br state 2020-08-26 10:53:32 +02:00
Christoffer Sandberg a21f854e03 Implement delayed init set after boot animation 2020-08-26 10:44:25 +02:00
Christoffer Sandberg 726af039b9
Rename (new tccwmi interface) and clean up uw kbd references 2020-08-25 12:09:56 +02:00
Christoffer Sandberg e25b657fa1
Remove remaining unnecessary highreg value for clarity 2020-08-21 09:06:29 +02:00
Christoffer Sandberg e9e3c8b8e5
Add sysfs interface for uw kbd bl color 2020-08-20 15:51:16 +02:00
Christoffer Sandberg 9fc2f16482
Add device check to uw kbd bl driver 2020-08-19 13:27:06 +02:00
Christoffer Sandberg d976cddc81
Remove reads used to write previous high bytes 2020-08-17 13:07:55 +02:00
Christoffer Sandberg edb5c08ad3
Extend uw event catching (debug) 2020-08-17 13:02:44 +02:00
Christoffer Sandberg 4a272bb715 Add soft dependency on tuxedo-cc-wmi 2020-08-12 10:41:58 +02:00
Christoffer Sandberg 857d5f6bea Fix uw kbd bl default values and keep disabled during init 2020-08-05 17:00:08 +02:00
Christoffer Sandberg f98573aa21 Fix uw kbd bl enable and set/restore enabled state 2020-08-05 14:55:49 +02:00
Christoffer Sandberg 97c6da3e5b
Add uw kbd bl enable set/get methods 2020-08-05 12:32:10 +02:00
Christoffer Sandberg f666df4569 Write uw kbd bl state on resume 2020-08-04 11:52:08 +02:00
Christoffer Sandberg d29b1352c7 Fix typo, rename uw kbd methods 2020-08-04 11:52:08 +02:00
Christoffer Sandberg afbe4cde64 Change color lookup return value 2020-08-04 11:52:08 +02:00
Christoffer Sandberg 17595676b5 Change order of reads and writes for uw keyb backlight 2020-07-30 10:20:56 +02:00
Christoffer Sandberg f1ffca50c4 Logical fixes + color scaling fix + brightness level tweaks 2020-07-28 14:30:08 +02:00
Christoffer Sandberg 06492b22ef
Color and brightness param + scaling of current set color 2020-07-28 13:25:08 +02:00
Christoffer Sandberg f90c513aad
Move brightness parameter in preparation for common use 2020-07-28 11:32:43 +02:00
Christoffer Sandberg a85ccf9a4e
Prepare uw state data structure and lookup for color strings 2020-07-27 16:31:38 +02:00
Christoffer Sandberg 5f2db68a9b
Move static color definitions for use by multiple drivers 2020-07-27 11:36:49 +02:00
Christoffer Sandberg af54fb8d9b Basic uniwill rgb keyboard backlight control through tuxedo-cc-wmi 2020-07-24 12:09:28 +02:00
Christoffer Sandberg 84442d0b2f
Update version to 2.0.5 2020-06-22 16:42:51 +02:00
Christoffer Sandberg 1464197ef7
Add new WMI module aliases 2020-06-22 13:33:41 +02:00
Christoffer Sandberg 2d3f22a579
Move special code handling to where it is actually defined 2020-06-18 10:42:10 +02:00
Christoffer Sandberg 13d9b8bbf8 Add special key-combo when gauge key is pressed 2020-06-16 14:42:52 +02:00
Christoffer Sandberg 8a7052dbda
Add event sending structure for touchpad toggle workaround 2020-06-02 10:34:46 +02:00
Christoffer Sandberg f7d79e6bbc
Add basic probe and wmi notifiers 2020-05-29 17:51:09 +02:00
Christoffer Sandberg 3bb71064ae
Add empty new driver 2020-05-29 16:20:02 +02:00
Christoffer Sandberg e74a3404a7
Add additional id check to existing driver 2020-05-29 13:19:28 +02:00
Christoffer Sandberg da7534772a
Additional decoupling 2020-05-29 11:41:05 +02:00
Christoffer Sandberg 955c683971
Further modularize drivers incl. probe/remove 2020-05-28 18:40:20 +02:00
Christoffer Sandberg bc9a14328c Parameterize keymap 2020-05-27 18:04:50 +02:00
Christoffer Sandberg 27841a685d
Split code for modularizing 2020-05-27 17:08:40 +02:00
Christoffer Sandberg 609c5f19db
Update version to 2.0.4 2020-05-26 14:12:47 +02:00
Christoffer Sandberg acc156357f
More event modifications
- Add rfkill event
- Make sure the events thrown on volume keys do
  not interfere with built-in volume key functionality
- Do not throw unknown key events

Resolves #24 #25
2020-05-26 14:11:08 +02:00
Christoffer Sandberg 6d666d9d25
Text tweaks 2020-05-20 13:36:07 +02:00
Christoffer Sandberg b8a4dc18e3
Update version & changelog
Plus.. suppress output from sed when building. Note, sed is only
used for packaging and otherwise irrelevant. However, it should not
look like an error.
2020-05-19 16:11:10 +02:00
Christoffer Sandberg 40d964fa1c
Text and description updates 2020-05-19 15:42:50 +02:00
Christoffer Sandberg 60cb7e91ae
Add touchpad toggle events for new and old devices
Resolves #22
2020-05-19 14:39:22 +02:00
Christoffer Sandberg aa1d22124e
Add keyboard events
Configures tuxedo-keyboard to send key events

  KEY_KBDILLUMUP
  KEY_KBDILLUMDOWN
  KEY_LIGHTS_TOGGLE
  KEY_KBDILLUMTOGGLE

on the received WMI events

Needed by other keyboard backlight drivers (see #21).
2020-04-23 13:14:50 +02:00
Christoffer Sandberg c3d1773264
Update version to 2.0.2
Add tuxedo_keyboard.conf to packaging. Installs into
  /etc/modprobe.d/tuxedo_keyboard.conf

Add transitional package from tuxedo-keyboard-dkms to just
tuxedo-keyboard.
2020-04-15 17:52:40 +02:00
Christoffer Sandberg 060297acee Add module alias for the used WMI GUIDs
Should solve automatic loading issues without using the systemd
solutions.

Fixes #18
2020-04-14 13:02:52 +02:00
Christoffer Sandberg d73bb97038 Merge branch 'packaging' 2020-04-14 12:43:57 +02:00
tuxedoxt 4e0c7aa170
Merge (github) pull request #42 from ashh87/master
Restore state on resume.
2020-04-14 12:31:01 +02:00
Christoffer Sandberg 549e2803e7 Add new packaging base
- Increase version to 2.0.1
2020-03-17 17:00:31 +01:00
Steven Seifried 26a3d2ef83
Add missing character in src/tuxedo_keyboard.c 2020-03-12 22:36:01 +01:00
Ash Hughes 25181b40d2 Turn keyboard off on suspend to prevent default colours showing on resume before driver has control again. 2020-02-14 23:12:15 +00:00
Ash Hughes 3af08adf79 Restore state on resume. 2020-02-14 19:01:24 +00:00
Richard Sailer b2575e6d7a Doc: descriptive macro and var names 2019-11-24 13:14:39 +01:00
Richard Sailer 18961a0551 Move all Symbolic macros together 2019-11-24 12:35:08 +01:00
Richard Sailer 059a598f26 evaluate_wmi_method: proper var names and error messages 2019-11-24 13:13:14 +01:00
Richard Sailer 6314e4704f Control flow cleanup: avoid goto + better error messages 2019-11-24 12:22:20 +01:00
Richard Sailer bdab3dc13e refactor: set_state() --> set_enabled() 2019-11-24 12:02:05 +01:00
Richard Sailer e415bbdbcb Bump version to 2.0.0 due to major rewrites, refactoring and new feature 2019-08-22 04:18:41 +02:00
Richard Sailer 0611e54ec6 Fix: actually change colors with key, not just stay at the same 2019-08-22 04:10:05 +02:00
Richard Sailer 0d915b833b next_color(): Add usefull debug output 2019-08-22 04:08:43 +02:00
Richard Sailer bf601f1eba finally rewire: set next blinking pattern key to set_next_color_whole_kb() 2019-08-19 06:20:06 +02:00
Richard Sailer e5d1aa8110 Add set_next_color_whole_kb() 2019-08-19 06:17:55 +02:00
Richard Sailer 338023dc98 fix kbd_led_state initialization 2019-08-19 05:55:41 +02:00
Richard Sailer 42e5c40f93 introduce set_color_code_region() with sane error checking 2019-08-19 05:55:11 +02:00
Richard Sailer 27aafcf1fd refactor: set_color_region() -> set_color_string_region() 2019-08-19 05:29:54 +02:00
Richard Sailer 06bb6801df kbd_led_state_t: add whole_kbd_color member 2019-08-19 05:28:46 +02:00
Richard Sailer 68eb899f71 Move color list to other global vars + make it static + add comments 2019-08-18 06:28:06 +02:00
Richard Sailer 690b43987a blinking_pattern --> blinking_pattern_t 2019-08-18 06:12:11 +02:00
Richard Sailer f6c08bf036 doc: meaningfull var names: state --> enabled 2019-08-18 06:09:03 +02:00
Richard Sailer 6c80892b31 Move all struct type definitions to the top 2019-08-18 06:03:47 +02:00
Richard Sailer efe641bb42 doc, better names: keyboard --> kbd_led_state 2019-08-18 05:59:24 +02:00
Richard Sailer 6e72e954e5 Add own struct type for kbd_led_state 2019-08-18 05:55:43 +02:00
Richard Sailer 0df6f7362b Add doc: meaningfull variable names 2019-08-18 05:49:12 +02:00
Richard Sailer 5c64a75ec0 Consistent terminology: Section --> Region 2019-08-12 22:26:58 +02:00
Richard Sailer 8ea156a95a Refactor: Buffer --> color_string 2019-08-12 18:34:41 +02:00
Richard Sailer 79eb89923e Declare, define and initialize data structure for avail. kbd colors 2019-08-06 01:53:36 +02:00
Richard Sailer 8385cfa2df More meaningfull var names and some commments for doc purposes 2019-08-04 06:11:06 +02:00
Richard Sailer bbb1646ff7 Some comments and better formatting 2019-08-04 04:33:28 +02:00
Richard Sailer 0a98818376 set_color_region(): more meaningfull variable names 2019-08-04 04:33:00 +02:00
Richard Sailer 4c8fb9937f Refactoring: more meaningfull local variable names 2019-08-04 04:10:59 +02:00
Richard Sailer 2071710a71 Make central data structure blinking_pattern an own data type 2019-08-04 04:04:24 +02:00
Richard Sailer 4f0cb95266 easier names: sysfs attribute --> sysfs attribute file 2019-08-04 03:30:06 +02:00
Richard Sailer ff7eacc2ce Minor refactoring and cleanups 2019-08-04 02:58:15 +02:00
Richard Sailer a493b1d572 Remove unused macro 2019-08-04 02:35:42 +02:00
Richard Sailer c41f8febc2 Finalize module internal refactoring: mode --> blinking_pattern 2019-08-04 02:33:48 +02:00
Richard Sailer edd7b4fb24 Move simple macro up to avoid compiler warning 2019-08-04 01:28:08 +02:00
Richard Sailer 1dcb5d2a03 Merge header with module code since it's local and of no use to other modules 2019-08-04 01:15:57 +02:00
Richard Sailer 6b6de61885 New default keyboard color: white 2019-06-06 17:14:30 +02:00
Richard Sailer 218dce4cf9 .h: Minor cleanup 2019-06-06 17:14:30 +02:00
Richard Sailer a95f9e51e1 Refactor several symbol names: mode --> blinking_pattern to be more descriptive 2019-06-06 17:13:54 +02:00
Richard Sailer 2506b60a3a .c: formatting, readability and some small, isomorph code simplifications 2019-06-04 21:55:56 +02:00
Richard Sailer eb89278121 [..]keyboard.h: Remove inclusion of list.h
It's nowhere needed in .h or .c, whole module builds fine without it
2019-06-04 20:10:59 +02:00
Richard Sailer e116096c4e [..]keyboard.h: remove unnecesarry includes
platform_device.h and module.h are both already included by tuxedo_keyboard.c
2019-06-04 20:07:12 +02:00
Richard Sailer 4d5998ea97 Code style, return type on same line, finally use scripts/Lindent 2019-06-04 19:32:30 +02:00
Richard Sailer d319024029 Refactor: more descriptive names for two functions 2019-06-04 19:18:06 +02:00
Richard Sailer 2d6b5ebaa4 Clean up last unneeded prototypes 2019-05-31 21:55:04 +02:00
Richard Sailer 5bf846229a Clean up a lot of other unnecesarry prototypes 2019-05-31 21:55:04 +02:00
Richard Sailer 41541a3118 Remove now useless init/exit function prototypes 2019-05-31 21:55:04 +02:00
Richard Sailer 1ce4d04425 Move sysfs attribute file managment from .h to .c
It's specific to our compilation unit, nothing to export
2019-05-31 21:53:12 +02:00
Richard Sailer 4d57e59887 Move module parameter handling from .h to .c file
Other compilation units (CUs) including this header file do not need
module parameter handling. It's specific to our CU. Header files are meant to
communicate/interface with outside CUs
2019-05-31 21:50:52 +02:00
Richard Sailer 8f827c8761 Move all static global variables from .h to .c
Static global variables are compilation unit (CU) local. Making them accessible
to each other CU that includes our .h file makes no sense, they are internal
variables of our CU, therefare, move them to our CU file. .h files are for
"interfaces" to other CUs
2019-05-31 21:24:48 +02:00
Richard Sailer 80fd1b3ee3 Move all the static function declarations from .h to .c
Making a function static means "this function is compilation-unit-locale and
cannot be used (linked to) by others".

Putting a function prototype p into a header file h means every other module m
that includes h can call p.

Putting a static function prototype into a header file means "you can call this,
but you can not call this" which makes no sense. All this prototypes all only
needed compilation unit internally (and should only be used so). This commit
moves them where they belong. And subsequent commits will clean them up
because most are not necesarry in the .c file.
2019-05-31 21:16:10 +02:00
Richard Sailer 41623907ad Convert project to Linux Kernel Coding style using GNU indent
indent -kr -i8 -ts8 -sob -l80 -ss -bs -psl tuxedo_keyboard.*
2019-05-31 20:43:13 +02:00
Richard Sailer b0f76c723f Remove unnecesarry checks/ ternary expressions 2019-05-31 20:43:13 +02:00
Vinothan Shankar 64ca37889f Enable extra region when it exists, instead of when it doesn't 2019-02-02 14:47:52 +00:00
cloritz be4dcb3eab Add Year in Copyright 2018-06-27 09:13:41 +02:00
Christian Loritz 134c6d9831 Initial commit 2018-06-08 11:56:32 +02:00