Skip to contentSkip to conversation

lirc bug in kernel 4.10-rc1

DISCUSSION Wim Osterholt 1 participant 3 messages Dec 29, 2016 – Jan 10, 2017

lore
Share & tools
lore
#0 lore raw

L.S.,

after appearance of kernel-4.10-rc1 two days ago I was pleasantly surprised to find a question about lirc_serial in 'make oldconfig':

Homebrew Serial Port Receiver (IR_SERIAL) [N/m/?] (NEW) m
Serial Port Transmitter (IR_SERIAL_TRANSMITTER) [Y/n/?] y

I was used to 'lirc_serial: module is from the staging directory, the quality is unknown, you have been warned.'
This always worked perfectly fine with the last working version of lirc: 0.9.0-rc6. Would things finally get better now? NO!

In kernel-4.10-rc1 lirc_serial has been removed from staging. It has vanished completely. If it were only renamed to serial_ir there would be no problem. I just change the modules parameters
options lirc_serial irq=4 io=0x3f8 type=0 txsense=0 softcarrier=0 debug=1
to
options serial_ir irq=4 io=0x3f8 type=0 txsense=0 softcarrier=0 debug=1
and it should work, isn't it?
(Oh, whell, the kernel stuff has no option 'debug'..)

Serial_ir loads without useful messages.
Lirc_dev does not get loaded with it. Loading it manually or not doesn't make any difference.
Irsend will not work. 'hardware does not support sending'

There's another bug of which I don't know wether it is a kernel issue or a lirc issue.
On kernel 4.9 (and below) lirc compiles modules lirc_serial and lirc_dev which work equally well as the in-kernel modules lirc-serial and lirc_dev. You may even exchange them independently. The only difference is that the lirc version knows about the parameter 'debug'.

When I let /usr/src/linux point to 4.10-rc1, then the exact same source of lirc does not compile the transmitter part and things don't work! So using the lirc modules is not even an alternative anymore. Did I miss something?

(For lirc-0.9.0 you'll need a missing patch for the vanished f_dentry stuff
in the kernel source.)

Regards, Wim.

#1 lore raw

Re: lirc bug in kernel 4.10-rc2

On Thu, Dec 29, 2016 at 05:53:58PM +0100, Wim Osterholt wrote:

L.S.,

Quoted 6 lines

after appearance of kernel-4.10-rc1 two days ago I was pleasantly surprised to find a question about lirc_serial in 'make oldconfig':

Homebrew Serial Port Receiver (IR_SERIAL) [N/m/?] (NEW) m
Serial Port Transmitter (IR_SERIAL_TRANSMITTER) [Y/n/?] y

A quickly following release of 4.10-rc2 made sure that lirc_dev was loaded together with serial_ir. However, things still don't work.

I just need to send some codes.
I'm using lirc-0.9.0, which worked fine up to kernel-4.9.1 .

With kernel-4.10-rc1/2 there are two bugs.

1) With the same setup - only the kernel has changed from 4.9 to 4.10 - irsend does not work anymore. I get these logs:

Jan  7 01:55:23 localhost kernel: serial_ir: unknown parameter 'debug' ignored
Jan  7 01:55:24 localhost kernel: serial_ir serial_ir.0: auto-detected active high receiver
Jan  7 01:55:24 localhost kernel: rc_core: IR keymap rc-rc6-mce not found
Jan  7 01:55:24 localhost kernel: Registered IR keymap rc-empty
Jan  7 01:55:24 localhost kernel: input: Serial IR type home-brew as /devices/platform/serial_ir.0/rc/rc0/input10
Jan  7 01:55:24 localhost kernel: rc rc0: Serial IR type home-brew as /devices/platform/serial_ir.0/rc/rc0
Jan  7 01:55:24 localhost kernel: input: MCE IR Keyboard/Mouse (serial_ir) as /devices/virtual/input/input11
Jan  7 01:55:24 localhost kernel: lirc_dev: IR Remote Control driver registered, major 249
Jan  7 01:55:24 localhost kernel: rc rc0: lirc_dev: driver ir-lirc-codec (serial_ir) registered at minor = 0
Jan  7 01:55:24 localhost kernel: IR LIRC bridge handler initialized
Jan  7 01:55:56 localhost lircd-0.9.0[2171]: lircd(default) ready, using /dev/lircd1
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: accepted new client on /dev/lircd1
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: write failed
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: Invalid argument
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: error processing command: SEND_ONCE bat KEY_1
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: transmission failed
Jan  7 01:56:53 localhost lircd-0.9.0[2171]: removed client

Where under kernel 4.9 things go well like:

