summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorDavid Gwynne <dlg@cvs.openbsd.org>2004-12-06 09:05:52 +0000
committerDavid Gwynne <dlg@cvs.openbsd.org>2004-12-06 09:05:52 +0000
commit191c1bd26ad1fe5310f9d0eeb6c44681682eda24 (patch)
tree251f4c8eada50ca65b9f2cb4badc250386c0e310 /sys/dev
parent586f2ef7f645457d25cb6335c43f0b3fa3da68d7 (diff)
dont try and detect if the external firmware is already loaded by changing
the channel on atu devices with intersil radios. it seems to crash the firmware. from daan vreeken, tested by mitja muzenic
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/usb/if_atu.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/sys/dev/usb/if_atu.c b/sys/dev/usb/if_atu.c
index 9b68b82179d..1fa58984a84 100644
--- a/sys/dev/usb/if_atu.c
+++ b/sys/dev/usb/if_atu.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_atu.c,v 1.38 2004/12/05 12:25:59 dlg Exp $ */
+/* $OpenBSD: if_atu.c,v 1.39 2004/12/06 09:05:51 dlg Exp $ */
/*
* Copyright (c) 2003, 2004
* Daan Vreeken <Danovitsch@Vitsch.net>. All rights reserved.
@@ -945,11 +945,13 @@ atu_upload_external_firmware(struct atu_softc *sc)
* channel number. If we succeed, external firmware must have been
* already uploaded...
*/
- err = atu_get_mib(sc, MIB_PHY__CHANNEL, &channel);
- if (! err) {
- DPRINTF(("%s: external firmware has already been "
- "downloaded\n", USBDEVNAME(sc->atu_dev)));
- return 0;
+ if (sc->atu_radio != RadioIntersil) {
+ err = atu_get_mib(sc, MIB_PHY__CHANNEL, &channel);
+ if (! err) {
+ DPRINTF(("%s: external firmware has already been "
+ "downloaded\n", USBDEVNAME(sc->atu_dev)));
+ return (0);
+ }
}
switch (sc->atu_radio) {