Changes:
========


2004.04.13 - 0.2.0pre8 released
- Tons of ACX100 USB patches, now working on 2.4.x, but no go on 2.6.x
  (although 2.6.x compile working now)
- 2.6.x out-of-kernel module build :)
- add support for copying driver into 2.6.x kernel tree
- add script fetch_firmware to automate firmware download
- fix crashing card eject/reinsert, works quite well now
- remove failed device from device list ring to avoid OOPS in cleanup_module
- fix: only process those deauthen packets that are targeted at us
- do card hardware shutdown in cleanup_module, NOT remove_pci
- fix places with driver accessing freed memory and potentially crashing
- fix potential crash by firmware loading error path
- improvements for old Wireless Extensions layer, fixes OOPS
- fix broken /proc file removal
- tons of endianness fixes. Probably still not quite finished yet, but close
- implement iwevent support, much improved iwlist
- don't load radio image for ACX111 cards
- make sure to actually commit Energy Detect value
- fix grave timer bug (rounding error causing e.g. 1s instead of 1.5s)
- enable "ifconfig wlan0 hw ether 112233445566" - semi-broken for unknown reason
- adapt level displays to almost match levels used in Windows
- implement simplistic Tx auto rate mechanism, but still almost unusable
- add iwconfig sens support for RFMD and Maxim radios, implement iwconfig
  mode Auto :)
- more detailed error statistics
- several structural changes in driver (scanning, MAC mode). Hopefully won't
  break too much
- many optimizations in Tx/Rx path, should be faster
- add EEPROM write support (disabled for safety reasons), speed up EEPROM access
- tons of source fixes with the help of splint code analysis tool
- fix definition problem with short preamble flag management
- software timer cleanup fix
- many driver struct cleanups
- enable setting Master (HostAP) mode, do some preliminary fixes for it
- hopefully fix modversions problem
- ESSID " " is actually used by some APs as the "hidden" ESSID, it seems
- add kernel boot parameter acx_firmware_dir=XXX.
- "make install" to install driver files in kernel dir and run depmod
- don't fail to ACK any IRQ type
- revert problematic free_netdev() change (only available in newer kernels)
- update ALL files to use priv instead of wlandev/hw/context
- implement setting of RTS threshold
- Disable 802.11 power save mode for now, which hopefully will fix the
  Tx error 0x20 traffic lockups
- much smaller driver, probably needs about as much memory as pre7
- huge README update
- 50 tons of cleanups
- radio type 0x15 is Ralink

2004.01.27 - 0.2.0pre7 released
- "fix" lockups of pre6, caused by improper locking
- fix MSDU stuff, gets rid of Tx 0x10 errors (MSDU)
- reduce RX/TXBUFFERNO from 32 to 16 (several people had malloc issues)
- workaround for firmware loading problems of various cards: don't use
  auto-increment writing... (also retry 5 times on failure)
- fix for "incompatible rates" error
- fix the driver to accept multicast packets
- add some acx111 (TNETW1130) code bits (NOT fully functional yet)
- fix overflow due to wrong handling of 802.11g stations
- don't include modversions.h, since it seems we're not supposed to do that
- acx100 USB now able to receive data, sending still not working
- add new Israel regulatory domain 0x51
- reduce stack footprint of several functions
- don't force-configure an antenna selection byte value
- add proc/driver/acx100* diagnostic files
- fix ESSID overflow issues
- only log Beacon frames if L_XFER_BEACON (0x2000) is set
- fix some Beacon and Probe Response issues
- fix some HORRIBLE mistakes in code, effects unknown
- fix broken capability patching
- fix Maxim radio Tx level
- fix wrong radio type ID in table check...
- HUGE README update
- improve scripts a bit
- add preliminary support bits for 802.11 power save mode
- fix ioctls for old WE versions
- small fixes for multi-card setup, not finished yet
- enable readout of Info Mailbox
- improve logging
- beautify logging by indenting

2003.11.16 - 0.2.0pre6 released
- fix kernel OOPS on driver init failure
- add support for new wireless extension ioctl implementation format,
  move set_retry from iwpriv to standard ioctl
- add support for scanning ioctls (needed for apradar etc.)
- add /proc entry for acx100
- change iwconfig name from driver version to 802.11 ID string,
  move driver version into default nick name
- change channel in start_net to a non-overlapping channel
- add human-readable ACX100 explanations for reasons of failure codes
- don't try to modify Tx level for unknown radio types
- fix compiler warnings
- README updates
- remove unnecessary includes

2003.11.07 - 0.2.0pre5 released
- fix problem causing all sorts of machine lockups:
  implemented centralized card settings management
- changed net queue mechanism to avoid netdev watchdog timeout messages
- initial ACX100 USB (DWL-120+) firmware loading support
- enable EXPERIMENTAL_VER_0_3 features by default now:
  - replace CPU-burning loops by scheduled delays / faster timing loops
  - radio Tx level phy setting
- show error when loading empty firmware file
- fix crash in acx100_probe_pci() on error cleanup
- PowerPC compile fixes (WIP)
- small fixes in start_net
- HUGE README update
- remove many unneeded header file includes
- added crashme script for stability testing

