~ubuntu-branches/debian/sid/acx100/sid

« back to all changes in this revision

Viewing changes to Changelog.fixes

  • Committer: Bazaar Package Importer
  • Author(s): Miguel Gea Milvaques
  • Date: 2005-04-13 23:36:11 UTC
  • Revision ID: james.westby@ubuntu.com-20050413233611-682713xv78b1ib1k
Tags: 0.2.0pre8+52-1
* New upstream release
* Added ChangeLog downloded from upstream homepage.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
If this doesn't manage to fix some things reported here or if it has some
 
2
new bugs as compared to the last version, then please notify me
 
3
immediately at andi@lisas.de
 
4
 
 
5
52 (ACX111 WEP working. Important fixes for Linux 2.4.x and also
 
6
PPC/endianness):
 
7
RELIABILITY FEEDBACK: NOT TESTED, no feedback yet.
 
8
 
 
9
2005-04-11 19:25  andim2
 
10
 
 
11
        * src/acx100_helper.c (1.344): Fix 2.4.x compile by adding the
 
12
          missing header.
 
13
 
 
14
2005-04-11 18:52  andim2
 
15
 
 
16
        * README (1.126): Small update.
 
17
 
 
18
2005-04-08 23:35  andim2
 
19
 
 
20
        * src/acx100_ioctl.c (1.241): Further endianness fixes.
 
21
 
 
22
2005-04-08 23:35  andim2
 
23
 
 
24
        * src/idma.c (1.275): Rasmus Rohde: One important PPC endianness
 
25
          fix.
 
26
 
 
27
 
 
28
 
 
29
51 (ACX111 WEP NOW WORKING!!! thanks HEAPS to Luis Padilla Visdomine for
 
30
magically pin-pointing it!!):
 
31
Even more wonderful work by Denis Vlasenko.
 
32
NOTE that Auto mode got removed, you need to explicitly configure Ad-Hoc or
 
33
Managed now!
 
34
RELIABILITY FEEDBACK: appears to work mostly fine for Linux 2.6.x and non-PPC
 
35
people ("ACX111 WEP is nice"), but not too much testing happened.
 
36
 
 
37
2005-04-07 23:03  andim2
 
38
 
 
39
        * include/acx100_helper2.h (1.35), src/acx100_helper.c (1.343),
 
40
          src/acx100_helper2.c (1.244): Move static variable out of inlined
 
41
          function, saves a couple 100 bytes.  Constify (.rodata) yet
 
42
          another variable, revert variable from int to unsigned int (some
 
43
          architectures are said to work better on unsigned int), document
 
44
          resetting the scan count back to 0, some logging update.
 
45
 
 
46
2005-04-07 23:00  andim2
 
47
 
 
48
        * README (1.125): Auto mode status update, mention firmware loading
 
49
          delay.
 
50
 
 
51
2005-04-07 22:56  andim2
 
52
 
 
53
        * src/idma.c (1.274): Revert the number of ACX111 ring buffers back
 
54
          to 32, since that was a temporary debugging change.
 
55
 
 
56
2005-04-07 22:54  andim2
 
57
 
 
58
        * scripts/start_net (1.38): Make sure people know that Auto mode
 
59
          isn't supported any more, try to modprobe the firmware_class
 
60
          module for 2.6.x hotplug firmware loader support.
 
61
 
 
62
2005-04-07 00:48  andim2
 
63
 
 
64
        * src/acx100_usb.c (1.88): Make USB driver compile when ACX_DEBUG=0
 
65
 
 
66
2005-04-07 00:27  andim2
 
67
 
 
68
        * README (1.124), include/acx100.h (1.186), src/acx100_helper.c
 
69
          (1.342), src/acx100_helper2.c (1.243): Add some comments, fix
 
70
          typos.
 
71
 
 
72
2005-04-06 23:21  andim2
 
73
 
 
74
        * include/acx100.h (1.185), include/acx100_helper.h (1.107),
 
75
          src/acx100_helper.c (1.341), src/acx100_helper2.c (1.242): Fix
 
76
          problematic C++ comments
 
77
 
 
78
2005-04-06 22:45  andim2
 
79
 
 
80
        * include/acx100_helper.h (1.106), include/p80211mgmt.h (1.11),
 
81
          src/acx100.c (1.306), src/acx100_conv.c (1.71),
 
82
          src/acx100_helper.c (1.340), src/idma.c (1.273): Denis Vlasenko:
 
83
          AP mode beacon problem sorted out + MONITOR mode can send
 
84
          +arbitrary 802.11 packets now!
 
85
 
 
86
          I figured out why there were huge AP beacons.  We were not
 
87
          setting up TIM template!
 
88
 
 
89
          tx path: a) added (probably redundant) check that will prevent
 
90
          any tx in ACX_MODE_OFF.  b) any 802.11 frame can be submitted to
 
91
          tx in monitor mode.     I was able to simulate AP beacons via
 
92
          userspace.     (Confirmed with sniffer)
 
93
 
 
94
2005-04-06 22:30  andim2
 
95
 
 
96
        * include/acx.h (1.1), include/acx100.h (1.184),
 
97
          include/acx100_conv.h (1.11), include/acx100_helper.h (1.105),
 
98
          include/acx100_helper2.h (1.34), include/idma.h (1.63),
 
99
          include/p80211hdr.h (1.8), include/p80211mgmt.h (1.10),
 
100
          src/acx100.c (1.305), src/acx100_conv.c (1.70),
 
101
          src/acx100_helper.c (1.339), src/acx100_helper2.c (1.241),
 
102
          src/acx100_ioctl.c (1.240), src/acx100_usb.c (1.87),
 
103
          src/acx80211frm.c (1.20), src/idma.c (1.272), src/ihw.c (1.121),
 
104
          src/ihw_usb.c (1.31), src/ioregister.c (1.19): Denis Vlasenko: 1
 
105
          bug + cleanups
 
106
 
 
107
          Fix wrong data copying in acx_rxdesc_to_txdesc() by correcting
 
108
          struct acx_addr3 .
 
109
 
 
110
          Kill several unused structures, #defines and so on, put all
 
111
          #includes in dedicated acx.h file.
 
112
 
 
113
          rename priv->macmode_wanted into just priv->mode, ISTATUS_xxx
 
114
          into ACX_STATUS_xxx
 
115
 
 
116
          acx_process_probe_response is reworked so that there is no
 
117
          open-coded IE handling.
 
118
 
 
119
2005-04-06 21:54  andim2
 
120
 
 
121
        * README (1.123), doc/firmware_versions.txt (1.11),
 
122
          include/acx100_helper.h (1.104), scripts/start_net (1.37),
 
123
          src/acx100_conv.c (1.69), src/acx100_helper.c (1.338): This patch
 
124
          ***FINALLY*** makes ACX111 WEP work!! (many, many, many thanks go
 
125
          to Luis Padilla Visdomine for magically nailing down the
 
126
          incredibly obscure issue!!) Update documentation as well to tell
 
127
          people about the new Good Times.
 
128
 
 
129
2005-04-06 19:49  andim2
 
130
 
 
131
        * include/acx100.h (1.183), include/acx100_helper.h (1.103),
 
132
          include/acx100_helper2.h (1.33), include/p80211mgmt.h (1.9),
 
133
          src/acx100.c (1.304), src/acx100_conv.c (1.68),
 
134
          src/acx100_helper.c (1.337), src/acx100_helper2.c (1.240),
 
135
          src/acx100_ioctl.c (1.239), src/idma.c (1.271): Denis Vlasenko:
 
136
          introduce MONITOR and OFF mode.
 
137
 
 
138
          This patch:
 
139
 
 
140
          a) Renames ACX_MODE_xxx consts so that they do not contain
 
141
          useless parts (we dont need MANAGED in ACX_MODE_3_MANAGED_AP),
 
142
          adds MONITOR and OFF, removes AUTO.
 
143
 
 
144
          b) Removes a bunch of priv->xxx members which do not seem to be
 
145
           needed. We already have far too many. Code is changed to work
 
146
          without them.     In particular, we do not need macmode_wanted,
 
147
          macmode_chosen,     macmode_joined triplet. We need macmode.
 
148
          Period. Auto mode     is silly. User shall just make up his mind
 
149
          ad decide     does he want ad-hoc or infrastructure mode. Thus
 
150
           macmode_wanted==macmode_chosen.     Also we do not expect to
 
151
          want to join ad-hoc cell but suddenly     find ourself in joined
 
152
          to an AP (that will be utterly strange),     thus
 
153
          macmode_wanted==macmode_joined.     (I plan to rename it it
 
154
          acx_mode, and status to acx_status     for better grep. Later.)
 
155
 
 
156
          c) acx_scan_chan and acx_join_bssid got _cmd_ added to name
 
157
          (to make it clearer that they just submit a cmd to firmware)
 
158
 
 
159
          d) switched many places from if() to switch() to make code paths
 
160
            related to different iwconfig modes more visible
 
161
 
 
162
          e) made ah-hoc, ap, monitor, off modes work right at least in
 
163
          regard    to emitting (or not emitting) proper beacons. Monitor
 
164
          mode tested    for capture. This is the most important part of
 
165
          the patch.
 
166
 
 
167
          f) added and trimmed comments, WLAN_ defines, switched from
 
168
          numeric    consts to symbolic, other minor work.
 
169
 
 
170
2005-04-05 23:49  andim2
 
171
 
 
172
        * include/acx100.h (1.182), include/ihw.h (1.38), src/acx100_conv.c
 
173
          (1.67), src/acx100_helper2.c (1.239), src/acx100_ioctl.c (1.238),
 
174
          src/acx100_usb.c (1.86), src/idma.c (1.270): Denis Vlasenko:
 
175
          consolidate mac copy/compare functions
 
176
 
 
177
          This patch replaces MAC_XXX macros with inline functions and
 
178
          replaces acx_is_mac_address_XXX function with mac_is_XXX for
 
179
          three reasons:
 
180
 
 
181
          1) names were just far too long 2) they have nothing to do
 
182
          specifically with acx,    acx_prefix is unjustified 3) they did
 
183
          not follow TRUE=1,FALSE=0 convention. Compare this: -
 
