URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 78334
[ Назад ]

Исходное сообщение
"bioskeys on laptop"

Отправлено tekirinmeka , 20-Янв-08 23:21 
я надеюсь что здесь кто-нибудь сталкивался с похожей проблемой

в общем у меня дистр 2007.1 на ноуте dell inspiron 1501
поставил ядро 2.6.23
перестали работать эти самые клавиши (переключение яркости монитора, hibernate, standby)

посмотрел я в input devices/keyboards
atkbd работает там в ядре
где и что ещё смотреть не знаю
дело в том что уже с момента загрузки ядра эти клавиши перестают работать
т.е. при загрузке CMOS клавиши(яркости монитора) работают
при загрузке grub тоже
а вот уже при загрузке самого ядра две разницы
при старом 2.6.17-16 да
при новом 2.6.23.12 нет

и в messages или на экран во время загрузки ядро сообщает когда я жму эти клавиши
Jan 19 17:55:45 lptp_mdv kernel: atkbd.c: Unknown key pressed (translated set 2, code 0x86 on isa0060/serio0).
Jan 19 17:55:45 lptp_mdv kernel: atkbd.c: Use 'setkeycodes e006 <keycode>' to make it known.
Jan 19 17:55:46 lptp_mdv kernel: atkbd.c: Unknown key pressed (translated set 2, code 0x85 on isa0060/serio0).
Jan 19 17:55:46 lptp_mdv kernel: atkbd.c: Use 'setkeycodes e005 <keycode>' to make it known.
я пологаю проблема в драйвере atkbd
посмотев документацию и погуглив
обнаружил сию рекомендацию

it might be that the kernel table
   does not know about this key. Here's how to find them

   - switch to the console (or take a look at dmesg)

   - press every key that did not show up so far

   - for every unkown key you should see something like:
  
   atkbd.c: Unknown key pressed (translated set 2, code 0x93 on isa0060/serio0).
   atkbd.c: Use 'setkeycodes e013 ' to make it known.
   atkbd.c: Unknown key released (translated set 2, code 0x93 on isa0060/serio0).
   atkbd.c: Use 'setkeycodes e013 ' to make it known.
  
   To find the keycodes that must be used, take a look at
   /usr/include/linux/input.h and find the number that corresponds to the
   label of the key. Next, do what the kernel told you and create a script
   that runs at system boot, or modify /etc/rc.sysinit if it exists. This
   script will need to insert the keycodes into the kernel table by running
   a command or series of commands like this:
  
   setkeycodes e013 140  # This is the Calc key
[/quote]
посмотрев в input.h возможно я нашёл то что мне нужно
#define KEY_BRIGHTNESSDOWN    224
#define KEY_BRIGHTNESSUP    225
почитав мануал на setkeycodes стало понятно что он даёт возможность задать соответсвие только до 127 кода

пропустив через showkeys -k эти клавиши мне оно выдало вот такое
keycode   0 press
keycode   1 release
keycode  97 release
keycode   0 press
keycode   1 release
keycode  96 release

по три кода на две клавишы
т.е. приб яркость 0,1,97; убавить 0,1,96
и как такое записывать не понятно...
SOS!


Содержание

Сообщения в этом обсуждении
"bioskeys on laptop"
Отправлено tekirinmeka , 20-Янв-08 23:56 
совсем забыл
клавиши эти
Fn + Arrow Up - Increase Brightness
Fn + Arrow Down - Decrease Brightness
дистр mandriva