+ <p>To learn more about OpenWrt, you can visit this website:
+ <a href="http://openwrt.org/">http://openwrt.org/</a></p>
+
+ </div>
+
+ <div class="main">
+ <div class="titre">
+ <h1>OpenWrt Kernel Module Creation Howto</h1>
+ </div>
+
+ <h2><a name="about_module" id="about_module"></a>About OpenWrt Kernel Module Compilation</h2>
+
+ <p>You are planning to compile a kernel module? This howto will
+explain what you have to do, to have your kernel module installable as
+an ipkg.</p>
+
+ <h2><a name="kernel" id="kernel"></a>Enable the kernel options</h2>
+
+ <p>Enable the kernel options you want by modifying
+build_mipsel/linux/.config. We are assuming, that you already had your
+kernel compiled once here. You can do the modification by hand or by
+
+<pre>
+$ cd build_mipsel/linux
+$ make menuconfig
+</pre>
+
+And copy it, so your changes are not getting lost, when doing a 'make
+dirclean'. Here we assume that you are compiling for Broadcom chipset
+based devices:
+
+<pre> $ cp .config ../../../target/linux/linux-2.4/config/brcm </pre>
+
+</p>
+ <h2><a name="buildroot_option" id="buildroot_option"></a>Create a buildroot option</h2>
+
+ <p>Create a buildroot option by modifying/inserting into
+target/linux/Config.in, e.g.
+
+<pre>
+config BR2_PACKAGE_KMOD_USB_KEYBOARD
+ tristate "Support for USB keyboards"
+ default m
+ depends BR2_PACKAGE_KMOD_USB_CONTROLLER
+</pre>
+</p>
+
+ <h2><a name="binary" id="binary"></a>Define the binary files for the kernel module</h2>
+
+ <p>Define the binary files for the kernel module by modifying/inserting into
+target/linux/linux-2.4/Makefile, e.g.