184
            else if (OK == acx_is_mac_address_equal(priv->dev_addr,
 
185
          +hdr->a3.a1)) { +               else if
 
186
          (mac_is_equal(priv->dev_addr, hdr->a3.a1)) {
 
187
 
 
188
          Some memcmp's and memcpy's were converted to new functions
 
189
 
 
190
2005-04-05 23:37  andim2
 
191
 
 
192
        * include/acx100.h (1.181), include/acx100_helper.h (1.102),
 
193
          include/acx100_helper2.h (1.32), src/acx100_helper2.c (1.238):
 
194
          Denis Vlasenko: clean up client and mgmt packet handling
 
195
 
 
196
          This patch does the following:
 
197
 
 
198
          a) renames some previously unknown client_t structure members
 
199
 
 
200
          b) introduces and uses CLIENT_xxx constants for client.used
 
201
 
 
202
          c) fixes a place where code used totally unrelated variable
 
203
          for access to challenge IE (grep for "NB Andreas:")
 
204
 
 
205
          d) memcpy(clt->ratevec, ...) are commented out because    they
 
206
          are OOPSable (we do initialize clt->ratevec nowhere).
 
207
 
 
208
          e) client lookups were open-coded in a number of places.
 
209
          Converted to use acx_sta_list_get(). Added
 
210
          acx_sta_list_get_or_add     and used it in several places.
 
211
 
 
212
          f) struct alloc_p80211mgmt_req_t and it's the only usage    in
 
213
          the form of global variable (alloc_p80211mgmt_req! ugggh)    is
 
214
          reworked. struct is changed to a union and moved    to the only
 
215
          place where it is used: acx_process_mgmt_frame().     Variable is
 
216
          placed on stack and renamed so that my head does     not explode
 
217
          anymore. Comment is added.
 
218
 
 
219
          g) arg_0 parameters are renamed.
 
220
 
 
221
2005-04-04 22:45  andim2
 
222
 
 
223
        * src/acx100_usb.c (1.85): Slightly change kernel version check to
 
224
          make sure it also hits Mandrake's botched "2.6.8.1" kernel
 
225
          version.
 
226
 
 
227
2005-04-03 23:22  andim2
 
228
 
 
229
        * src/: acx100.c (1.303), acx100_helper.c (1.336): Further logging
 
230
          fixes
 
231
 
 
232
2005-04-03 23:19  andim2
 
233
 
 
234
        * src/idma.c (1.269): Fix failure logging, fix dma_addr_t logging
 
235
 
 
236
2005-04-03 22:39  andim2
 
237
 
 
238
        * README (1.122): Mention limited firmware filename checks, mention
 
239
          that update-modules is Debian-only.
 
240
 
 
241
2005-04-03 22:34  andim2
 
242
 
 
243
        * src/idma.c (1.268): Better use unsigned loop variable, it's
 
244
          cleaner.
 
245
 
 
246
2005-04-03 22:32  andim2
 
247
 
 
248
        * include/acx100_helper.h (1.101): Tiny spelling fix
 
249
 
 
250
2005-04-03 22:30  andim2
 
251
 
 
252
        * src/ihw.c (1.120): Tiny change
 
253
 
 
254
2005-04-03 22:30  andim2
 
255
 
 
256
        * include/ihw.h (1.37): Optimize acx_is_mac_address_broadcast()
 
257
 
 
258
2005-04-03 22:26  andim2
 
259
 
 
260
        * src/: acx100.c (1.302), acx100_helper.c (1.335), acx100_helper2.c
 
261
          (1.237), acx100_ioctl.c (1.237): Constify some data structures to
 
262
          avoid needless paging.  (.rodata vs .data seg, see objdump -x)
 
263
 
 
264
2005-04-03 21:23  andim2
 
265
 
 
266
        * include/acx100_helper2.h (1.31), include/p80211hdr.h (1.7),
 
267
          include/p80211mgmt.h (1.8), include/wlan_compat.h (1.10),
 
268
          src/acx100_helper.c (1.334), src/acx100_helper2.c (1.236): Denis
 
269
          Vlasenko: sanitize mgmt packet generation
 
270
 
 
271
          This patch is large, please review.
 
272
 
 
273
          a) introduce wlan_hdr structure which documents 802.11 frame
 
274
          layout.     (currently unused, but eliminates the need to reach
 
275
          for large     .pdf file each time I forget it! :)     Since it is
 
276
          still unconvenient to work with unions     (hdr.addr.mgmt.da!
 
277
          ugggh...), I also added wlan_mgmt_hdr     for use when header
 
278
          type is known. (hdr.da, joy joy).     More will be added as
 
279
          needed.
 
280
 
 
281
             (Why I did not use existing types? I find it hard to work with
 
282
          types
 
283
             named acxp80211_hdr when they are not related specifically to
 
284
          acx,
 
285
             and p80211_hdr is only slightly better - too many numbers...
 
286
             I am thinking about using wlan_/WLAN_ prefix consistently for
 
287
             all 802.11 stuff (unless it's related to acx hardware))
 
288
 
 
289
          b) WF_MGMT_CAP_INFO_xxx enums added (similarly to one of earlier
 
290
          patches)    and used where appropriate. IEEE16 macro was moved.
 
291
 
 
292
          c) acx_transmit_XXXXX functions are reworked, renaming local
 
293
          variables    with consistent names, using wlan_fill_ie_XXX to
 
294
          fill IEs    instead of open-coding it, etc.
 
295
 
 
296
          d) TxData struct is dropped. It was misnamed: name emphasized the
 
297
          fact that    frame was to be transmitted, while layout was about
 
298
          the fact that we    are working with mgmt frame; also most of
 
299
          it's fields was never used.     I am using wlan_mgmt_hdr instead.
 
300
 
 
301
          e) large no-content function comments trimmed down
 
302
 
 
303
2005-04-03 19:58  andim2
 
304
 
 
305
        * include/acx100.h (1.180), include/acx100_helper2.h (1.30),
 
306
          src/acx100_helper2.c (1.235): Denis Vlasenko: rename
 
307
          client.valNNN
 
308
 
 
309
          A related bug is spotted/squashed.
 
310
 
 
311
          Client hash table usages was sanitized and commented.
 
312
 
 
313
          An unrelated inline was moved to .h file
 
314
 
 
315
2005-04-03 19:37  andim2
 
316
 
 
317
        * include/acx100.h (1.179), src/acx100_helper.c (1.333),
 
318
          src/acx100_helper2.c (1.234), src/acx100_ioctl.c (1.236),
 
319
          src/ihw.c (1.119), src/ihw_usb.c (1.30): Denis Vlasenko: simplify
 
320
          logging of MAC addresses No actual logic changes, but now printks
 
321
          look much more compact
 
322
 
 
323
2005-04-03 19:24  andim2
 
324
 
 
325
        * include/acx100_helper.h (1.100), include/p80211mgmt.h (1.7),
 
326
          src/acx100_helper.c (1.332): Denis Vlasenko: sanitize template
 
327
          initialization a) Template structures are grouped together and
 
328
          consistently named b) Missing structure members defined (I tried
 
329
          to preserve sizes    of the structs, but please review...) c)
 
330
          Added lots of comments d) Added helper functions for setting IEs
 
331
          e) Template setting functions heavily reworked/simplified
 
332
 
 
333
2005-04-03 19:08  andim2
 
334
 
 
335
        * src/: acx100_helper.c (1.331), acx100_helper2.c (1.233),
 
336
          acx100_ioctl.c (1.235): Denis Vlasenko: we don't need to zero out
 
337
          fields in scruct we just memset() to zero; kill stray ';;',
 
338
          etc...
 
339
 
 
340
2005-04-03 19:03  andim2
 
341
 
 
342
        * include/acx100.h (1.178), include/p80211hdr.h (1.6),
 
343
          src/acx100_conv.c (1.66), src/acx100_helper.c (1.330),
 
344
          src/acx100_helper2.c (1.232), src/acx100_ioctl.c (1.234),
 
345
          src/idma.c (1.267): Denis Vlasenko: use better macros a) move
 
346
          VEC_SIZE into .h file b) use it where appropriate c) add WF_
 
347
          macros which allow for more efficient code    (bit shifts and
 
348
          ieee2host conversion can be avoided)    and also their usage
 
349
          looks more compact and understandable.     Old macros are
 
350
          retained.
 
351
 
 
352
2005-04-03 18:52  andim2
 
353
 
 
354
        * include/acx100.h (1.177), src/acx100_helper.c (1.329), src/idma.c
 
355
          (1.266): Denis Vlasenko: cleanup: kill #ifdefs By defining some
 
356
          macros, we can eliminate pair of #ifdefs
 
357
 
 
358
2005-04-03 18:12  andim2
 
359
 
 
360
        * Makefile (1.21), src/Makefile (1.54): Further fixes. This is not
 
361
          perfect, but hopefully it works.
 
362
 
 
363
2005-04-03 18:09  andim2
 
364
 
 
365
        * Makefile (1.20): Doh, make distclean didn't actually do what we
 
366
          wanted...
 
367
 
 
368
2005-04-01 00:25  andim2
 
369
 
 
370
        * include/p80211hdr.h (1.5), src/idma.c (1.265): Denis Vlasenko:
 
371
          untangle #ifdef forest a bit in dma alloc routines
 
372
 
 
373
          We have way too many #ifdefs, I'm working on reorganizing code to
 
374
          remedy that.
 
375
 
 
376
2005-04-01 00:21  andim2
 
377
 
 
378
        * src/acx100_conv.c (1.65): Denis Vlasenko: sanitize eth<->wlan
 
379
          conversion routines: a) copying and comparing 3-byte arrays
 
380
          with constant contents is larger and slower than    simply
 
381
          comparing with constants.     do inline compares (wrap them into
 
382
          conveniently named inlines)  b) rename acx_stt_findproto to
 
383
          (hopefully) more    understandable name c) start moving tovards
 
384
          kernel convention:    wlan_ethhdr_t -> struct wlan_ethhdr
 
385
          (although I prefer former form) d) reorganize if() expressions,
 
386
          they were hard to follow.     kill redundant if() check.
 
387
 
 
388
          Comment: let's just hope he's right in explaining one difficult
 
389
          change in this patch - at this time of day I cannot really follow
 
390
          that any more ;-)
 
391
 
 
392
 
 
393
 
 
394
 
 
395
50 (ACX111 WEP still not functional, will work more on it soon):
 
396
Many cool patches by Denis Vlasenko, but COMPLETELY UNTESTED.
 
