[FIXED] lirc on Debian with AMD64

On Sat, 29 Sep 2007, Greg Vickers wrote:

> OK, I found out that Debian Etch uses a new input layer, and that the IR
> inputs are in /dev/input/eventX where X corresponds the event number of
> your input devices in 'cat /proc/bus/input/devices'
>
> So my IR device is /dev/input/event1, instead of /dev/lirc or /dev/lirc0.

Just a heads-up, that event number could easily change from boot to boot.
You can preserve your sanity by making a udev rule like the following and
put it (or a symlink) in "/etc/udev/rules.d/"

KERNEL=="event[0-9]", ATTRS{name}=="cx88 IR *", SYMLINK+="lirc%n"

I *think* that rule should work for you Hauppauge card, but I'm making an
educated guess on the 'ATTRS{name}=="cx88 IR *"' bit.

You can confirm/correct the rule by running the following as root:
% udevinfo -a -p `udevinfo -q path -n /dev/input/event1`
where event1 is the lirc dev you want. Hopefully the appropriate match
rule is self-explanatory. '*' behaves as a shell-like wildcard.

-- Brad

--

No votes yet

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

[FIXED] lirc on Debian with AMD64

On Mon, Oct 01, 2007 at 12:04:28AM -0400, Brad Sawatzky wrote:
> On Sat, 29 Sep 2007, Greg Vickers wrote:
>
> > OK, I found out that Debian Etch uses a new input layer, and that the IR
> > inputs are in /dev/input/eventX where X corresponds the event number of
> > your input devices in 'cat /proc/bus/input/devices'
> >
> > So my IR device is /dev/input/event1, instead of /dev/lirc or /dev/lirc0.
>
> Just a heads-up, that event number could easily change from boot to boot.
> You can preserve your sanity by making a udev rule like the following and
> put it (or a symlink) in "/etc/udev/rules.d/"
>
> KERNEL=="event[0-9]", ATTRS{name}=="cx88 IR *", SYMLINK+="lirc%n"

my udev-fu is very weak, but the %n substitutes the kernel supplied
number. in which case you'll get lirc[0-9] depending on which event it
matches. If you only have one ir port that you care about, then you'd
probably always want it to be the *same* symlink regardless of which
event it gets assigned to:

KERNEL=="event[0-9]", ATTRS{name}=="cx88 IR *", SYMLINK+="lirc0"

A

[FIXED] lirc on Debian with AMD64

On Mon, 01 Oct 2007, Andrew Sackville-West wrote:

> On Mon, Oct 01, 2007 at 12:04:28AM -0400, Brad Sawatzky wrote:
> > On Sat, 29 Sep 2007, Greg Vickers wrote:
> >
> > > OK, I found out that Debian Etch uses a new input layer, and that the IR
> > > inputs are in /dev/input/eventX where X corresponds the event number of
> > > your input devices in 'cat /proc/bus/input/devices'
> > >
> > > So my IR device is /dev/input/event1, instead of /dev/lirc or /dev/lirc0.
> >
> > Just a heads-up, that event number could easily change from boot to boot.
> > You can preserve your sanity by making a udev rule like the following and
> > put it (or a symlink) in "/etc/udev/rules.d/"
> >
> > KERNEL=="event[0-9]", ATTRS{name}=="cx88 IR *", SYMLINK+="lirc%n"
>
> my udev-fu is very weak, but the %n substitutes the kernel supplied
> number. in which case you'll get lirc[0-9] depending on which event it
> matches. If you only have one ir port that you care about, then you'd
> probably always want it to be the *same* symlink regardless of which
> event it gets assigned to:
>
> KERNEL=="event[0-9]", ATTRS{name}=="cx88 IR *", SYMLINK+="lirc0"

Argh, you're right. That's a better way to go.

If there is more than one card that could match the ATTRS{name} field, the
OP could add another criteria that matches on the PCI slot number (so two
cards don't fight for the "lirc0" name):

KERNEL=="event[0-9]", ATTRS{name}=="cx88 IR *", KERNELS=="0000:01:09.2", SYMLINK+="lirc0"

-- Brad

--

Syndicate content