[systemd-bugs] [Bug 72311] New: Samsung 700G series keyboard is not matched by keymap rules

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Dec 4 04:31:46 PST 2013


https://bugs.freedesktop.org/show_bug.cgi?id=72311

          Priority: medium
            Bug ID: 72311
          Assignee: systemd-bugs at lists.freedesktop.org
           Summary: Samsung 700G series keyboard is not matched by keymap
                    rules
        QA Contact: systemd-bugs at lists.freedesktop.org
          Severity: enhancement
    Classification: Unclassified
                OS: Linux (All)
          Reporter: dpisklov at gmail.com
          Hardware: x86-64 (AMD64)
            Status: NEW
           Version: unspecified
         Component: general
           Product: systemd

Created attachment 90226
  --> https://bugs.freedesktop.org/attachment.cgi?id=90226&action=edit
Patch for Samsung 700G Fn keys mapping

I'm using udev-208 on Gentoo. I found that some of my Fn keys are not working,
namely - keyboard backlit up/down, fan control and settings.

$ cat /sys/class/dmi/id/product_name
700G7C

After some googling I found that I need to look into this file:
/lib/udev/hwdb.d/60-keyboard.hwdb
I found plenty of Samsung models in there, but not mine. I actually managed to
add my model by changing this:

# Series 5
keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700Z*:pvr*
 KEYBOARD_KEY_ce=!prog1                                 # Fn+F1 launch settings
 KEYBOARD_KEY_a0=!mute                                  # Fn+F6 mute
 KEYBOARD_KEY_ae=!volumedown                            # Fn+F7
 KEYBOARD_KEY_b0=!volumeup                              # Fn+F8
 KEYBOARD_KEY_97=!kbdillumdown                          # Fn+F9 keyboard
backlight down
 KEYBOARD_KEY_96=!kbdillumup                            # Fn+F10 keyboard
backlight up
 KEYBOARD_KEY_b3=!prog3                                 # Fn+F11 fan/cooling
mode changer
 KEYBOARD_KEY_d5=!wlan                                  # Fn+F12 wlan/airplane
switch


to that:
# Series 5
keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700Z*:pvr*
keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700G*:pvr*
 KEYBOARD_KEY_ce=!prog1                                 # Fn+F1 launch settings
 KEYBOARD_KEY_a0=!mute                                  # Fn+F6 mute
 KEYBOARD_KEY_ae=!volumedown                            # Fn+F7
 KEYBOARD_KEY_b0=!volumeup                              # Fn+F8
 KEYBOARD_KEY_97=!kbdillumdown                          # Fn+F9 keyboard
backlight down
 KEYBOARD_KEY_96=!kbdillumup                            # Fn+F10 keyboard
backlight up
 KEYBOARD_KEY_b3=!prog3                                 # Fn+F11 fan/cooling
mode changer
 KEYBOARD_KEY_d5=!wlan                                  # Fn+F12 wlan/airplane
switch


So first thing is - can you add this line in the repo?

Second - "Series 5" comment is indeed misleading for 700XXX series laptops...

Third thing:
few lines down in the file, there's a block:
keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700Z*:pvr*
 KEYBOARD_KEY_ba=ejectcd
 KEYBOARD_KEY_96=keyboardbrightnessup
 KEYBOARD_KEY_97=keyboardbrightnessdown

Apparently, this simply doesn't work, at least 2 last lines, as (it seems)
keyboardbrightnessup/down is not correct key. I tried changing the blocks above
from kbdillumdown/up to keyboardbrightnessdown/up and found that udev simply
ignores those rules and doesn't apply these codes. So I guess this block can be
removed altogether to avoid confusion.

PS I now got my keys recognized by X correctly as
XF86KbdBrightnessUp/XF86KbdBrightnessDown but they are not doing anything - I
wonder if someone happens to know how to fix that?..

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/systemd-bugs/attachments/20131204/706ad8f9/attachment-0001.html>


More information about the systemd-bugs mailing list