397
NOTE that within the new hotplug patch, some alternate ACX111 firmware filenames
 
398
got removed. The driver now REQUIRES TIACX111.BIN
 
399
RELIABILITY FEEDBACK: problematic behaviour with various kernel versions,
 
400
use pf49 if you get compile errors. Otherwise seems to be fine.
 
401
 
 
402
        2005-03-30 00:29  andim2
 
403
 
 
404
        * include/acx100.h (1.176), src/acx100.c (1.301),
 
405
          src/acx100_helper.c (1.328), src/acx100_helper2.c (1.231),
 
406
          src/acx100_ioctl.c (1.233), src/idma.c (1.264): Fix invalid C++
 
407
          comment style, fix 2.6 firmware loader to only be used in case
 
408
          it's compiled in kernel, change FW_xxx defines to USE_FW_xxx,
 
409
          spelling errors.
 
410
 
 
411
2005-03-30 00:09  andim2
 
412
 
 
413
        * include/acx100.h (1.175), include/acx100_helper.h (1.99),
 
414
          src/acx100.c (1.300), src/acx100_helper.c (1.327),
 
415
          src/acx100_ioctl.c (1.232), src/acx100_usb.c (1.84), src/idma.c
 
416
          (1.263), src/ihw.c (1.118), src/ihw_usb.c (1.29): Denis Vlasenko:
 
417
          make it compile if ACX_DEBUG=0 in Makefile
 
418
 
 
419
          a) change #ifdef ACX_DEBUG into #if ACX_DEBUG so that ACX_DEBUG=0
 
420
             in Makefile works as expected b) give debug and L_xxxx
 
421
          constant zero values, allowing gcc    to optimize debug code out
 
422
          c) convert static string variables into #defines, allowing
 
423
          them to be optimized out d) style fixes
 
424
 
 
425
2005-03-30 00:04  andim2
 
426
 
 
427
        * src/acx100_conv.c (1.64): Denis Vlasenko: Fix two grave bugs in
 
428
          ethernet header conversion: missing header->length assignment,
 
429
          fix payload->length = proto code a) reduce le_to_cpu'ing using
 
430
          temp variables b) do not doubly initialize local vars c) fix
 
431
          debug output
 
432
 
 
433
2005-03-29 23:44  andim2
 
434
 
 
435
        * src/acx100_conv.c (1.63): Denis Vlasenko: fix debug output:
 
436
          Previous code would emit tons of "<n>" in the middle of the line.
 
437
 
 
438
2005-03-29 23:43  andim2
 
439
 
 
440
        * src/acx100_helper.c (1.326): Denis Vlasenko: sprintf here is a
 
441
          massive overkill While we're at it, add 'static' and use int for
 
442
          index.
 
443
 
 
444
2005-03-29 23:40  andim2
 
445
 
 
446
        * src/acx100_helper.c (1.325): Denis Vlasenko: misplaced FN_ENTER
 
447
 
 
448
2005-03-29 23:39  andim2
 
449
 
 
450
        * src/acx100_helper2.c (1.230): Denis Vlasenko: from_ds==to_ds==1
 
451
          is a wds frame - Do not call it "rx error".
 
452
 
 
453
2005-03-29 23:37  andim2
 
454
 
 
455
        * src/: acx100.c (1.299), acx100_helper.c (1.324), acx100_helper2.c
 
456
          (1.229), acx100_ioctl.c (1.231), idma.c (1.262), ihw.c (1.117):
 
457
          Denis Vlasenko: utterly trivial stuff: brace placement fixes and
 
458
          the like.
 
459
 
 
460
2005-03-29 22:26  andim2
 
461
 
 
462
        * include/acx100_helper.h (1.98), include/ihw.h (1.36),
 
463
          src/acx100_helper.c (1.323), src/ihw.c (1.116), src/ihw_usb.c
 
464
          (1.28): Denis Vlasenko: move inlines to .h files ...where they
 
465
          belong
 
466
 
 
467
2005-03-29 22:19  andim2
 
468
 
 
469
        * src/acx100_ioctl.c (1.230): Denis Vlasenko: simplify fill_txrate:
 
470
          let's be clever
 
471
 
 
472
2005-03-29 22:13  andim2
 
473
 
 
474
        * src/acx100_ioctl.c (1.229): Denis Vlasenko: ioctl.c cleanup: a)
 
475
          many instances of -       if (0 != (err = acx_lock(priv,
 
476
          &flags))) { -               result = err; +       result =
 
477
          acx_lock(priv, &flags); +       if (result) {
 
478
          goto end;         } b) deinline large functions c) reduce indent
 
479
          levels in acx_ioctl_set_ap d) random style cleanups
 
480
 
 
481
2005-03-29 22:01  andim2
 
482
 
 
483
        * src/: acx100.c (1.298), acx100_helper.c (1.322), acx100_helper2.c
 
484
          (1.228), acx100_usb.c (1.83), idma.c (1.261), ihw.c (1.115):
 
485
          Denis Vlasenko: stop doing assignments in if() - it's unreadable
 
486
          and error prone
 
487
 
 
488
2005-03-29 21:53  andim2
 
489
 
 
490
        * src/acx100_helper2.c (1.227): Denis Vlasenko: fix:
 
491
          switch(ftype)->switch(fstype) and reduce indenting depth there.
 
492
 
 
493
2005-03-29 21:50  andim2
 
494
 
 
495
        * src/idma.c (1.260): Denis Vlasenko: small performance fix: a)
 
496
          convert runtime warning into compile-time b) don't be silly. We
 
497
          don't need to isolate highest bit    of txrate in fixed rate
 
498
          mode, there is already only one nonzero bit.  c) small speed up
 
499
 
 
500
2005-03-29 21:47  andim2
 
501
 
 
502
        * include/acx100.h (1.174), include/acx100_helper.h (1.97),
 
503
          src/acx100.c (1.297), src/acx100_helper.c (1.321),
 
504
          src/acx100_usb.c (1.82): Denis Vlasenko: add 2.6-style hotplug
 
505
          firmware loader.  Old way is retained so far, can be disabled
 
506
          with #define.
 
507
 
 
508
2005-03-29 21:08  andim2
 
509
 
 
510
        * src/acx100.c (1.296): Denis Vlasenko:
 
511
          acx_cleanup_card_and_resources has exactly one callsite.  Let's
 
512
          move it in there, fixing bugs on the way.
 
513
 
 
514
 
 
515
 
 
516
49 (ACX111 WEP still not functional, will work more on it soon):
 
517
Many nice updates, such as e.g. new dupe packet detection code
 
518
RELIABILITY FEEDBACK: no reports yet, very well-tested locally, should be
 
519
working rather well
 
520
 
 
521
2005-03-28 01:14  andim2
 
522
 
 
523
        * include/acx_ioreg.h (1.1): Doh, forgot that file.
 
524
 
 
525
2005-03-28 00:57  andim2
 
526
 
 
527
        * include/acx100_helper.h (1.96): Remove bogus static variable
 
528
          reference in include file to fix compile error on certain
 
529
          compilers (reported by Steve Whine).
 
530
 
 
531
2005-03-27 13:53  andim2
 
532
 
 
533
        * README (1.121): Mention firmware version issues.
 
534
 
 
535
2005-03-27 00:54  andim2
 
536
 
 
537
        * include/ihw.h (1.35), src/acx100_helper2.c (1.226), src/idma.c
 
538
          (1.259): Fix grave bug with descr init that I introduced recently
 
539
          (caused 0x80 Tx errors). Improve some logging, fix some comment.
 
540
 
 
541
2005-03-26 16:14  andim2
 
542
 
 
543
        * src/: acx100.c (1.295), acx100_helper.c (1.320), idma.c (1.258):
 
544
          Some small improvements
 
545
 
 
546
2005-03-25 00:15  andim2
 
547
 
 
548
        * include/acx100_helper.h (1.95), src/acx100_helper.c (1.319): Much
 
549
          improved FeatureConfig mechanism, easily allows tweaking of
 
550
          individual bits, saves almost 1K of memory already.
 
551
 
 
552
2005-03-25 00:13  andim2
 
553
 
 
554
        * include/ihw.h (1.34): Small correction
 
555
 
 
556
2005-03-25 00:12  andim2
 
557
 
 
558
        * src/acx100_helper2.c (1.225): Smallish change
 
559
 
 
560
2005-03-24 20:45  andim2
 
561
 
 
562
        * include/acx100.h (1.173), src/acx100_helper2.c (1.224): First
 
563
          attempt at providing duplicate packet detection.  So far it
 
564
          really seems to work (when creating DUPs by pinging with low Tx
 
565
          power at 1Mbps), but not fully tested.
 
566
 
 
567
2005-03-24 19:50  andim2
 
568
 
 
569
        * src/ihw.c (1.114): Fix horrible mistake of mine causing the
 
570
          driver to crash'n burn
 
571
 
 
572
2005-03-22 23:29  andim2
 
573
 
 
574
        * include/acx100.h (1.172), include/idma.h (1.62),
 
575
          src/acx100_helper.c (1.318), src/acx100_helper2.c (1.223),
 
576
          src/idma.c (1.257): Mainly ring buffer preparation cleanup
 
577
          (ACX111 initializes on its own, no need to mess with buffer init
 
578
          there), some other cleanup
 
579
 
 
580
2005-03-22 23:27  andim2
 
581
 
 
582
        * scripts/fetch_firmware (1.10): Mention firmware version issues at
 
583
          the end
 
584
 
 
585
2005-03-21 21:15  andim2
 
586
 
 
587
        * include/acx100_helper.h (1.94), src/acx100.c (1.294),
 
588
          src/acx100_conv.c (1.62), src/acx100_helper.c (1.317),
 
589
          src/acx100_helper2.c (1.222), src/acx100_ioctl.c (1.228),
 
590
          src/acx100_usb.c (1.81), src/idma.c (1.256), src/ihw.c (1.113),
 
591
          src/ihw_usb.c (1.27): Denis Vlasenko: split FN_EXIT into FN_EXIT0
 
592
          and FN_EXIT1
 
593
 
 
594
2005-03-21 20:59  andim2
 
595
 
 
596
        * include/ihw.h (1.33), src/acx100.c (1.293), src/acx100_helper.c
 
597
          (1.316), src/acx100_ioctl.c (1.227), src/idma.c (1.255),
 
