ZD1211 - linux driver for ZyDAS ZD1211 based USB 2.0 WLAN adapters
------------------------------------------------------------------

Reqirements:
------------

- Kernel 2.4.x. I am developing the driver on 2.4.24, but it
  reportedly also works on 2.4.x. If your kernels version is less than
  2.4.22 (for example Red Hat 9.0 is 2.4.20-8), suggest to upgrade kernel 
  for better support on USB 2.0. 
  
- Kernel 2.6.x. This driver has been verify on 2.6.6 and 2.6.7.

- To build zd1211 you will need: Configured kernel source code for the 
  kernel you are running. Ideally, Configured means that you have at 
  least run 'make config', 'make menuconfig', or 'make xconfig'. If your
  platform is not SMP system, please don't config SMP supported, because
  when module loaded, this will make unresolved symbol..
     
- Make sure your kernel usb 2.0 support is running
  - Use lsmod to check "ehci-hcd" module is loaded.
  - If host is not support usb 2.0, zd1211 will run under pure-b mode.


Building zd1211:
------------

1)  untar the package using the command:
    tar zxvf zd1211-XXXX.tar.gz

2)  cd into the new directory and use "make" and "make install"
    to make and install driver.	
    Be sure to have your configured kernel source at /usr/src/linux
    or type make KSRC=[my kernel], replacing [my kernel] with the 
    directory the kernel you want the driver to be compiled for.

Running:
--------

- If you have hotplug installed, the drivers should now be loaded. If not,
  load them by hand: modprobe -v zd1211 
  (or Under zd1211-XXXX/zdsta directory use "insmod zd1211.o" for kernel 2.4.x, 
  "insmod zd1211.ko" for kernel 2.6.x)

- Check if the modules are loaded with lsmod. It should look like this:
  ...
  zd1211          183576   0  (unused)
  ...

- Run 'ifconfig <iface> <your IP address>'

- Run 'iwconfig <iface> ' to configure the wireless setting, here are 
  some examples, more detail information please check with 'man iwconfig'.
  Example:
  iwconfig <iface> essid "My Network"   //Set essid
  iwconfig <iface> channel 1            //Set channel
  iwconfig <iface> mode Managed (Station mode)	//Set operation mode
  iwconfig <iface> mode Ad-Hoc (Ah-Hoc mode)
  iwconfig <iface> rts 512             //Set rts threshold
  iwconfig <iface> frag 512            //Set fragment threshold
  iwconfig <iface> key s:password [2]  //Set encryption key
  iwconfig <iface> power on/off        //Set power-save mode
  ......


Private Parameters:
------------------

In addition to the parameters of iwconfig, some can be set by iwpriv:
- open system authentication: iwpriv <iface> set_auth 0
- shared key authentication:  iwpriv <iface> set_auth 1
Be aware that shared key authentication requires a WEP key.

- long preamble: iwpriv <iface> set_preamble 0
- short preamble: iwpriv <iface> set_preamble 1
- iwpriv <iface> get_preamble	//will display the current preamble type

- List current BSS information:iwpriv <iface> list_bss
  You can use "dmesg" to check the result.



Note:
----

- You can modify the script file "sta" to enable Station function.
  "sta en" Enable STA function
  "sta dis" Disable STA function
- I have tested the driver under Red-Hat 9.0, It's unstable than kernel 2.4.24.
  So please update the kernel.



Version:
--------
-5000
 - a lot of code cleanups
 - Support kernel 2.6.10
 - Support Big Endian architectures (experimental)
 - new cleaner Makefile

-4715
 -Support kernel 2.6.x
 -Fixed bug: DHCP will hard to get IP problem.
 -Support iwpriv command
 	iwpriv <iface> set_mac_mode mac_mode	//1: Mixed Mode 
 						//2: Pure G Mode
 						//3: Pure B Mode 
 	iwpriv <iface> get_mac_mode		//display current Mac Mode
 
-4630
 -Fixed Ad-Hoc mode can't work problem.
 -Support Roamming.
 -Support iwlist <iface> scan(ning) command.
 -Support iwpriv command
 	iwpriv <iface> connect cell_number	//the cell_number can be get 
 						//from the result of 
 						//iwlist <iface> scan(ning) command
 	iwpriv <iface> dbg_flag			//set debug level, default is 0

 -Fiexd Chairot multicast can't work problem.	
 -Fixed Ack timeout problem. 
 
 
-4621
 -First release version.
 -WPA, 802.1X with dynamic key exchange are not supported.
 -Watchdog function was not fully implementated.
 -Apdbg.c provides basic debug command for driver development.
 -Airoha RF chip is not verified.
 -Support basic wireless extension setting.
 -Fixed	iwconfig will show wrong essid information.
 -Roaming is not fully verified.
 	


Known Bugs:
-----------
