Re: Zonet ZEW2000PF on 2.6.6
Joerg Albert <[email protected]>
| Newsgroups | gmane.linux.drivers.at76c503a.user |
|---|---|
| Message-ID | <[email protected]> |
Hi Dudley, On Sat, 19 Jun 2004, Dudley Atkinson wrote: > Hi all.... > > I'm stuck with trying to get a Zonet ZEW2000PF to work in a 2.6.6 > installation. Perhaps someone with more experience with the Berlios driver > set can help me with any pointers. Maybe the answer is simply to walk away. > Please help me decide! > > Here is the log output when I insert the usb plug for the device. I know > that hotplug is working right because other devices are getting loaded fine > with their firmware when I use them. > > The device is a Zonet ZEW2000PF and it seems to have a at76c505a chip? sorry, but support for the AT76C505A is still experimental in the cvs. Alex Schultz proposed some changes seen in the BSD driver (see his previous postings under the Subject "[at76c503a-user] SMC2662W V.4"). I've added a new board type and the USB ids in the driver, copied the firmware from the BSD driver, but not any special handling for these devices (still waiting for Alex' results). Please try the attached patch, but I fear your error during _internal_ firmware download won't disappear. I haven't got one of these devices here. What are the USB ids of your device? Any FCC id? /Jörg
smc_v4.patch
(text/plain, 1 KB)
Index: at76c503.c
===================================================================
RCS file: /cvsroot/at76c503a/at76c503a/at76c503.c,v
retrieving revision 1.60
diff -u -r1.60 at76c503.c
--- at76c503.c 15 Jun 2004 18:20:37 -0000 1.60
+++ at76c503.c 15 Jun 2004 20:26:23 -0000
@@ -2558,6 +2558,12 @@
err("Downloading external firmware failed: %d", ret);
goto end_external_fw;
}
+ if (dev->board_type == BOARDTYPE_505A_RFMD_2958) {
+ info("200 ms delay for board type 7");
+ /* jal: can I do this in kevent ??? */
+ set_current_state(TASK_INTERRUPTIBLE);
+ schedule_timeout(HZ/5+1);
+ }
}
NEW_STATE(dev,INIT);
init_new_device(dev);
@@ -2581,8 +2587,11 @@
if ((ret=at76c503_remap(dev->udev)) < 0) {
err("sending REMAP failed with %d",ret);
- goto end_internal_fw;
+ if (dev->board_type == BOARDTYPE_505A_RFMD_2958)
+ info("ignoring this error for board type 7");
+ else
+ goto end_internal_fw;
}
dbg(DBG_DEVSTART, "sleeping for 2 seconds");