598
          src/ihw.c (1.112): Denis Vlasenko: Remove duplicate
 
599
          implementations of acx_read_reg and friends (one as #defines and
 
600
          other as functions). Single codebase can provide inline or
 
601
          non-inline variants now.
 
602
 
 
603
2005-03-21 20:54  andim2
 
604
 
 
605
        * include/acx100_helper.h (1.93), src/acx100_helper.c (1.315),
 
606
          src/acx100_ioctl.c (1.226): Denis Vlasenko: hide
 
607
          acx100/111_scan_chan() differences from user
 
608
 
 
609
2005-03-21 20:51  andim2
 
610
 
 
611
        * src/: acx100.c (1.292), acx100_conv.c (1.61), acx100_helper.c
 
612
          (1.314), acx100_helper2.c (1.221), acx100_ioctl.c (1.225), idma.c
 
613
          (1.254), ihw.c (1.111): Denis Vlasenko: remove obfuscating casts
 
614
 
 
615
2005-03-21 20:46  andim2
 
616
 
 
617
        * src/acx100_helper2.c (1.220): Denis Vlasenko: reorganize code to
 
618
          avoid excessive indenting
 
619
 
 
620
2005-03-21 20:30  andim2
 
621
 
 
622
        * src/: acx100.c (1.291), acx100_conv.c (1.60), acx100_helper.c
 
623
          (1.313), acx100_helper2.c (1.219), acx100_usb.c (1.80): Denis
 
624
          Vlasenko: Replace "if (0 != expr)" by "if (expr)" everywhere
 
625
          except acx100_ioctl.c
 
626
 
 
627
2005-03-18 09:32  andim2
 
628
 
 
629
        * README (1.120): Fix ACX111 sensitivity status, more WEP details
 
630
 
 
631
2005-03-17 00:17  andim2
 
632
 
 
633
        * include/acx100_helper.h (1.92), src/acx100_helper.c (1.312),
 
634
          src/idma.c (1.253): Further cleanup towards hopefully making
 
635
          ACX111 WEP work
 
636
 
 
637
2005-03-16 21:15  andim2
 
638
 
 
639
        * include/acx100.h (1.171): Change some defines.
 
640
 
 
641
2005-03-16 21:15  andim2
 
642
 
 
643
        * src/acx100_helper2.c (1.218): Small experimental optimization.
 
644
 
 
645
2005-03-16 21:14  andim2
 
646
 
 
647
        * src/idma.c (1.252): Don't modify the whole set, only individual
 
648
          flags.
 
649
 
 
650
2005-03-16 21:07  andim2
 
651
 
 
652
        * README (1.119): Add hint about OpenVPN
 
653
 
 
654
 
 
655
 
 
656
48 (ACX111 WEP still not functional yet, despite all attempts to force it to
 
657
be):
 
658
RELIABILITY FEEDBACK: appears to be fine, at least ACX111
 
659
 
 
660
2005-03-12 19:08  andim2
 
661
 
 
662
        * include/acx100.h (1.170), include/acx100_helper.h (1.91),
 
663
          src/acx100.c (1.290), src/acx100_helper.c (1.311), src/idma.c
 
