To fix this once and for all and reboot the computer early, feel free to use the code at https://github.com/vogelchr/e1000e_fsckup_initcpio.
| From Chris’ Miscellanea |
My place to post silly pictures and rants, even though I’m no longer a PhD-student.
| From Chris’ Miscellanea |
![]() |
| From Chris’ Miscellanea |
![]() |
| From 2013-03-31 |
# lsusb -s 1:14
Bus 001 Device 014: ID 1294:1320 RISO KAGAKU CORP.
[10772.855386] usb 1-1.6: new low-speed USB device number 15 using ehci-pci
[10772.949641] hid-generic 0003:1294:1320.000D: hiddev0,hidraw2: USB HID v1.10 Device [MAIL MAIL ] on usb-0000:00:1a.0-1.6/input0
$ cat /etc/udev/rules.d/99_webmail_notifier.rules
# USB Webmail Notifier (RGB LED)
SUBSYSTEM=="hidraw" SUBSYSTEMS=="usb", ATTRS{idVendor}=="1294", ATTRS{idProduct}=="1320", GROUP="users", MODE="0660", SYMLINK="webmailnotify"
$ echo -en '\001\0\0\0\0' >/dev/webmailnotify
[11170.163495] hid-generic 0003:1294:1320.000D: extract() called with n (56) > 32! (swapper/0)
![]() |
| From Chris’ Miscellanea |
![]() |
| From Chris’ Miscellanea |
![]() |
| From Chris’ Miscellanea |
![]() |
| From M-Audio Fast Track Pro |
![]() |
| From M-Audio Fast Track Pro |
![]() |
| From M-Audio Fast Track Pro |
![]() |
| From M-Audio Fast Track Pro |
![]() |
| From M-Audio Fast Track Pro |
[root@fbsd ~]# cat /etc/udev/rules.d/99_keyboard_keymap.rules
SUBSYSTEM=="input", ENV{ID_INPUT_KEYBOARD}=="1", ENV{XKBMODEL}="pc105", ENV{XKBLAYOUT}="de", ENV{XKBVARIANT}="nodeadkeys"
[ 2888.705] (II) XINPUT: Adding extended input device "Das Keyboard" (type: KEYBOARD, id 8) [ 2888.705] (**) Option "xkb_rules" "evdev" [ 2888.705] (**) Option "xkb_model" "pc105" [ 2888.705] (**) Option "xkb_layout" "de" [ 2888.705] (**) Option "xkb_variant" "nodeadkeys"

![]() |
| From chris' blog |
![]() |
| From chris' blog |
| From chris' blog |
![]() |
| From chris' blog |
![]() |
| From chris' blog |
| From chris' blog |

I currently have a iBook-G4 on my desk, running Linux. Everything is dandy, only a few things with the keyboard are odd. Two keys are swapped: “°^” (to the left of the number 1-key on a German keyboard) and “<>” (to the left of “Y” on a German keyboard)". And the right ALT key seems to be mapped to the “Enter” function. I got it running after messing around with the Xorg xkb settings (which is a nightmare, btw.) but it is clear that the problem is somewhere deeper.
There’s some serious mapping error for this keyboard in the kernel’s table stored in adbhid.c.
| Key | ADB Code | Key is… | Key should… |
| <> | 0x32 | KEY_GRAVE | KEY_102ND |
| °^ | 0x0a | KEY_102ND | KEY_GRAVE |
| R-Alt | 0x34 | KEY_KPENTER | KEY_RIGHTALT |
Here’s a patch that makes this keyboard behave:
$ cat ~/adbhid_c.patch
--- ./drivers/macintosh/adbhid.c.orig 2012-10-06 15:52:16.032673677 +0200
+++ ./drivers/macintosh/adbhid.c 2012-10-06 16:23:23.708911092 +0200
@@ -798,7 +798,7 @@
memcpy(hid->keycode, adb_to_linux_keycodes, sizeof(adb_to_linux_keycodes));
- printk(KERN_INFO "Detected ADB keyboard, type ");
+ printk(KERN_INFO "Detected ADB keyboard, type (%x) ",original_handler_id);
switch (original_handler_id) {
default:
printk("<unknown>.\n");
@@ -807,11 +807,19 @@
case 0x01: case 0x02: case 0x03: case 0x06: case 0x08:
case 0x0C: case 0x10: case 0x18: case 0x1B: case 0x1C:
- case 0xC0: case 0xC3: case 0xC6:
+ case 0xC0: case 0xC6:
printk("ANSI.\n");
input_dev->id.version = ADB_KEYBOARD_ANSI;
break;
+ case 0xC3:
+ printk("ANSI (iBook G4 German).\n");
+ input_dev->id.version = ADB_KEYBOARD_ANSI;
+ hid->keycode[0x32] = KEY_102ND; /* German: left of Y, less/greater */
+ hid->keycode[0x0a] = KEY_GRAVE; /* German: left of 1 */
+ hid->keycode[0x34] = KEY_RIGHTALT;
+ break;
+
case 0x04: case 0x05: case 0x07: case 0x09: case 0x0D:
case 0x11: case 0x14: case 0x19: case 0x1D: case 0xC1:
case 0xC4: case 0xC7:
![]() |
| From chris' blog |
![]() |
| From chris' blog |