 This documentation covers the present release version of the OpenWrt Kamikaze branch. Kamikaze is a completely new system, which has been re-written from the bottom. OpenWrt Kamikaze is best described as a highly flexible Linux distribution for embedded devices, with a strong integration of either wired or wireless (or both) network services.
 Instead of trying to create a single, static firmware, OpenWrt Kamikaze provides a fully writable filesystem with package management. This frees the user from the application selection and configuration provided by the vendor and allows you to customize the device through the use of packages to suit any application. For developers, OpenWrt Kamikaze is a framework on which to build an application without having to build a complete firmware around it; for users this means the ability for full customization, and to use the device in ways never envisioned.

\paragraph{Design choice}
 There are several different embedded operating systems competing for both developers and vendors attention. The OpenWrt project has made a significant set of design choices from an early point on:
\subparagraph{Free Software}
 OpenWrt is a free software project. It's source-code, released under the GNU GPL license, is free for anyone to study, use and re-distribute in respect to the requirements of the license.
\subparagraph{Linux kernel}
 OpenWrt is based on the Linux kernel, Kamikaze has with a few exceptions moved to the most recent 2.6 kernel version. The Linux kernel is well supported and easily customized.
\subparagraph{Uclibc}
 Uclibc is a C library for developing embedded Linux systems. It is much smaller than the GNU C Library, but nearly all applications supported by glibc also work perfectly with Uclibc.
\subparagraph{Package management}
 OpenWrt has an integrated package management system based on IPKG. IPKG is a very lightweight package management system, and it was designed for Linux installations with severe hardware limitations. The IPKG allows for dynamic installation/removal of packages on a running system.

\paragraph{Focus}
 OpenWrt Kamikaze aims at being a transparent system with a uniform system for configuration, e.g. the system will always look and feel the same independent of the platform it is installed on. Kamikaze is an extremely flexible system and it is easy to expand and modify. OpenWrt Kamikaze supports presently a wide range of networked devices from 'of-the-shelf' wifi routers to the OLPC, X has been ported to the system and there is even a LiveCD.

\paragraph{Target platforms}
 The WhiteRussian branch of OpenWrt was originally targeted at Broadcom based wireless routers, but today the Kamikaze branch has confirmed support of an extensive list of platforms:

\begin{Verbatim}
 Infineon/ADMtek ADM5120
 Infineon/ADMtek ADM5120
 AMCC PowerPC 440
 Texas Instruments AR7
 Atmel AT91
 Atheros AR231x/5312
 RMI/AMD Alchemy 1500
 Atmel AT32AP7000
 Broadcom BCM47xx/53xx
 Broadcom BCM47xx/53xx
 Broadcom BCM63xx
 Axis Etrax-LX100v2
 Intel IOP32x
 Intel IXP42x
 AMCC PowerPC 405
 Marvell/Intel PXA250
 Mikrotik RouterBoard 532
 RDC3211
 x86
 \end{Verbatim}
 
\subparagraph{Other platforms}
 There are a number of other platforms which are either un-maintained, or broken, in the development source tree. Their presence in trunk is mainly due to historical reasons and/or if developer interest should arise again. Furthermore, there are a number of platforms which have Work-In-Progress (WIP) status, wherefore they are not tagged with 'supported' (at the moment).

\subparagraph{Architectures} 
 The supported architectures are ranging across a broad spectrum of processors generally found on embedded systems, and presently include:
 
 \begin{Verbatim}
 MIPS
 PPC
 ARM
 AVR32
 cris
 i386
 \end{Verbatim}
 
 \subparagraph{Requirements}
The minimum hardware requirements for a default OpenWrt Kamikaze system, on the listed platforms, are 4 MB Flash and 16 MB RAM. It is possible to build micro-images of Kamikaze, but due to the limited functionality this is not recommended.
 
\paragraph{OpenWrt history}
 The OpenWrt project found its beginning in November of 2003 as a result of discussion caused by information posted on the Linksys WRT54G hacking page on seattlewireless.net. These discussions quickly grew to have their own IRC channel: wrt54. The first named OpenWrt developers were mbm and groz. Shortly thereafter kaloz joined the project and assumed responsibility for hosting and maintaining the website at its current location; openwrt.org.
 
 The first OpenWrt versions were based on Linksys GPL sources for the WRT54G model. They were just the standard Linksys firmware with a stripped down file system and some additional applications.
 
 In mid 2004 the expanding developer team wanted more flexibility for the project. With the help of Manuel Novoa III, OpenWrt started using the buildroot from the Uclibc project. This new version was known as OpenWrt "stable releases" (codename WhiteRussian) and was/is widely in use. there are still many OpenWrt derivates, like the Freifunk Firmware or Sip@Home, which are based on this version.
 
 With the beginning of 2005 new developers joined the project. After some months of closed development the core-team decided to publish the first "experimental" version of OpenWrt Kamikaze. The experimental versions used a heavily customized build system based on buildroot2 from the Uclibc project.
 
 At this point the OpenWrt project began to use official Linux kernel sources and added patches for specific processors and network interface drivers. The developer team reimplemented most of the functionality offered by different device vendors by studying the differences between the GPL code shipped by the vendors and the stock kernels. 
 
\subparagraph{OpenWrt WhiteRussian}
 The codename of the first OpenWrt release was WhiteRussian, in honour of the renown cocktail. Development of the WhiteRussian branch has ended with the release of OpenWrt WhiteRussian 0.9.
 
 \subparagraph{OpenWrt Kamikaze}
 The current development is focused on the new branch codename: Kamikaze. Release is aimed at taking place on monthly intervals, as far as this is possible. The current development sources of the project are found in the subversion repository of the OpenWrt project (dev.openwrt.org).  

\paragraph{Credits and License}
 OpenWrt WhiteRussian and Kamikaze are licensed under the GNU GPL license, and the source-code is a product of the combined work and participation of all the involved developers and members of OpenWrt.org. 