664
          (1.251): Huge WEP related update (no, I didn't manage to get
 
665
          ACX111 WEP to work, not even after 4 hours :-((():
 
666
 
 
667
          Add more logging, add some disabled debug code for further
 
668
          testing, don't do ACX111 WEP stuff in acx_init_wep(), fix WEP
 
669
          change not causing a rescan, disable ACX111 ED and CCA
 
670
          configuration (unsupported), Change descriptor flag
 
671
          initialization.
 
672
 
 
673
2005-03-12 13:53  andim2
 
674
 
 
675
        * src/idma.c (1.250): Enable new Tx descr cleanup locking, since it
 
676
          is faster.  Hopefully there won't be any issues, but please
 
677
          report it if there are.
 
678
 
 
679
2005-03-12 13:51  andim2
 
680
 
 
681
        * src/acx100.c (1.289): Fix grave problem: for some reason we
 
682
          didn't manage to get to the next tx descr cleanup counter value
 
683
          in time, so the whole descr was DONE and the net queue stopped,
 
684
          so no further cleanup taking place.  Fixed by making sure we
 
685
          always clean up the ring buffer in case more than 50% of all
 
686
          descrs are done.  To make sure this doesn't happen again in a
 
687
          severe way, call the normal tx descr cleanup handler in the
 
688
          timeout handler, too (doh, how could I have forgotten that when
 
689
          disabling the emergency cleanup handler there??).
 
690
 
 
691
2005-03-12 12:30  andim2
 
692
 
 
693
        * include/acx100.h (1.169), src/acx100_helper.c (1.310), src/idma.c
 
694
          (1.249): Fix auto rate algorithm (it was choosing a wrong new
 
695
          rate), make it ignore descriptors with outdated rate bytes (i.e.
 
696
          rate settings which are older than the last range change), large
 
697
          Tx descr cleanup (speedup, locking improvements), large logging
 
698
          improvements.
 
699
 
 
700
2005-03-11 23:13  andim2
 
701
 
 
702
        * src/idma.c (1.248): Disable TXPRC triggering, I don't think it's
 
703
          needed here.
 
704
 
 
705
2005-03-11 23:12  andim2
 
706
 
 
707
        * include/acx100_helper.h (1.90), src/acx100_helper.c (1.309):
 
708
          Merge ACX100/ACX111 radio recalib functions. Saves some bytes ;)
 
709
 
 
710
2005-03-11 23:10  andim2
 
711
 
 
712
        * doc/firmware_versions.txt (1.10): Small addition
 
713
 
 
714
2005-03-11 14:28  andim2
 
715
 
 
716
        * doc/firmware_versions.txt (1.9): Add information about
 
717
          recalibration lockups in 0.1.0.11.
 
718
 
 
719
2005-03-11 10:40  andim2
 
720
 
 
721
        * doc/firmware_versions.txt (1.8): Add new Safecom firmware.
 
722
 
 
723
2005-03-11 10:23  andim2
 
724
 
 
725
        * include/acx100.h (1.168), src/acx100.c (1.288): Safecom driver
 
726
          hints at a new radio type 0x19...
 
727
 
 
728
2005-03-10 22:55  andim2
 
729
 
 
730
        * include/idma.h (1.61), src/acx100_helper.c (1.308),
 
731
          src/acx100_helper2.c (1.217), src/idma.c (1.247), src/ihw.c
 
732
          (1.110): More detailed Tx logging, fix ACX111 CCA and ED
 
733
          requests, further cleanup.
 
734
 
 
735
2005-03-10 22:54  andim2
 
736
 
 
737
        * doc/firmware_versions.txt (1.7): Document ACX111 1.2.1.34
 
738
 
 
739
2005-03-10 17:14  andim2
 
740
 
 
741
        * TODO (1.34): Small update
 
742
 
 
743
 
 
744
47 (ACX111 WEP not functional yet, but might be soon):
 
745
46 had too many compile issues, thus a quick 47.
 
746
RELIABILITY FEEDBACK:
 
747
"first release that has successfully connected to my wireless AP" :-)
 
748
Otherwise almost no reports yet, untested before release!
 
749
 
 
750
Carlos Martin: fix pci_name() compatibility define
 
751
In case of a broken peer that doesn't announce Ad-Hoc or Managed mode, don't
 
752
assume it's Ad-Hoc, instead assume it's using whatever mode we configured
 
753
locally.
 
754
Fix endianness logging for older compilers. *sigh*
 
755
Further cleanup, save some 500 bytes of executable size, too.
 
756
Remove all function implementation state logging, it's not really needed any
 
757
longer.
 
758
 
 
759
46 (ACX111 WEP not functional yet, but might be soon):
 
760
NOTE: fails to compile for some kernel versions or very old gcc versions
 
761
RELIABILITY FEEDBACK: appears to be very good, minus the compilation issues
 
762
 
 
763
Rasmus Rohde:
 
764
  Even some more endianness fixes (can you believe it!?)
 
765
  Associating with AP is working now!
 
766
Carlos Martin:
 
767
  Update the driver to also cope with the USB changes done in 2.6.11.
 
768
 
 
769
2.6.11-bk1 removes slot_name member, so we have to use pci_name() now.
 
770
Fix descriptor Ctl_8 initialization in order to be able to remove Ctl_8
 
771
clearing hack in case of ACX111 (suggested by Rasmus Rohde).
 
772
Indicate the CPU endianness on driver startup
 
773
Configure: Relax SMP safety warning to reflect current status.
 
774
README: Mention memory region change, multicast issues.
 
775
 
 
776
45 (ACX111 WEP not functional yet):
 
777
Interim release, USB hang probably not fixed.
 
778
I won't do further development for some smaller amount of time...
 
779
 
 
780
RELIABILITY FEEDBACK: quite ok so far, possibly even better than pf44,
 
781
but a crash on card eject slipped in somewhere after pf43 (didn't happen
 
782
to me during testing!)
 
783
 
 
784
Configure ACX111 to do "automatic" radio recalibration instead of "manual",
 
785
since it seems as if the firmware default setting actually is to do
 
786
automatic recalibration from time to time (exact default period length not
 
787
known yet), so by setting up a manual recalibration we actually made things
 
788
worse in some situations...
 
789
Add /proc registration to USB driver, hopefully fix /proc unregistration
 
790
issues with PCI driver.
 
791
Unify duplicate CTL_xxx descr bits,
 
792
improve/fix(?) CTL_xxx bit check in get_tx_descr(),
 
793
add comments,
 
794
display card query failure in /proc file.
 
795
Change descriptor flag update position.
 
796
Mainly cleanup:
 
797
move logging functions to acx100_helper.c to be able to use one
 
798
implementation in both PCI and USB drivers (not sure whether it's
 
799
really a good idea yet, since some stuff remains in acx100.h and we now
 
800
also need to include acx100_helper.h in some files).
 
801
Some logging updates.
 
802
Remove old power management code.
 
803
Some cleanup in misc. places.
 
804
Small power management updates/fixups
 
805
Add optional Tx descriptor cleanup in task handler (too CPU intensive,
 
806
so don't enable it by default), some more cleanup, reorder task handler
 
807
entries (most often accessed ones first).
 
808
Replace some code with new macro MAC_CNT_RCVD()
 
809
Replace old integer value 5000 with ACX_CMD_TIMEOUT_DEFAULT define when
 
810
calling acx_issue_cmd().
 
811
 
 
812
 
 
813
README:
 
814
Add hint about missing fragmentation support
 
815
Add lspci info
 
816
Tell users to disable 4x mode support in the AP.
 
817
 
 
818
44 (USB still working, ACX111 WEP not functional yet):
 
819
NOTE that ACX100 USB still has a nasty hang on unload if you don't do an
 
820
ifconfig wlan0 down before unloading, so take care! (I plan to fix it soon)
 
821
 
 
822
RELIABILITY FEEDBACK: at least one report that it works very well.
 
823
Please report on AMD64 and PPC, since there were large important changes
 
824
in that area and I didn't have any way to verify correctness!
 
825
 
 
826
- fix potentially fatal bug with uninitialized Association ID during AP assoc.
 
827
- Better don't set CCA and ED and antenna settings on initialization
 
828
(and especially not with arbitrary values possibly not matching config
 
829
EEPROM settings!)
 
830
Doh, completely removing that initialization of CCA and ED with custom
 
831
values broke traffic completely. It turned out that the card requires an
 
832
initial query of those values to get initialized correctly, so do just
 
833
that and nothing more.
 
834
This important initialization improvement might fix 5 tons of communication
 
835
problems...
 
836
acx100_usb.c:
 
837
- Many USB endianness fixes done together with Julien PERVILLE.
 
838
- The dev->init function should DEFINITELY have a return value, otherwise
 
839
an undefined return value can easily cause an error abort (as reported).
 
840
- Add missing FN_EXIT() as reported by Julien PERVILLE.
 
841
Inspired by bug #1098219 from Hugo Herbelin:
 
842
fixed a large number of remaining endianness issues in the 802.11 protocol
 
843
code.
 
844
- Improve radio recalibration code to not eternally disable recalibration
 
845
in case of too many consecutive radio recalibration failures (in tight loop).
 
846
Instead, try another round of recalib attempts after one second has passed.
 
847
Large work queue related cleanup (now ACX100 USB is using work queues, too),
 
848
some general driver files cleanups,
 
849
- Slightly modified patch by Luca Melette:
 
850
we were announcing too many rates in case of extended rates present,
 
851
put them into the extended rates area instead.
 
852
Fix Tx power display to show fixed output, not auto power.
 
853
- Fix one inversed return value check (argh!), better NEVER use OK/NON_OK
 
854
for non-boolean return values.
 
855
Don't clear all bits - this is what the debug output right after it
 
856
is for!!
 
857
 
 
858
- MUCH improved IRQ handler performance (haven't tested it, but an
 
859
astonishing amount of optimizations was still possible), some other
 
860
improvements.
 
861
- Keep an external copy of descriptor Ctl bytes to be able to write back
 
862
the modifications in one step, which is both more thread-safe and faster.
 
863
- Slightly adapted patch by Luca Melette to get Master mode/HostAP a little
 
864
further...
 
865
Don't do /proc stuff in case CONFIG_PROC_FS isn't defined.
 
866
Change IEEE 802.11g/b+ into IEEE 802.11b+/g+, since cards are often
 
867
named in the 802.11a/b/g order (is this useful? I think it is, but maybe
 
868
we should use a different protocol name??)
 
869
- Change all UINTxx variable types into commonly used Linux kernel uxx
 
870
types.
 
871
- Don't forget proper macro bracketing
 
872
- Constify and staticize two tons of parameters and variables,
 
873
move loop variable initialization directly in front of loop,
 
874
change loop counter to use 1 to 5,
 
875
rename acx_load_radio() to acx_upload_radio().
 
876
Further variable type cleanup, remove some non-ACX1xx header file stuff.
 
877
Improve init messages about documentation and 32bit/16bit I/O access.
 
878
Make pause between recalibrations easily configurable.
 
879
We don't support sensitivity for ACX100 USB yet, so don't offer it, too...
 
880
Workaround for Linux <= 2.4.20 not having a generic dump_stack().
 
881
Change check to use 2.4.22, since it seems that 2.4.20 didn't add it yet.
 
882
 
 
883
README:
 
884
Mention EEPROM content backup copy, add Rx level blurb
 
885
Mention that firmware upload is non-permanent, small depmod update
 
886
Monitor mode additions.
 
887
More detailed 32bit/16bit I/O explanation.
 
888
All things considered, D-Link seems to care more about us than some
 
889
other companies, so mention that properly.
 
890
 
 
891
43 (USB now working, ACX111 WEP not functional yet):
 
892
RELIABILITY FEEDBACK: seems to work very well ("works like a charm")
 
893
Don't assign brange_max_quality if parameter wasn't specified, in order
 
894
to avoid division by zero OOPS.
 
895
Largish acx_start_xmit() cleanup, some other cleanups.
 
896
Move power LED link quality update to end of IRQ handler,
 
897
add unlikely(), correct #ifdef, misc. stuff
 
898
Use IEEE 802.11g/b+ protocol name for ACX111 (and fixed segfault caused by
 
899
stupid mistake in this very change).
 
900
Disable non-essential and potentially misleading features (EEPROM ID check)
 
901
by default.
 
902
Add another unlikely(), add #ifdef
 
903
constify *_is_mac_address_*()
 
904
"manufactor" -> "manufacturer"
 
905
Remove obsolete comment, improve log message
 
906
Replace memcmp() by acx_is_mac_address_equal()
 
907
Add unlikely()
 
908
USB: Remove obsolete functions
 
909
README: Add depmod -a hint, More info about USB support status,
 
910
update card status matrix, prefer Linux 2.6.x to 2.4.x.
 
911
iwpriv.txt: Fix broken SetLEDPower/GetLEDPower information
 
912
general_info: Add very detailed info about Radia radios.
 
913
 
 
914
42 (USB now working, ACX111 WEP not functional yet):
 
915
RELIABILITY FEEDBACK: "very good"
 
916
ACX100 USB really shouldn't try to set the power LED (as reported by
 
917
akabeavis)
 
918
Fix places with direct register access in USB case (will cause OOPS),
 
919
undefine register functions to make sure people will get warnings if they add
 
920
more register accesses which will be used in USB mode, too.
 
921
Disable non-essential and potentially misleading features (EEPROM ID check)
 
922
by default.
 
923
start_net: Check for some other allowed firmware names, too.
 
924
 
 
925
41 (USB **FIXED** by Martin Wawro, ACX111 WEP not functional yet): 
 
926
RELIABILITY FEEDBACK: "very good"
 
927
Martin Wawro:
 
928
Corrected a bunch of bugs in the USB subsystem. Should work now (at least
 
929
it does on my machines). Added support for multiple URBs to gain some speed,
 
930
was able to get around 1MB/s transfer rate.
 
931
Fixed USB support. Code is now able to handle fragmented packets from the
 
932
USB bus (main source of error). I noticed that under 2.4.x kernels, it seems
 
933
that the UHCI host controller drivers are buggy (both of them). The
 
934
standard uhci driver simply trashes the host controller when confronted with
 
935
queueing and the usb-uhci driver seems to have bug in its list handling
 
936
(an entry appears more than once in the freespace list). The code runs well
 
937
with EHCI and OHCI drivers on 2.4.x and also on UHCI under 2.6.9.
 
938
Fixed USB support. Also introduced something like a "hard timeout" for
 
939
control transfers (5.5s).
 
940
Fixed USB support. Introduced several new defines to facilitate debugging
 
941
of some of the USB resources. Also substantially extended some of the
 
942
USB data structures in the wlandevice_t type.
 
943
 
 
944
Andreas Mohr:
 
945
Reenable USB compilation now that USB support is fixed. :)
 
946
Merged LED link quality blinking into Get/SetLEDPower.
 
947
Merged SetScanDelay/SetScanMode into much better Get/SetScanParams.
 
948
Revert ill-committed re-enabling of Tx timeout ring buffer reinit.
 
949
start_net: Reverse key and algorithm order, since the current order supposedly
 
950
makes setting the key fail. (huh?? this is documented as working in either
 
951
order; maybe specific iwconfig versions only have problems with this)
 
952
A lot of cleanup to iwpriv code.
 
953
Fix some return value documentation
 
954
(UGH, don't you hate overly verbose documentation of simple facts that
 
955
will then be faster out of date than you can say "outdated"??)
 
956
Update USB code to use new module_param() stuff.
 
957
 
 
958
40 (USB still broken, ACX111 WEP not functional yet):
 
959
Hopefully resolve those all too popular DMA memory alloc issues...
 
960
(use a wrapper for both pci_alloc_consistent() and the improved
 
961
dma_alloc_consistent()).
 
962
Don't update the Rx config in atomic context, do it in after_interrupt_task
 
963
part instead.
 
964
Another endianness fix.
 
965
Include linux/moduleparam.h as suggested for new module_param().
 
966
Small optimization of the link quality blinking code as suggested by
 
967
Pierre Dumuid.
 
968
Fix format string.
 
969
README: Add missing "promiscuous" keyword. Transfer speed hint. Some changes.
 
970
Some small updates.
 
971
 
 
972
39 (USB still broken, ACX111 WEP not functional yet):
 
973
Readd asm/uaccess.h, since it's required for 2.4.x (doh!)
 
974
Change ring buffer count for ACX111 from 32 down to 16 due to memory
 
975
allocation issues.
 
976
Add support for 2.6.10 module_param() change
 
977
Change/improve some WIRELESS_EXT ifdefs
 
978
 
 
979
38 (USB still broken, ACX111 WEP not functional yet):
 
980
** NOTE ** grave slowdowns have been reported with pf35+ and 2.6.x,
 
981
but I couldn't reproduce that with pf38 and 2.6.10-rc1-mm5...
 
982
 
 
983
We were often allocating twice as much ring buffer memory as actually
 
984
needed!
 
985
This led to some frequent out of memory issues, especially with current
 
986
kernels. (!?!?)
 
987
Add some wmb() and rmb() memory barriers (maybe that helps to avoid ring
 
988
buffer sync issues?).
 
989
With default "easy" rate setup, make sure to not specify basic rates
 
990
other than standard 802.11b, since otherwise 22Mbps settings or 802.11g
 
991
rates won't be able to establish a proper Ad-Hoc "master" (other
 
992
clients won't connect).
 
