| Summary: | lirc-0.10.1-7 It's not working. No device /dev/lirc0. | ||
|---|---|---|---|
| Product: | Mageia | Reporter: | Alex Kotov <alex_q_2000> |
| Component: | RPM Packages | Assignee: | Kernel and Drivers maintainers <kernel> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | Normal | CC: | geiger.david68210, gilles.mouchard, luigiwalser, marja11, pterjan, thierry.vignaud, tmb |
| Version: | Cauldron | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Source RPM: | CVE: | ||
| Status comment: | |||
| Attachments: |
serial_ir (mode2 test)
IR (connection diagram) lirc_options.conf (configuration file) |
||
|
Description
Alex Kotov
2019-04-13 12:12:50 CEST
(In reply to Alex Grant from comment #0) > Description of problem: > I use Mageia-7-beta2 i586 & x86_64. lirc-0.10.1-7 It's not working. No > device /dev/lirc0. > > Version-Release number of selected component (if applicable): lirc-0.10.1-7 > > > How reproducible: > > > Steps to Reproduce: > 1. urpmi --auto lirc; > 2. Change in the file: /etc/lirc/lirc_options.conf > device = /dev/lirc0 > 3. Trying to connect kernel modules... > modprobe lirc_dev; > > modprobe lirc_serial; > modprobe: FATAL: Module lirc_serial not found in directory > /lib/modules/5.0.7-desktop586-4.mga7 > > modprobe ir_lirc_codec > modprobe: FATAL: Module ir_lirc_codec not found in directory > /lib/modules/5.0.7-desktop586-4.mga7 > > modprobe serial_ir > modprobe: FATAL: Module serial_ir not found in directory > /lib/modules/5.0.7-desktop586-4.mga7 > > modprobe sir_ir; > dmesg > [ 331.290395] sir_ir: port existence test failed, cannot continue > 4. service lircd start > 5. mode2 > Using driver devinput on device /dev/lirc0 > Cannot initiate device /dev/lirc0 > > It says here that "lirc_serial" has been changed to "serial_ir": > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/ > ?id=fa5dc29c1fcc9151c3bcfd9e291a2899ae15f61d > > What kernel modules are needed for correct work lirc-0.10.1-7? > > With respect, > Alex Assigning to the kernel maintainers for the answer. CC'ing some submitters of lirc. Assignee:
bugsquad =>
kernel That bug is similar to one in fedora: https://bugzilla.redhat.com/show_bug.cgi?id=1412860 I've got that problem on Mageia 7 with my mceusb devices (USB ID 2304:0225 Pinnacle Systems, Inc. Remote Kit Infrared Transceiver). 'cat /dev/lirc0' output some data when I press keys on my remote controller. Default configuration in /etc/lirc/lirc_options.conf make lircd use /dev/input/event2 but nothing happen when I press some keys. The solution for me was to modify in "driver=devinput" to "driver=default" in /etc/lirc/lirc_options. This make lircd reading input from /dev/lirc0 instead of /dev/input/event2. CC:
(none) =>
gilles.mouchard Hello. Thanks for the answer, Gilles Mouchard Written below is intended for an outdated kernel,has not updated the system for a long time. However, this option was useful to me, because the system the serial_ir kernel module was missing. Meanwhile, the serial port is still present in a variety of hardware platforms. Old computers aren't that old when it comes to Linux. #We update the system, we will work with the latest: urpmi --auto --auto-update #Update the current kernel version, for example: uname -r 5.0.8-desktop586-1.mga7 #Install the devel-kernel packages: urpmi --auto kernel-devel #Install the source code of the current kernel (select from the list by number): urpmi kernel-source #We have accommodation (This is an example): #/usr/lib/modules/5.0.8-desktop586-1.mga7 - working modules of the current kernel #/usr/src/kernel-5.0.8-1.mga7 - the source code for the current kernel #/usr/src/kernel-5.0.8-desktop586-1.mga7 - devel #Install the necessary packages: urpmi --auto make gcc automake bison flex #Create a config of a kernel: cd /usr/src/kernel-5.0.8-1.mga7 make defconfig; make modules_prepare #Prepare modules: cd /usr/src/kernel-5.0.8-desktop586-1.mga7 make defconfig; make modules_prepare #Create an empty directory /111 and copy the source code into it serial_ir.c: mkdir /111 cp /usr/src/kernel-5.0.8-1.mga7/drivers/media/rc/serial_ir.c /111 #Create in /111 file: cd /111; touch ./Makefile #With such content.Yu obj-m += serial_ir.ะพ (mcedit, vi, Vim, GEdit & etc...) #Being in the directory /111 perform: make -C /usr/src/kernel-5.0.8-desktop586-1.mga7 M=$PWD modules #Received serial_ir.ko compressed with a xz: xz -z ./serial_ir.ko #And put the module in the working modules directory of the current kernel: cp ./serial_ir.ko.xz /usr/lib/modules/5.0.8-desktop586-1.mga7/kernel/drivers/media/rc #Update the list of all kernel modules: depmod -a #Stick the module serial_ir to the kernel: modprobe serial_ir #Look like a stick: dmesg p.s. I hope it will be useful to someone. Sorry with the complexities of the English language p.p.s How Are You, Marja van Waes? The Russian community is very worried about you. Sorry I missed this report earlier... serial ir module is now enabled in svn, and will available in next kernel update CC:
(none) =>
tmb Thank You, Thomas Backlund. With respect, Alex Kotov Created attachment 11484 [details]
serial_ir (mode2 test)
Created attachment 11485 [details]
IR (connection diagram)
Created attachment 11486 [details]
lirc_options.conf (configuration file)
Hello, Thomas. I decided to check how the "serial_ir" module was screwed. Results for the kernel 5.4.12-desktop-1.mga7 urpmi --auto lirc setserial; systemctl enable lircd; service lircd restart Contents of my file: /etc/lirc/lirc_options.conf # These are the default options to lircd, if installed as # /etc/lirc/lirc_options.conf. See the lircd(8) and lircmd(8) # manpages for info on the different options. # # Some tools including mode2 and irw uses values such as # driver, device, plugindir and loglevel as fallback values # in not defined elsewhere. [lircd] nodaemon = False driver = default device = /dev/lirc0 output = /run/lirc/lircd pidfile = /run/lirc/lircd.pid plugindir = /usr/lib64/lirc/plugins permission = 666 allow-simulate = No repeat-max = 600 #effective-user = #listen = [address:]port #connect = host[:port] #loglevel = 6 #release = true #release_suffix = _EVUP #logfile = ... #driver-options = ... [lircmd] uinput = False nodaemon = False [modinit] code1 = /usr/sbin/rmmod serial_ir code2 = setserial /dev/ttyS0 uart none code3 = /usr/sbin/modprobe serial_ir # [lircd-uinput] # add-release-events = False # release-timeout = 200 # release-suffix = _EVUP Check the response from the infrared receiver connected to the serial port /dev/ttyS0 (device /dev/lirc0) - see the screenshot of serial_ir.png There is a response! Further... Using the "irrecord -f" utility, I wrote the key codes and the remote name in /etc/lirc/lircd.conf. Of course, systemctl restart lircd. Installed Kodi-18.2 Leia. Tossed in ~/.kodi/userdata/Lircmap.xml and launched. My Kodi, as in previous versions of Mageia is now fine controlled from the remote via the serial port! Hurray! The simplest infrared receiver was built according to this scheme (if someone needs it): see the screenshot of IR.jpg Thank you again, Thomas. I think that the topic can be closed. With respect, Alex Kotov p.s. Sorry for my bad English... This issue has been resolved. Status:
NEW =>
RESOLVED |