[184.108.40.206 / CLPS711x/SkyMinder] module integration issue: keyboard driver _still_ not working after port from 2.4.27
From: Luke Kenneth Casson Leighton (lkcl_at_lkcl.net)
Date: Thu, 21 Apr 2005 19:28:45 +0100 To: firstname.lastname@example.org, Linux ARM Kernel list <email@example.com>
after some thought, i decided on friday to port all of the 2.4.27
code over to 220.127.116.11.
bearing in mind that reading from /dev/input/evdev0 worked fine
on 2.4.27 - and now also works fine under 18.104.22.168 - the exact
same problem occurs on 22.214.171.124 as occurred under 2.4.27 -
hanging of the linux kernel whilst providing absolutely zero
crash/debugging information responses whatsoever.
this device does _not_ have and cannot have a standard PC keyboard
attached to it.
in order to be able to debug what is going on, i have enabled
a dummy/virtual serial console, all is well so far.
in order to test the screen, i have written, enabled, tested,
confirmed as reasonably working, a framebuffer driver (which
i would like to make the console framebuffer - eventually -
when the serial console is disabled and no longer needed -
so i am enabling Framebuffer Console support AS WELL as serial
now i load the keyboard event module... splat - absolutely no response:
okay, let's try that again.
install the keyboard event module.
install evdev module.
run a program (multilog) which is a bit like tail -f except it outputs
to a logging file rather than to stdout on /dev/input/evdev0 and press a
do a hexdump -C on the output from multilog - GREAT!
so, individually, the components work fine.
put them together, and something goes badly wrong.
has _anyone_ else tried running two console drivers at the
should it be expected to work?
any assistance / guidance greatly appreciated.
----- Forwarded message from Luke Kenneth Casson Leighton <firstname.lastname@example.org> -----
From: Luke Kenneth Casson Leighton <email@example.com>
Subject: [2.4.27 arm skyminder] writing new keyboard handler - help!
hi, please respond cc to me because i am not on the lkml.
for a new arm linux embedded device called a skyminder, i'm responsible
for getting all the drivers working. ha ha.
the success of this device presents the linux community with
an opportunity to own a linux-based mobile phone (even if it's
not a very small phone - 8cm x 10cm x 1cm) - and it has a GPS
module in it, as well.
i'm endeavouring to adapt various bits of code to create a
keyboard driver. they've adopted 2.4.27 and are too far down
the line to move to 2.6 - yet.
i particularly want to avoid - if i can - compiling this keyboard
driver under development into the kernel (even though it's the primary
keyboard) because downloading 600k over a serial link into flash ram
isn't a) funny b) a good idea c) slows development time down.
with that in mind, so far, i have:
- cut/paste pc_keyb.c just like everyone else has (in celps_keyb.c,
c711x_keyb.c, dummy_keyb.c etc.) to create k_translate,
k_unexpected_up, k_setkeycode and k_getkeycode routines.
- cut/paste usbkbd.c and adapted it to successfully call
input_report_key on a key press and key release.
then, on installation of module input, keybdev and sky_buttons,
i happily get debug messages indicating key presses (keycode 31
indicating 's') ... but no actual key events appear down my serial
so, my question is: does anyone know off the top of their heads what i
may have missed out that causes the keybdev event handler to _not_
actually stuff keys out?
am i... like... missing something really obvious, given that
the console has been set to "serial"?
where should i look to, to find the keys being outputted, if they're
help, help, gloop.
-- -- <a href="http://lkcl.net">http://lkcl.net> -- ----- End forwarded message ----- -- -- <a href="http://lkcl.net">http://lkcl.net> -- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to firstname.lastname@example.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/