993
Pierre Marc Dumuid: Patch to blinking the Power LED at a rate related to
 
994
the quality (plus some changes of mine)
 
995
Add some more missing endianness conversions required to get ARM big-endian
 
996
to work.
 
997
Set default rate stepup slightly higher, since we were too aggressive here.
 
998
Fix firmware version parsing
 
999
2.4.7 doesn't even know __devexit_p, so attempt a workaround
 
1000
fetch_firmware: Add another ACX111 URL
 
1001
Rename acx100_power_led() to acx_power_led() as it should be,
 
1002
add another unlikely(), another rmb(), add comment about Tx ring buffer
 
1003
deadlock
 
1004
Reverse struct framehdr error message arguments, since it makes more
 
1005
sense that way.
 
1006
Add acx_ioctl_set_scan_mode invocation.
 
1007
Add some log messages, fix some comments.
 
1008
README: Detail kernel version requirements, small update.
 
1009
 
 
1010
37 (USB still broken, ACX111 WEP not functional yet):
 
1011
Remove iwpriv SetLowPkgRx, SetExLowPkgRx in favour of acx111 sensitivity
 
1012
ioctl setting (range 1 to 3).
 
1013
Add special radio recalibration support for ACX111, not tested! (please
 
1014
report).
 
1015
Reorder many ACX100/ACX111 chip type branches to have ACX111 first,
 
1016
since this is the dominant chip now market-wise.
 
1017
Tiny IRQ handler optimization.
 
1018
Add some unlikely().
 
1019
Slightly stronger EEPROM writing warning message.
 
1020
Reorder some wlandevice_t members.
 
1021
 
 
1022
36 (USB still broken, ACX111 WEP not functional yet):
 
1023
Get rid of static variable to hopefully fix issues when using two cards
 
1024
with this driver.
 
1025
Update pci_save/restore_state check to assume that it will be changed in
 
1026
stock 2.6.10, since stock 2.6.9 didn't contain the update yet.
 
1027
Maciek Gajewski: fix off-by-1 error when setting current WEP key.
 
1028
Alessandro Suardi: Remove bogus inline's that gcc 3.4.2 is complaining about.
 
1029
The USB timeout member has been removed before 2.6.9.
 
1030
Make sure people won't try the broken USB driver any more...
 
1031
README: Add blurb about wireless-tools version issues.
 
1032
 
 
1033
35 (USB still broken, ACX111 WEP not functional yet):
 
1034
First attempt to fix promiscuous/multicast support in order to
 
1035
not always let the card capture all packets.
 
1036
Improve recalibration by only recalibrating in 5-minute intervals to
 
1037
avoid excessive recalibration which might perhaps lead to excessive
 
1038
temperature due to keeping the card running permanently.
 
1039
Completely revised net queue handling (use netif_carrier_xxx() functions,
 
1040
too). Not too much testing, seems to work for me.
 
1041
Fix firmware version parsing.
 
1042
scripts/start_net: Usability improvements by Craig Fields.
 
1043
Make power LED toggling work on acx111, too (PLEASE REPORT WHETHER IT STILL
 
1044
WORKS ON AN EXTERNAL ACX100 CARD!).
 
1045
Revise state handling, since it was broken.
 
1046
Fix error on "iwconfig rate auto" on acx100.
 
1047
On joining, the DTIM interval had been set slightly incorrectly.
 
1048
Clear CTL_OWN bit AFTER having set the Status field.
 
1049
Fix incorrect rx filter config bits.
 
1050
Remove queue task flushing, caused hang on shutdown by itself, and it
 
1051
was useless, too.
 
1052
Fix potential calculation error due to endianness conversion issues,
 
1053
add some missing endianness corrections.
 
1054
Disable setting of Master mode for now, since it's totally not working
 
1055
anyway.
 
1056
Add Short Preamble Tx logging for ACX111.
 
1057
IO_ACX_INT_TRIG should simply have individual bits set, not the ones
 
1058
read back from IO_ACX_INT_TRIG plus the one I want to notify.
 
1059
Introduce more aggressive locking possibility in clean_tx_desc, but
 
1060
this might break things, deactivated.
 
1061
Add a cond_resched() at some places when useful and supported.
 
1062
Shorten log messages.
 
1063
Comment out some struct members.
 
1064
Add some more unlikely()/likely().
 
1065
Add notification about limited acx111 power level capability
 
1066
README: 5 tons of updates.
 
1067
TODO: Update.
 
1068
 
 
1069
34 (USB still broken, ACX111 WEP not functional yet):
 
1070
Free netdev at the very end only to avoid timeout handler OOPS due to
 
1071
invalid dev (appears to have fixed it!).
 
1072
Don't keep recalibrating endlessly, since it led to an endless loop.
 
1073
Calibrate the radio in the timeout handler, too.
 
1074
Make sure to use low rates initially on Tx rate auto in order to not
 
1075
have transfer problems with distant/slow peers.
 
1076
static'ize some functions and ifdef out several unused functions,
 
1077
thus saving 5kB file/memory size :-)
 
1078
Don't disable the radio Tx/Rx before enabling it, since I suspect it
 
1079
might confuse the firmware during packet handling.
 
1080
Fix struct packing to do the same as other kernel drivers do and to
 
1081
get rid of gcc 3.4.x warnings.
 
1082
More accurate PCI device ID defines.
 
1083
Add more diag output to /proc (struct TIWLAN_DC).
 
1084
Remove some bogus struct length initialization.
 
1085
Slight logging improvements.
 
1086
README update.
 
1087
 
 
1088
33 (USB still broken, ACX111 WEP not functional yet):
 
1089
Wake net queue on timeout if needed.
 
1090
Use an emergency Tx descriptor cleanup handler in Tx timeout handler,
 
1091
because the standard Tx descriptor cleanup handler expects
 
1092
the ring buffer to be in a certain state, which is a bad thing.
 
1093
Retry radio calibration in case a calib operation failed (e.g. Tx busy
 
1094
error)
 
1095
We forgot to remove the task scheduler, which caused an OOPS on
 
1096
unloading in case the task scheduler got called after vital resources
 
1097
had already been freed...
 
1098
Make acx_after_interrupt_task use dev instead of priv.
 
1099
Add FIXME for problematic mysterious OOPS.
 
1100
"failed" --> "FAILED"
 
1101
Log firmware_numver, too.
 
1102
 
 
1103
32 (USB still broken, ACX111 WEP not functional yet):
 
1104
[sorry, forgot cvs update, pf32 now updated to be the REAL pf32]
 
1105
Get rid of repeated calibration notification messages by disabling
 
1106
them after some time.
 
1107
Dynamic scaling of Tx cleanup period depending on number of
 
1108
Tx buffers (rather boring feature).
 
1109
Tell people to go to README on out of memory situations.
 
1110
Several README updates.
 
1111
Add some error text.
 
1112
Small logging fix.
 
1113
 
 
1114
31 (USB still broken):
 
1115
- do implement radio recalib on Tx error 0x20, since it much improves
 
1116
availability for me on acx100. Watch out for possible side-effects which *might* happen such as prolonged card operation into fatal temperature levels!!
 
1117
- fix *HORRIBLE* bug in host memory allocation for Rx buffers:
 
1118
  we only allocated a struct size instead of sufficient space for many
 
1119
  Rx packet bodies (who changed that for the worse?)
 
1120
- halted member of struct usb_device got removed in 2.6.9-rc1
 
1121
- fix acx100_ie_memconfigoption_t reversed TxBlockNum/RxBlockNum
 
1122
- merge acxlog(), printk, sprintf into single statements(saves 5K(!) o
 
1123
f RAM)
 
1124
- much improved driver startup speed (improved scheduling)
 
1125
- Rename many functions from acx100_XXX to acx_XXX
 
1126
- Makefile: Don't pretend that compile succeeded when we don't actuall
 
1127
y know it for sure
 
1128
- add some more unlikely()
 
1129
- move some debug logs after the stuff has been done that they're talk
 
1130
ing about
 
1131
- changes in the acx100_dump_bytes area
 
1132
- slightly improve acx100_rxmonitor
 
1133
- add debugging of Rx data
 
1134
- add debugging to resume handler
 
1135
- remove some bogus casts
 
1136
 
 
1137
30 (AMD64 should work now, please test! USB still broken):
 
1138
andi:
 
1139
- Clean up structure naming and packing (should fix AMD64 problems).
 
1140
- Fix kernel version dependent __devinitdata problem, change
 
1141
radio status text.
 
1142
- default acx111 ring buffers to 32 entries, remove some bogus casts.
 
1143
- Improve beacon frame creation, improve error message
 
1144
- Fix my max_rate screwup.
 
1145
- fetch_firmware: Add 20 second timeout to avoid eternally hanging on first URL in list.
 
1146
- Makefile: Less confusing firmware directory message.
 
1147
- More accurate PCI device ID defines.
 
1148
- Remove some bogus struct length initialization.
 
1149
- README and docu updates.
 
1150
Fix variable naming: erate -> orate, emask -> omask, ...
 
1151
("operational")
 
1152
Denis Vlasenko:
 
1153
- Remove ISTATUS_5_UNKNOWN and unknown0x2350.
 
1154
- add some comments and TODOs and rename fields to more understandable names.
 
1155
- fix cases where we print MAC addresses 'smashed together'
 
1156
like this:
 
1157
  00.E0.98.BA.20.C300.E0.98.BA.20.C300.04.E2.64.23.C200.04.E2.64.23.C200.04.E2.64.23.C2<4>
 
1158
 
 
1159
29 (mainly cleanup, some AMD64 fixes, USB still broken):
 
1160
andi:
 
1161
Clean up structure naming and packing (should fix AMD64 problems, too,
 
1162
hopefully).
 
1163
More accurate PCI device ID defines.
 
1164
Remove some bogus struct length initialization.
 
1165
 
 
1166
Denis Vlasenko:
 
1167
Remove ISTATUS_5_UNKNOWN and unknown0x2350.
 
1168
acx100_probe_pci() has far too many error cases,
 
1169
cannot be handled by acx_cleanup_card_and_resources().
 
1170
I actually hit a bug when fw upload fails due to
 
1171
missing file. I am sure there are other cases.
 
1172
 
 
1173
Patch takes care of that by reworking error
 
1174
handling.
 
1175
 
 
1176
28 (this one should be much better; USB still broken):
 