Jan  7 02:25:08 localhost kernel: lirc_dev: IR Remote Control driver registered, major 250
Jan  7 02:25:08 localhost kernel: lirc_serial: module is from the staging directory, the quality is unknown, you have been warned.
Jan  7 02:25:08 localhost kernel: lirc_serial: unknown parameter 'debug' ignored
Jan  7 02:25:09 localhost kernel: lirc_serial lirc_serial.0: auto-detected active high receiver
Jan  7 02:25:09 localhost kernel: lirc_serial lirc_serial.0: lirc_dev: driver lirc_serial registered at minor = 0
Jan  7 02:25:19 localhost lircd-0.9.0[1970]: lircd(default) ready, using /dev/lircd1
Jan  7 02:25:33 localhost lircd-0.9.0[1970]: accepted new client on /dev/lircd1
Jan  7 02:25:33 localhost lircd-0.9.0[1970]: removed client
Jan  7 02:25:33 localhost lircd-0.9.0[1970]: accepted new client on /dev/lircd1
Jan  7 02:25:34 localhost lircd-0.9.0[1970]: removed client
Jan  7 02:25:34 localhost lircd-0.9.0[1970]: accepted new client on /dev/lircd1
Jan  7 02:25:34 localhost lircd-0.9.0[1970]: removed client
Jan  7 02:25:34 localhost lircd-0.9.0[1970]: accepted new client on /dev/lircd1
Jan  7 02:25:34 localhost lircd-0.9.0[1970]: removed client

2) lirc-0.9.0 gives me the charming choice of using the lirc-made modules (lirc_serial, lirc_dev) or the kernel-made modules (lirc_serial,lirc_dev). Now kernel-4.10 ruined things, I should at least have the option of using the lirc-made modules instead of serial_ir and lirc_dev. However, the modules that lirc makes when using kernel-4.10 do not offer the possibily of transmission. (It has no variable txsense anywhere in it.) Although compiling says '--with-transmitter', there is something in the kernel source that prevents lirc from building that in. That is not derived from the .config file it finds in the source. I don't know what else it is looking for and doesn't find anymore.

Regards, Wim.

#2 lore raw

lirc bug in kernel 4.10-rc3

Quoted 8 lines · Wim Osterholt

On Thu, Dec 29, 2016 at 05:53:58PM +0100, Wim Osterholt wrote:

L.S.,

Quoted 2 lines

after appearance of kernel-4.10-rc1 two days ago...

A quickly following release of 4.10-rc2 made sure that lirc_dev was loaded together with serial_ir. However, things still don't work.

Again no answer and another kernel release, but no fixes.

I just need to only send some codes.
I'm using (gentoo) lirc-0.9.0-rc6, which works fine up to kernel-4.9.2 .

In kernel-4.10-rc1/2/3 there are two bugs.

1) With the same setup - only the kernel has changed from 4.9 to 4.10 - irsend does not work anymore. I get these logs:

Quoted 9 lines
Jan  7 01:55:23 localhost kernel: serial_ir: unknown parameter 'debug' ignored
Jan  7 01:55:24 localhost kernel: serial_ir serial_ir.0: auto-detected active high receiver
Jan  7 01:55:24 localhost kernel: rc_core: IR keymap rc-rc6-mce not found
Jan  7 01:55:24 localhost kernel: Registered IR keymap rc-empty
Jan  7 01:55:24 localhost kernel: input: Serial IR type home-brew as /devices/platform/serial_ir.0/rc/rc0/input10
Jan  7 01:55:24 localhost kernel: rc rc0: Serial IR type home-brew as /devices/platform/serial_ir.0/rc/rc0
Jan  7 01:55:24 localhost kernel: input: MCE IR Keyboard/Mouse (serial_ir) as /devices/virtual/input/input11
Jan  7 01:55:24 localhost kernel: lirc_dev: IR Remote Control driver registered, major 249
Jan  7 01:55:24 localhost kernel: rc rc0: lirc_dev: driver ir-lirc-codec (serial_ir) registered at minor = 0
Quoted 8 lines
Jan  7 01:55:24 localhost kernel: IR LIRC bridge handler initialized
Jan  7 01:55:56 localhost lircd-0.9.0[2171]: lircd(default) ready, using /dev/lircd1
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: accepted new client on /dev/lircd1
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: write failed
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: Invalid argument
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: error processing command: SEND_ONCE bat KEY_1
Jan  7 01:56:52 localhost lircd-0.9.0[2171]: transmission failed
Jan  7 01:56:53 localhost lircd-0.9.0[2171]: removed client

2) lirc-0.9.0 compiled with '--with-transmitter' delivers no transmitter in lirc_serial.ko

Regards, Wim.