Add a 1ms delay before starting the MHI channels. This is a hack; we're
authorkettenis <kettenis@openbsd.org>
Mon, 5 Feb 2024 10:45:47 +0000 (10:45 +0000)
committerkettenis <kettenis@openbsd.org>
Mon, 5 Feb 2024 10:45:47 +0000 (10:45 +0000)
probably not waiting iproperly for some sort of firmware state transition.
But this gets us going on the x13s.

ok stsp@, phessler@

sys/dev/pci/if_qwx_pci.c

index 6b7310d..d307b55 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: if_qwx_pci.c,v 1.5 2024/02/03 20:07:19 kettenis Exp $ */
+/*     $OpenBSD: if_qwx_pci.c,v 1.6 2024/02/05 10:45:47 kettenis Exp $ */
 
 /*
  * Copyright 2023 Stefan Sperling <stsp@openbsd.org>
@@ -3180,6 +3180,9 @@ qwx_mhi_ready_state_transition(struct qwx_pci_softc *psc)
 void
 qwx_mhi_ee_amss_state_transition(struct qwx_pci_softc *psc)
 {
+       /* XXX without this delay starting the channels may fail */
+       delay(1000);
+
        qwx_mhi_start_channels(psc);
 }