1177
andi:
 
1178
Don't comment out card rate fallback activation, since we need it
 
1179
for proper auto rate support (otherwise e.g. we're stuck with the
 
1180
card staying at the same *unsupportedly* high rate during the same
 
1181
Tx attempt round, which is bad if we only attempt to send once,
 
1182
e.g. for MGMT frames...).
 
1183
in iwconfig rate, make sure to fill up all lower rates, too,
 
1184
since APs *expect* to have full support for all rates, not just the
 
1185
highest, and we cannot configure this aspect in iwconfig rate,
 
1186
only in iwpriv set_rates. This implies we need to restrict acx111
 
1187
rate mask to highest rate on Tx if not in auto mode, so added support
 
1188
for that, too.
 
1189
Indicate proper acx111 Tx power levels (according to the two levels
 
1190
the card usually supports).
 
1191
Revert default safe 16bit I/O to faster 32bit and instead make sure
 
1192
that people notice the problem and know what to do then.
 
1193
start_net: Make sure to use auto rate by default.
 
1194
Fix configoptions output.
 
1195
Rename some variables to useful names, add some hopefully helpful comments.
 
1196
 
 
1197
Denis Vlasenko:
 
1198
* Eliminate ACX_TXRATE (replace with RATE100)
 
1199
* Add an explanation about preambles
 
1200
* const char *str => const char str[]
 
1201
* untangle if (OK != (err = register_netdev(dev)))
 
1202
* missing FN_EXIT
 
1203
* 6 => ETH_ALEN
 
1204
 
 
1205
Not so much trivial:
 
1206
* someone broke SET/GET convention, fix it.
 
1207
  You may need to test that I didn't accidentally broke
 
1208
  ENABLE_[EX_]LOW_POWER_PACKETS ioctl with this.
 
1209
 
 
1210
 
 
1211
27 (USB still broken):
 
1212
andi:
 
1213
Revert to 16bit I/O access as default, since it appears to fix some
 
1214
firmware upload failure cases.
 
1215
Several cleanups, mainly towards better WEP support for ACX111 (not done yet!).
 
1216
Cleanup patch, e.g. to enable me to debug the rmmod OOPS a bit better:
 
1217
Move /proc handling to acx100_helper.c.
 
1218
Move some functions around, renaming.
 
1219
Shorten many log messages.
 
1220
Move more I/O register init stuff to ioregister.c
 
1221
Remove bogus netif_device_detach()
 
1222
capability is a 16bit value, so print it accordingly.
 
1223
 
 
1224
26 (USB still broken):
 
1225
andi:
 
1226
- hack to make acx111 actually attempt to authenticate with an AP
 
1227
  in case we explicitly stop the scan (I've still got issues with connecting
 
1228
  to my WRT54GS-DE, though, maybe spec compliance of auth frames?)
 
1229
  When connecting, I get assoc req error 18 (invalid basic rate set).
 
1230
  Seems we've got some fixup to do after the recent rate patch...
 
1231
 
 
1232
25 (USB still broken, sorry):
 
1233
Denis Vlasenko:
 
1234
- large Tx auto rate patch (improvements, work towards per-peer auto rate)
 
1235
andi:
 
1236
- AMD64 fixes (is it better now?)
 
1237
- add many more fields to /proc/driver/acx_wlanX_diag
 
1238
- Some acx111 scanning updates. Hopefully this will only improve stuff
 
1239
- more endianness fixes
 
1240
- TONS of cleanups in the driver
 
1241
- Makefile: clean up some temp files
 
1242
- README and TODO updates
 
1243
 
 
1244
24 (USB still fatally broken - no time AT ALL! this release took **WAY** too
 
1245
much time anyway...):
 
1246
csucsu:
 
1247
- init_wep cleanup.
 
1248
- fix (unify) return values
 
1249
- use CLEAR_BIT/SET_BIT macro
 
1250
olli:
 
1251
- acx111 features - (extremely) low power packet receive
 
1252
andi:
 
1253
- Fix an endless amount of buggy commits.
 
1254
- Reinit the templates whenever an important parameter changes (doh!).
 
1255
- Reopen netdev queue on assoc, hopefully fixes all remaining
 
1256
- NETDEV WATCHODG issues.
 
1257
- Unify acx100 and acx111 reset_dev code.
 
1258
- Correct /proc/driver/acx_wlanX output.
 
1259
- Remove "wrong" kmalloc result casts.
 
1260
Denis Vlasenko (sorry, didn't commit your enhanced 23.1 patch due to conflicts
 
1261
from previous commit):
 
1262
- moves logging code out of line - 50kb saved
 
1263
- speed optimizes it
 
1264
- removes return's at end of void functions
 
1265
- brings sanity to p802addr_to_str
 
1266
- As a bonus, it fixes a bug: '/* Driver defaults */' were defined inside #ifdef ACX_DEBUG.
 
1267
Benjamin Schrauwen:
 
1268
- some scripts/fetch_firmware fixes
 
1269
 
 
1270
23:
 
1271
Denis Vlasenko:
 
1272
  improve acx100 auto rate support, interfacing to the acx111
 
1273
  auto rate layer. (ed. note: works beautifully!)
 
1274
  Fix problem with leftover acx111 code causing acx111 oops
 
1275
 
 
1276
22 (note: acx111 still awkward for me - rate setting):
 
1277
DON'T reset Ctl field to 0, this caused ring buffer lockup after some 30
 
1278
minutes or some hours due to timing issues and thus TxQueueFree drift
 
1279
down to 0 (note: will disrupt traffic for acx111, so don't do that here for
 
1280
now).
 
1281
Reset rts/ack counters in Tx clean handler, not during the precious time
 
1282
when we want to send something.
 
1283
Reset error byte, too.
 
1284
Improve ring buffer printout (also display Linux netdev queue status).
 
1285
Reset TxQueueFree in Tx timeout helper to original value to improve
 
1286
repair probability.
 
1287
Rename pDesc to pRxDesc/pTxDesc.
 
1288
Several endianness fixes (especially USB).
 
1289
Rename descriptors' Ctl values to x_8 and x_16 to directly indicate
 
1290
byte or word width (endianness!!).
 
1291
 
 
1292
21 (20 tons of new fixes, ChangeLog is... yawn... ok, sorry, too tired, will do
 
1293
tomorrow...)
 
1294
 
 
1295
20 (USB still not fixed, ACX111 is now (much?) more reliable, for me at least):
 
1296
Denis Vlasenko:
 
1297
- add support for 802.11g rates
 
1298
- Improve/fix info mailbox management
 
1299
- split buffer debugging into tx/rx
 
1300
Gabor Csuri:
 
1301
- Makefile clean target fix
 
1302
- add more WEP keys to start_net
 
1303
Small log change.
 
1304
Some README updates.
 
1305
 
 
1306
19 (USB still not fixed, ACX111 is still flaky, probably a bit less):
 
1307
Ring buffer improvements to fix recent fatal NETDEV WATCHDOG deadlock issue
 
1308
caused by a ring buffer weakness exposed by recent optimization.
 
1309
Peter 'p2' De Schrijver: Many endianness fixes for PPC.
 
1310
Partial AMD64 fixes.
 
1311
HUGE dma queue cleanup (much simplified, plugged several leaks, saves
 
1312
>= 1.5kB driver size!), rename GetPhyMediumBusy to GetPhyChanBusy
 
1313
(that name turned out to be too long for some very strange reason),
 
1314
try to prevent GetPhyChanBusy calculation overflow.
 
1315
Gabor Csuri: wep ioctl fixes, preparation for 802.11g rates
 
1316
Denis Vlasenko: add missing FN_EXIT statements
 
1317
 
 
1318
18 (USB still not fixed, ACX111 is quite flaky at least since pf13,
 
1319
will do more fixing/testing soon :-\):
 
1320
Sascha Sommer: brown paper bag fix (-> Andreas) breaking acx111 cards.
 
1321
(NOTE: acx111 still doesn't really work for me in any recent tar file
 
1322
for some reason, dma errors)
 
1323
Fix "IRQ xx: nobody cared" fatal card deactivation message with help from
 
1324
Denis Vlasenko (turned out we used a slightly wrong I/O register,
 
1325
so we had to do problematic IRQ activation).
 
1326
Cleaned up ACX111 reset procedure considerably (now basically identical
 
1327
to ACX100!).
 
1328
Implement iwpriv GetPhyMediumBusy (determine busy percentage of phy medium).
 
1329
Add priv->irq_mask_off to store the "all IRQs off" mask for ACX100/ACX111.
 
1330
Add position indicators to ring buffer printout in acx_wlan0_diag.
 
1331
The Rx descriptor full/empty flag (BIT31) was actually REVERSED!
 
1332
(tested, works, and maybe it even works better now...)
 
1333
Add some more hardware IDs.
 
1334
Optimization:
 
1335
Add unlikely(), clean Tx descriptor queue on Tx timeout,
 
1336
don't clean Tx descriptors on every IRQ,
 
1337
set dev->last_rx at the correct moment, use macros instead of memcpy() /
 
1338
memcmp().
 
1339
Updated iwpriv docu doc/iwpriv.txt.
 
1340
 
 
1341
17 (doh!!! Not even ACX100 worked in plus_fixes_15!):
 
1342
(I disabled and re-enabled radio Rx/Tx, but this broke ACX100 Rx completely!)
 
1343
Huge ring buffer cleanup/speedup.
 
1344
Replace I/O register management by much more memory saving static version.
 
1345
Some ACX100/ACX111 Tx descriptor size differences fixup (not too important).
 
1346
Small descriptor speedup.
 
1347
Rename SetPHYAmpBias to SetPhyAmpBias.
 
1348
pci_free_consistent pTxHostDescQPool copy&paste(?) / USB support bug fix.
 
1349
General cleanup.
 
1350
Zero out issue_cmd result buffer on failure.
 
1351
 
 
1352
16 (the "embarrassing bug fix release"; sorry, USB still not fixed):
 
1353
Denis Vlasenko: fix fatal typo in acx111_get_io_register_array()
 
1354
                killing all ACX111 cards dead (the box, that is...)
 
1355
 
 
1356
15 (sorry, USB still not fixed):
 
1357
Implement iwpriv SetPHYAmpBias. YAY! :)
 
1358
Fix USB compile on 2.4.x. My bad! (USB does NOT work currently...)
 
