Re: Equivalent of /dev/input/mice for keyboards

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alessio,

On Fri, Jan 02, 2009 at 03:29:53PM -0800, Alessio Sangalli wrote:
> Hi, I have developed a PS/2 driver for a new ARM-based hardware.
> 
> I have used the serio subsystem and I can test with input-event or
> similar programs that the keyboard and mouse I have connected work well.
> 
> Now, this platform, being an embedded ARM board, does not have a
> "console" that can be attached to the keyboard. I only connect with
> serial port or telnet. And here I am getting confused: I can read one
> device at a time by opening /dev/input/event*.
> 
> I would like to write my userspace application so that it gets all the
> input from the various keyboards (can be up to two PS/2 keyboards + USB
> ones) and process it. The struct input_event is very convenient but what
> I am doing now is to open all the event* devices and select() them. This
> wouldn't probably work if I connect/disconnect a device on the fly. It
> would be much easier if I had a device similar to input/mice that
> automatically does the muxing for me...
> 

I am very hesitant adding such multiplexing device to the kernel. While
it is pretty easy to write one we had only pain from them. There are all
kinds of quirks, grabs, and workarounds because people are using
/dev/input/mice and console but at the same time want to use event
devices for some of the hardware.

I suppose we could make it depend on CONFIG_EMBEDDED and default to no
and have a big warning in the description that it is only supposed to be
used on embedded boards...

Doing select on event devices in userspace should actually work equally
well and you can either listen to netlink hotplug events or poll
/proc/bus/input/devices to detect when you need to add new device to the
mix. I would prefer this userspace solution.

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux