diff options
-rw-r--r-- | docs/Makefile | 3 | ||||
-rw-r--r-- | docs/network.tex | 10 | ||||
-rw-r--r-- | docs/wireless.tex | 52 |
3 files changed, 65 insertions, 0 deletions
diff --git a/docs/Makefile b/docs/Makefile index ffc5bbb06..f6caa8260 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -32,6 +32,9 @@ clean: cleanup cleanup: FORCE rm -f *.log *.aux *.toc *.out *.lg *.dvi *.idv *.4ct *.4tc *.xref *.tmp *.dvi +$(eval $(call RequireCommand,latex, \ + You need to install LaTeX to build the OpenWrt documentation \ +)) $(eval $(call RequireCommand,pdflatex, \ You need to install LaTeX to build the OpenWrt documentation \ )) diff --git a/docs/network.tex b/docs/network.tex index 7d811ba7f..16e5571ae 100644 --- a/docs/network.tex +++ b/docs/network.tex @@ -102,3 +102,13 @@ As value it takes a list of ports with these optional suffixes: The CPU port defaults to tagged, all other ports to untagged. On Broadcom hardware the CPU port is always 5. The other ports may vary with different hardware. + +For instance, if you wish to have 3 vlans, like one 3-port switch, 1 port in a +DMZ, and another one as your WAN interface, use the following configuration : + +\begin{Verbatim} +config switch "eth0" + option vlan0 "1 2 3 5*" + option vlan1 "0 5" + option vlan2 "4 5" +\end{Verbatim} diff --git a/docs/wireless.tex b/docs/wireless.tex index 67be1d2aa..861e04dc4 100644 --- a/docs/wireless.tex +++ b/docs/wireless.tex @@ -3,6 +3,12 @@ The WiFi settings are configured in the file \texttt{/etc/config/wireless} it should detect your card and create a sample configuration file. By default '\texttt{option network lan}' is commented. This prevents unsecured sharing of the network over the wireless interface. +Each wireless driver has its own configuration script in \texttt{/lib/wifi/driver\_name.sh} which handles +driver specific options and configurations. This script is also calling driver specific binaries like wlc for +Broadcom, or hostapd and wpa\_supplicant for atheros. + +The reason for using such architecture, is that it abstracts the driver configuration + \paragraph{Generic Broadcom wireless config:} \begin{Verbatim} @@ -210,3 +216,49 @@ Only the following mode combinations are supported: \item 1x \texttt{adhoc} \end{itemize} \end{itemize} + +\paragraph{Adding a new driver configuration} + +Since we currently only support two different wireless drivers : Broadcom and Atheros, +you might be interested in adding support for another driver like Ralink RT2x00, +Texas Instruments ACX100/111. + +The driver specific script should be placed in \texttt{/lib/wifi/<driver>.sh} and has to +include several functions providing : + +\begin{itemize} + \item detection of the driver presence + \item enabling/disabling the wifi interface(s) + \item configuration reading and setting + \item third-party programs calling (nas, supplicant) +\end{itemize} + +Each driver script should append the driver to a global DRIVERS variable : + +\begin{verbatim} +append DRIVERS "driver name" +\end{verbatim} + +\subparagraph{scan\_driver} + +This function will parse the \texttt{/etc/config/wireless} and make sure there +are no configuration incompatibilities, like enabling hidden SSIDS with ad-hoc mode +for instance. This can be more complex if your driver supports a lof of configuration +options. It does not enable your wireless driver to work. + +\subparagraph{enable\_driver} + +This function will enable the driver and read the configuration file to create application +specific configuration files for the NAS or supplicant program. It will not check the +configuration consistency. + +\subparagraph{disable\_driver} + +This function should properly shutdown the wireless interfaces and kill associated programs +running on top of it. + +\subparagraph{detec\_driver} + +This function should reliably report the existence of the driver and of one or more of its +wireless interfaces. A basic configuration file has to be generated in the meantime. + |