2003.10.07 - 0.2.0pre4 released
- fix for APs with hidden ESSID: make sure we use user configured ESSID here
- fix Tx ring buffer overflow
- probable fix for deauthen packet receiving resulting in dropped link
- fix module unload crash uncovered by card hotplug functionality
- show current network mode only after getting associated
- slight optimizations
- card EEPROM ID cleanup
- improve README

2003.09.30 - 0.2.0pre3 released
- fix broken regulatory domain EEPROM reading
- replay WEP settings
- lots of WEP changes
- move from CardServices support to PM. Suspend and Resume might work now
- EXPERIMENTAL_VER_0_3: add physical Tx level setting for RFMD radios
- major cleanup efforts

2003.09.21 - 0.2.0pre2 released
- fix ringbuffer increment screwup
- fix capability flags announcing: it's not particularly healthy
  to ask 11Mbps APs for PBCC support...
- better handling of regulatory domains:
  - scanning/association fixes for reported problem
  - read default regulatory domain setting from EEPROM
- add missing unregister_netdev(), might eventually perhaps fix reported issue
- improvements in the CardBus layer support
- make link quality display show real percentage levels, not broken dBm levels
  (sorry, really couldn't find out how to convert values given to proper dBm!)
- compile fixes for arm-linux (not tested yet due to lack of CardBus on iPAQ,
  but if someone implemented USB support I could actually test the driver
  on my XScale devel board!)
- EXPERIMENTAL_VER_0_3: doubled driver init speed and killed CPU hogging
- vastly improved scripts
- huge README update
- rename function names, remove some unused functions, docu cleanup

2003.09.14 - 0.2.0pre1 released
- "fix" major bug "association on every other attempt", by adding
  OS-based retry timer support for newer firmware versions which don't
  support a hardware timer any more
- fix short/long preamble compatibility issue causing Tx error 0x20 problems:
  we were sending packets with short preamble, although short preamble
  is only an OPTIONAL feature in 802.11b
- support "iwconfig wlan0 essid any" for automatic association to any station
  (mode Auto is not yet implemented, however)
- add support for building outside of Linux 2.6.x kernel tree
- improve WEP support: print/set open/restricted status
- fix transmit_deauthen() and other package generation functions
- add experimental (currently disabled) code for proper pcmcia_cs support
- convert firmware version string to number, add some checks in the code
  to adjust support for various firmware versions with different behaviour
- switch off power LED on driver unloading to save power ;-)
- add detection strings for some cards
- clean up scanning code

2003.08.24 - 0.1h released
- improve ring buffer handling, many locking changes
  (problematic ping latency with some cards should be a thing of the past)
- add net queue stop/wake to prevent flood ping from killing the connection
- fix some disassociation problems / connection hangup
- recognize IPv6 broadcast address properly
- print more card details, add DrayTek Vigor 520 ID
- small Linux 2.6.x fix

2003.08.16 - 0.1g released
- fix state management
  this also fixes the multi-second pings
- fix WEP operation
- fix ifup/ifdown/ifup broken interrupt reinitialisation
- fix gcc 2.95.4 compile issues
- fix crash when loading 0 length firmware file
- fix net queue problems when not associated yet
- log association response status in human-readable form
- replace several CPU burning loops by proper scheduling
- more detailed EEPROM card ID check
- add possibility to compile out logging code

2003.08.13 - 0.1f released
- completely new firmware handling code: loading of newest Windows firmware
  versions with separate radio module support now possible
- changed logging from KERN_DEBUG to KERN_WARNING: might log to different file
  now
- reorganised the ioctl handling
- introduced proper ioctl locking
- ioctl calls prior to opening the device get replayed when device gets 
  up, enabling calling iwconfig prior to ifconfig
- completely rewritten ring buffer management
- stack overflow fixes
- fix reversed Tx power
- MAC address is now initialised correctly
- first attempts to handle APs with hidden SSID
- added ioctls for retry limit setting
- correct packet timestamp logging
- removed irq disabling
- removed all the small ctl* functions

2003.07.26 - 0.1e released
- implement net device statistics
- fix device name allocation, add module parameter use_eth_name to use
  ethX instead
- fix broken Capability requesting
- manage kernel net queue properly to prevent the kernel from sending
  packets before we're fully associated
- experimental Linux 2.6.x support (mucho thanks to Andreas Schultz!)
- disable WEP decryption for WLAN monitoring to be able to monitor
  foreign traffic
- when associating, prefer stations sitting on the same channel as our card
- add PCI device ID for newer ACX100 version

2003.07.22 - 0.1d released
- fix IRQ handling enabling for CardBus cards (doh!)
- fix problematic LLC length calculation
- implement iwprivs for 802.11 CCA and ED values and regulatory domain setting
- print firmware version and radio type on init
- fix strange uninitialised reg. domain problem on DWL-650+
- kill CPU burning loop causing sound skips during card init
- some smaller fixes

2003.07.19 - 0.1c released
- fixed infrastructure association issues
- implemented/fixed/improved WEP handling
- fix card init: CardBus cards; SS1021 detection
- much improved iwconfig/iwpriv support
- implement experimental monitor mode
- better (hopefully!) ring buffer management
- fix stack overflow

