summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Sperling <stsp@cvs.openbsd.org>2020-06-11 08:19:18 +0000
committerStefan Sperling <stsp@cvs.openbsd.org>2020-06-11 08:19:18 +0000
commit70ff1895a6b074c04a5eeee11e2dc88affd2e97e (patch)
treeef020c2eaffe1a2cb3dce670f24fe51d63c7b425
parent611bfd674abf3102fe58eb69bf63b22e384adc51 (diff)
Load iwx(4) firmware just once.
On iwx(4) devices there is no two-step firmware loading process with an INIT and RT image, as was the case with iwn(4) and iwm(4). Loading the image twice leaves firmware in a semi-operational state with problems such as fatal firmware errors and missing regulatory domain update notifications. Tested by jcs@, sven falempin, and myself. ok patrick@
-rw-r--r--sys/dev/pci/if_iwx.c16
1 files changed, 1 insertions, 15 deletions
diff --git a/sys/dev/pci/if_iwx.c b/sys/dev/pci/if_iwx.c
index 25e086f8d77..05c737abbc6 100644
--- a/sys/dev/pci/if_iwx.c
+++ b/sys/dev/pci/if_iwx.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_iwx.c,v 1.23 2020/06/11 08:18:24 stsp Exp $ */
+/* $OpenBSD: if_iwx.c,v 1.24 2020/06/11 08:19:17 stsp Exp $ */
/*
* Copyright (c) 2014, 2016 genua gmbh <info@genua.de>
@@ -6547,20 +6547,6 @@ iwx_init_hw(struct iwx_softc *sc)
if (err)
return err;
- /* Should stop and start HW since INIT image just loaded. */
- iwx_stop_device(sc);
- err = iwx_start_hw(sc);
- if (err) {
- printf("%s: could not initialize hardware\n", DEVNAME(sc));
- return err;
- }
-
- err = iwx_load_ucode_wait_alive(sc);
- if (err) {
- printf("%s: could not load firmware\n", DEVNAME(sc));
- goto err;
- }
-
if (!iwx_nic_lock(sc))
return EBUSY;