at76c503a crashes on 2.6.21.3

<[email protected]> Tue, 05 Jun 2007 13:29:58 -0500 (CDT)
Newsgroups gmane.linux.drivers.at76c503a.user
Message-ID <[email protected]>
Hello,

i686-pc-linux-gnu 2.6.21.3,
gcc 4.1.2, glibc 2.5, udev 111
at76c503a-0.13.tar.gz
 (md5sum: d34f6c8c4a790eaa5bd2cfd23f239340)
Linksys WUSB11 v2.6

In order to compile the driver at all,
I had to use three workarounds:

1. In /linux-2.6.21.3/include/linux/ added symlink
 config.h -> /linux-2.6.21.3/include/config/x86/find/smp/config.h

2. In /linux-2.6.21.3/include/linux/ added symlink
 devfs_fs_kernel.h -> /usr/include/linux/devfs_fs_kernel.h

3. To avoid the error:
    /usr/src/at76c503a/at76c503.c:7037:38: error:
    macro "INIT_WORK" passed 3 arguments,
    but takes just 2,
   I _alternately_ did:
  3a. In 'at76c503.c' changed
       "INIT_WORK (&dev->kevent, kevent, dev);"
       to "INIT_WORK (&dev->kevent, kevent);"
  3b. Left 'at76c503.c' unchanged and
      in /linux-2.6.21.3/include/linux/ replaced 
      'workqueue.h' with the symlink
      workqueue.h -> /usr/include/linux/workqueue.h

Whether 3a or 3b, after installing the driver
('make install'),
on plugging the device in the USB 2.0 port,
the driver does come up with some clean messages
(correctly? - no mention of registering "wlan0")
but at that point the system crashes (freezes),
fortunately softly (Ctrl-Alt-Del).

Please help,
thank you very much,
-- Alex