Commit graph

438 commits

Author SHA1 Message Date
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