2.1. Linux Kernel Configuration


In Linux, your kernel should contain support for the basic subsystem and protocol support, so that the Bluetooth drivers you install later can be used, and the tools and utilities can communicate with them.

In the 2.4 Linux kernel, the Bluetooth configuration is as simple as selecting the options shown here. I personally choose to make them modules, because I can load and unload them at runtime, which makes for a faster system overall, and I can debug and recompile these modules without having to reboot or rebuild my entire kernel.

Figure 2-1. Bluetooth Kernel Configuration Options

If you are the type that prefers to edit the kernel .config configuration file manually, here are the options you should enable that matches the screenshot in figure 2-1:

			CONFIG_BLUEZ=m
			   CONFIG_BLUEZ_L2CAP=m
			   CONFIG_BLUEZ_SCO=m
			   CONFIG_BLUEZ_RFCOMM=m
			   CONFIG_BLUEZ_RFCOMM_TTY=y
			   CONFIG_BLUEZ_BNEP=m
			   CONFIG_BLUEZ_HCIUSB=m
			   CONFIG_BLUEZ_HCIUART=m
			   CONFIG_BLUEZ_HCIUART_H4=y
			   CONFIG_BLUEZ_HCIDTL1=m
			   CONFIG_BLUEZ_HCIBT3C=m
			   CONFIG_BLUEZ_HCIBLUECARD=m
			   CONFIG_BLUEZ_HCIBTUART=m
			   CONFIG_BLUEZ_HCIVHCI=m
			
		  

From here, you can simply issue the standard 'make modules && make modules_install' command to build and install support for Bluetooth in your Linux kernel.

That was painless, wasn't it?