1359
Figure out exact chip names according to firmware ID.
 
1360
Make sure we don't list our own MAC when scanning.
 
1361
Proper documentation of antenna diversity settings.
 
1362
separate set_wepkey()
 
1363
Tried fixing ACX111 phy reg access, no luck.
 
1364
Disable Rx/Tx when modifying PHY stuff.
 
1365
Fix compiler warnings.
 
1366
Change acxlog() to use more sane syntax.
 
1367
Clean up TIWLAN_DC.
 
1368
Unify ACX100 USB and non-USB descriptor flag defines.
 
1369
Updated README, TODO.
 
1370
Add some firmware documentation.
 
1371
 
 
1372
14 (ACX100 USB does NOT work in this tar any more, will fix soon):
 
1373
Olli: ACX111 changes:
 
1374
- Added support to change tx power level
 
1375
- Added support to receive low power packets but not enabled yet.
 
1376
- Removed setting of WEP options (not available on ACX111)
 
1377
- Added ACX111_IE_RADIO_BAND
 
1378
- Added two structures: ACX111TxLevel, ACX111FeatureConfig
 
1379
Denis Vlasenko: Fixed my (Andreas's) 16-bit acx100_write_reg32() screwup.
 
1380
Fix compile for users attempting a make in src/
 
1381
Fix two horrible WEP bugs:
 
1382
- two WEP config cmds were REVERSED!
 
1383
- off-by-1 struct addressing bug
 
1384
Do dump_stack in L_CTL case only.
 
1385
Allow set_ap in Auto mode, too (LinuxTag relevant ;-).
 
1386
Dr. Olaf Flebbe: The Ralink radio appears to have the same PHY register layout, so add support for Tx level and sensitivity for it.
 
1387
fix bug in acx100_write_cmd_type, unify to acx100_write_cmd_type_or_status
 
1388
unify ihw_usb.c into ihw.c (most likely broke USB operation, will fix
 
1389
soon, should also be able to achieve MUCH more unification)
 
1390
Finally found out that radio type 0x16 must be Radia!
 
1391
Add verbose message to explain set_ap failure reason.
 
1392
Add DbgGetIo and DbgSetIo to be able to debug lockups more closely
 
1393
fetch_firmware: Update yet again outdated URLs. Ask people to report any broken links. More detailed error message.
 
1394
Rename all commands to indicate their chip suitability (ACX100 / ACX111).
 
1395
Unify some redundant struct definitions into one authoritative one.
 
1396
Remove annoying log output.
 
1397
Add FW1130.BIN to the firmware names we attempt to find.
 
1398
Endianness fixes done on LinuxTag! :-) (not fully finished yet!)
 
1399
  (with LOTS of help from Linux ports expert Peter De Schrijver using his
 
1400
  Powerbook G3, a VERY capable guy :-)
 
1401
  Memory access functions already do byte-swapping themselves!! (undid
 
1402
  many changes, doh! :-\)
 
1403
  Many fixes in 802.11 stack.
 
1404
  Remove many non-acx defines.
 
1405
  PowerPC fix: PPC seems to have char defined as unsigned.
 
1406
Fixup USB code to use more sane packet format, just like the normal
 
1407
ACX100 stuff does.
 
1408
Improve assoc logging, add comment about buggy code.
 
1409
More experiments with memory read/write via firmware. No luck.
 
1410
Remove oldish Makefile messages
 
1411
replace acx111 command numeric values by their names
 
1412
Small README update.
 
1413
 
 
1414
13:
 
1415
RENAME ALL IWPRIV COMMANDS TO Upper-Lower-Case TO MAKE THEM SHORTER.
 
1416
Added acx111 scan functions.
 
1417
Fix Ad-Hoc "master" mode (we were sending out Beacon frames with an
 
1418
outdated ESSID since we forgot to reinit Beacon templates on config
 
1419
change).
 
1420
Add iwpriv SetScanDelay to set the per-channel wait time.
 
1421
Use macros instead of inlined functions for I/O access (faster/smaller).
 
1422
Do dump_stack in L_CTL case only.
 
1423
Print jiffies for profiling.
 
1424
Set iwconfig name to "IEEE 802.11g+" for acx111 cards.
 
1425
Message fixes.
 
1426
removed unneeded parameter from acx111_init_packet_templates
 
1427
 
 
1428
12 (no acx111-specific fixes):
 
1429
Use standard default values for short and long retry limits (7 and 4 instead
 
1430
of 5 and 3).
 
1431
Reduce default Tx power level to 18dBm everywhere due to WRT54G radio damage
 
1432
stories...
 
1433
Fix iwlist scan to not output an error if we found 0 stations.
 
1434
Many optimizations: always log AFTER the dirty work, add likely/unlikely
 
1435
branch prediction tunings, slightly speed up IRQ handler.
 
1436
Fix WEP variable size bug.
 
1437
Fix slight auto increment bug.
 
1438
Fix use of incorrect size for wep_mgmt cmd transfer.
 
1439
Fix incorrect use of "1" parameter for 0 parameters at ACX100_CMD_DISABLE_TX.
 
1440
Add read/write memory access by firmware capability.
 
1441
README updates: warning about Tx power level, "link failed" issue.
 
1442
TODO updates.
 
1443
 
 
1444
11:
 
1445
ACX111 scanning fixes.
 
1446
Mention how to disable console flooding.
 
1447
 
 
1448
10 (aka the "where are the non-x86 architecture ports, dammit!?" version):
 
1449
More fixes for triggering a scan in Auto mode.
 
1450
Fix macro compile error with certain compilers.
 
1451
Small memory and speed fixes.
 
1452
Improve logging.
 
1453
Improve info mailbox support.
 
1454
Big README update.
 
1455
Fix Israel regulatory domain parameters.
 
1456
Makefile fix.
 
1457
 
 
1458
9:
 
1459
Fix scan broken in mode Auto.
 
1460
Fix sensitivity update (timing?) problem.
 
1461
Fix/improve bus access width log.
 
1462
README updates.
 
1463
At least do make clean for make distclean.
 
1464
 
 
1465
8:
 
1466
Fix gcc 2.95 c++ism screwups.
 
1467
Fix sensitivity setting failure. Thanks to Paisa Seeluangsawat.
 
1468
Document ACX100 USB status.
 
1469
 
 
1470
7:
 
1471
Merge final pieces of ACX111 support!!! (untested for lack of hardware, though)
 
1472
Disable power save mode again (broke scanning).
 
1473
Fix *.o/*.ko handling in scripts/start_net
 
1474
Another gcc 3.4.x fix.
 
1475
More endianness fixes.
 
1476
Much more user-friendly installation.
 
1477
USB updates, make driver load /usr/share/acx/ACX100_USB.bin.
 
1478
Add task handler (IRQ BH handling).
 
1479
Add iwpriv DbgSetMasks (for debugging only).
 
1480
Kill compiler warnings.
 
1481
Splint fixes.
 
1482
 
 
1483
6:
 
1484
Fix broken acx_signal_to_winlevel inlining breaking gcc 3.4.x compile.
 
1485
It looks a lot like wireless_send_event is actually only available with
 
1486
WIRELESS_EXT > 13.
 
1487
ACX USB should also use /usr/share/acx/ as default firmware directory.
 
1488
Fix another AMD64 issue.
 
1489
Reorder probe_pci failure cleanup, hopefully fix annoying
 
1490
"unregister_netdevice: device wlan0/XXXXXXXX never was registered" message.
 
1491
 
 
1492
5 (aka the "sorry, 4 was too broken" version):
 
1493
Fix problems caused by Linux 2.6.x define screwup.
 
1494
Fix SET_NETDEV_DEV symbol non-existing in 2.4.x.
 
1495
Fix some pointers to be real pointers, not integers (for AMD64).
 
1496
Fix variable defines in order to fix broken variable lengths.
 
1497
This causes > 100 bytes less memory use :)
 
1498
Should fix AMD64 firmware loading issue.
 
1499
Fix some USB compile warnings.
 
1500
All in all I'm a happy camper, should make AMD64 work a lot better now. :)
 
1501
 
 
1502
4:
 
1503
Fix DMA memory leak on suspend/resume.
 
1504
Improve locking (optimize for speed), some small locking fix.
 
1505
Actually install the acx_usb.ko module on 2.6.x, since it's compiling
 
1506
(and working!) properly now.
 
1507
Add the device and driver symlinks in /sys/class/net/<ifname>
 
1508
More detailed Tx error output.
 
1509
Many -pedantic fixes.
 
1510
Remove some foreign information from acx100.h.
 
1511
Remove wireless extension version info warning from acx100_ioctl.c.
 
1512
Update TODO.
 
1513
 
 
1514
3:
 
1515
Fix floating point use in driver, add warning infrastructure.
 
1516
Newer ACX111 firmware versions seem to have switched to using an
 
1517
external radio module, so reenable radio module loading for ACX111.
 
1518
inject_kernel_tree updates.
 
1519
README updates.
 
1520
 
 
1521
2:
 
1522
IMPLEMENT ACTUALLY RATHER WELL-WORKING POWER MANAGEMENT!! :-)
 
1523
Now I can fully suspend/resume the card and can actually continue with the
 
1524
OLD connection if it hasn't timed out yet :)
 
1525
Use default firmware directory /usr/share/acx in case no custom
 
1526
firmware_dir has been specified and tell the user we did that.
 
1527
Calling iwconfig commit before ifup led to OOPS since the timer wasn't
 
1528
initialized yet. Make sure we only update card settings if the interface
 
1529
is up.
 
1530
Increment initial scan time from 1.5s to 2.5s: short scan time
 
1531
missed some upper channels :-\
 
1532
reg_domain_ids cleanup; hopefully fix array corruption.
 
1533
Fix screwed up wireless extensions version checks.
 
1534
Fix off-by-1 error in iwlist scan channel frequency calculation.
 
1535
Do some further ACX_IO_WIDTH work that I missed.
 
1536
Fix DEPMOD lookup for users lacking /sbin in PATH.
 
1537
Fix some small variable size issue.
 
1538
 
 
1539
1:
 
1540
Fix pci_name() screwup for kernels < 2.4.21. Doh, not again!
 
1541
Add define ACX_IO_WIDTH, use 32bit access everywhere per default now.
 
1542
Some small USB driver updates.
 
1543
More useful signal quality calculation.