Out-of-tree irda subsystem and drivers for Linux
The different drivers require different kernel features to be enabled, especially USB, the ISA DMA API, PCI and TTY. Others target specific platforms. Dependencies can be seen in src/drivers/Kbuild.
The irda module requires Appletalk protocol support to be enabled.
Use make -C src
to build loadable kernel modules for the running kernel.
You can be more specific with the usual Kernel make commands, e.g. make -C "/lib/modules/$(uname -r)/build" M="$(pwd)/src" net/irda.ko
builds just the irda module for the running kernel.
Generate a dkms.conf with autoconf -f && ./configure
, so that you can then use dkms add src
to add it to your DKMS instance. Use dkms install "irda/$(git show --pretty=format:"%cd~%h" --date="format:%Y%m%d" | head -1)"
to build and install the modules once.
The configuration expects all drivers that do not require a specific platform to be buildable and does not include others, i.e. it expects the Kernel to have support for all features mentioned above.
IrTTY for use with Linux's serial driver for all IrDA ports that are 16550 compatible. Most IrDA chips are 16550 compatible. Using IrTTY will however limit the speed of the connection to 115200 bps (IrDA SIR mode).
SIR on SuperH UART.
ESI JetEye PC dongle. The ESI dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ESI dongles you will have to start irattach like this: irattach -d esi
.
ACTiSYS IR-220L and IR220L+ dongles. The ACTiSYS dongles attach to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ACTiSYS dongles you will have to start irattach like this: "irattach -d actisys" or "irattach -d actisys+".
Tekram IrMate 210B dongle. The Tekram dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Tekram dongles you will have to start irattach like this: irattach -d tekram
.
Vishay/Temic TOIM3232 and TOIM4232 based IrDA dongles.
Parallax LiteLink dongle. The Parallax dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Parallax dongles you will have to start irattach like this: irattach -d litelink
.
Mobile Action MA600 dongle. The MA600 dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. The driver should also support the MA620 USB version of the dongle, if the integrated USB-to-RS232 converter is supported by usbserial. To activate support for MA600 dongle you will have to start irattach like this: irattach -d ma600
.
Greenwich GIrBIL dongle. The Greenwich dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Greenwich dongles you will have to start irattach like this: irattach -d girbil
.
Microchip MCP2120. The MCP2120 dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for MCP2120 dongles you will have to start irattach like this: irattach -d mcp2120
.
You must build this dongle yourself. For more information see: http://www.eyetap.org/~tangf/irda_sir_linux.html
Adaptec Airport 1000 and 2000 dongles. Some information is contained in the comments at the top of old_belkin-sir.c.
ACTiSYS IR-200L dongle. The ACTiSYS IR-200L dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ACTiSYS IR-200L dongle you will have to start irattach like this: irattach -d act200l
.
KingSun/DonShine DS-620 IrDA-USB dongle. This USB bridge does not conform to the IrDA-USB device class specification, and therefore needs its own specific driver. This dongle supports SIR speed only (9600 bps).
KingSun Dazzle IrDA-USB dongle. This USB bridge does not conform to the IrDA-USB device class specification, and therefore needs its own specific driver. This dongle supports SIR speed only (9600 through 115200 bps).
KingSun KS-959 IrDA-USB dongle. This USB bridge does not conform to the IrDA-USB device class specification, and therefore needs its own specific driver. This dongle supports SIR speed only (9600 through 57600 bps).
IrDA USB dongles. IrDA-USB support the various IrDA USB dongles available and most of their peculiarities. Those dongles plug in the USB port of your computer, are plug and play, and support SIR and FIR (4Mbps) speeds. On the other hand, those dongles tend to be less efficient than a FIR chipset.
Please note that the driver is still experimental. And of course, you will need both USB and IrDA support in your kernel...
SigmaTel STIr4200 USB IrDa FIR bridge. USB bridge based on the SigmaTel STIr4200 don't conform to the IrDA-USB device class specification, and therefore need their own specific driver. Those dongles support SIR and FIR (4Mbps) speeds.
NSC PC87108 and PC87338 IrDA chipsets. This driver supports SIR, MIR and FIR (4Mbps) speeds.
IrDA support for the Winbond W83977AF super-io chipset. This driver should be used for the IrDA chipset in the Corel NetWinder. The driver supports SIR, MIR and FIR (4Mbps) speeds.
Toshiba Type-O IR and Donau oboe chipsets. These chipsets are used by the Toshiba Libretto 100/110CT, Tecra 8100, Portege 7020 and many more laptops.
IrDA peripheral on the Alchemy Au1000 and Au1100 SoCs.
SMC Infrared Communications Controller. It is used in a wide variety of laptops (Fujitsu, Sony, Compaq and some Toshiba).
ALi M5123 FIR Controller. The ALi M5123 FIR Controller is embedded in ALi M1543C, M1535, M1535D, M1535+, M1535D South Bridge. This driver supports SIR, MIR and FIR (4Mbps) speeds.
VLSI 82C147 PCI-IrDA Controller. This controller is used by the HP OmniBook 800 and 5500 notebooks. The driver provides support for SIR, MIR and FIR (4Mbps) speeds.
SA1100 Internal IR.
VIA VT8231 and VIA VT1211 IrDA controllers, found on the motherboards using those VIA chipsets. To use this controller, you will need to plug a specific 5 pins FIR IrDA dongle in the specific motherboard connector. The driver provides support for SIR, MIR and FIR (4Mbps) speeds. You will need to specify the 'dongle_id' module parameter to indicate the FIR dongle attached to the controller.
Intel PXA2xx Internal FICP which can support both SIR and FIR. This driver relies on platform specific helper routines so available capabilities may vary from one PXA2xx target to another.
MosChip MCS7780 IrDA-USB dongle. USB bridge based on the MosChip MCS7780 don't conform to the IrDA-USB device class specification, and therefore need their own specific driver. Those dongles support SIR and FIR (4Mbps) speeds.
6.6. (See kernel-* tags for versions that support older versions of Linux (down to 4.15).)
The IrDA subsystem was moved to staging in Linux 4.14 and removed in 4.17 due to being unmaintained. There are obviously some use cases for IrDA, so I thought it makes sense to keep maintaining it out-of-tree.