Next Previous Contents

3. Kernel

Please read the Kernel-HOWTO to get more information about the compilation process. You'll find the Linux/IrDA code in:

/usr/src/linux/net/irda (protocol stuff)

/usr/src/linux/drivers/net/irda (device drivers)

/usr/src/linux/include/net/irda (header files)

3.1 General Parameters

- Make sure you use kernel 2.2.x sources. If unsure about your kernel version try uname -r.

- Get the latest kernel patch from the Linux/IrDA project http://www.cs.uit.no/~dagb/irda/snapshots/. Put it into /usr/src or where else your kernel sources live and apply something like (replace patch-2_2.0-irdaXXX with the actual file name):


cd /usr/src
tar xvzf patch-2_2.0-irdaXXX.tar.gz
cd linux
patch -p1 -l < ./patch-2_2.0-irdaXXX 

- Experimental support has to be enabled (CONFIG_EXPERIMENTAL).

- Enable sysctl in "General Setup" (CONFIG_SYSCTL).

- You should have proc file system support (CONFIG_PROC_FS).

- Also serial support for the SIR features (CONFIG_SERIAL).

- I am not sure wether there has to be printer support for using a printer with Linux/IrDA (CONFIG_PRINTER). But I assume this feature is not necessary.

- Networking support must be enabled (CONFIG_NET).

- Make sure you have module support (CONFIG_MODULES) in your kernel! Test it e.g. with lsmod.

- Also kerneld support is recommended (CONFIG_KERNELD). But kmod (CONFIG_KMOD) also works. A monolithic kernel seems to work, too.

- Matt Francis wrote: "I notice that some of the modules appear to want not only module support (as noted on the webpage), but also misc user device support." (CONFIG_UMISC).

If you only apply the Linux/IrDA patch, you should not have to do a make clean, so that should save you some time. I suggest you do something like this:


make dep && make all && make modules && make install && make modules_install

If you get really strange errors, then try to rebuild from scratch after a make clean.

3.2 IrDA Specific Parameters

The following is my suggestion for ../linux-2.2.x/Documentation/Configure.help, parts are from Dag Brattli and Andreas Butz:

IrDA subsystem support

CONFIG_IRDA

IrDA(TM) is an industrial standard for infrared wireless communication. Infrared ports let you communicate with printers, modems, fax machines, LANs, and laptops. Speed ranges from 2400bps to 4Mbps. To use this features you need the irda_utils provided by the Linux/IrDA project http://www.cs.uit.no/ dagb/irda/ Further information you may find there and in the Linux/IR-HOWTO at http://www.snafu.de/ wehe/index_li.html Currently it is recommended to build IrDA support as modules only. Please see Documentation/modules.txt. Please note the status of Linux/IrDA is still experimental.

IrDA protocols

IrDA protocol options

CONFIG_IRDA_OPTIONS

You may define some IrDA protocol options.

IrDA compressors

CONFIG_IRDA_COMPRESSION

You may use the compression methods BZIP2 and BSD. These are not IrDA standard. This will allow two linux boxes to handshake compression. It should be compatible with other IrDA devices, although communication will not be compressed then.

Infrared-port device drivers

Three sorts of low level infrared drivers are available: serial, dongle and FIR. They will show up in /proc/net/dev (irda0) after initialisation.

IrTTY (uses serial driver)

Most IrDA chips support StandardInfraRed (SIR), which works up to 115200bps and emulates a serial port (16550A UART). On many laptops this port is detected by the serial support of the kernel, see ``dmesg''. IrTTY connects the Linux/IrDA services to this port. - You should say Y here.

Dongle support

CONFIG_DONGLE

Currently four dongles (infrared adapters for the serial port) are supported. The dongle is an infrared device which may be connected to serial port, if you don't have built-in infrared support for your machine. If you use a dongle together with a laptop you maybe have to disable the IrDA support in the BIOS.

FIR support

FastInfraredSupport (FIR) needs a specific controller chip, which supports up to 4Mps. - Just say Y


Next Previous Contents