Print this page
NEX-16600 "No SOF interrupts have been received" on HPE ProLiant DL380 Gen10, leading to non-working USB EHCI controller
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
@@ -16,14 +16,19 @@
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
+
/*
* Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
*/
+/*
+ * Copyright 2018 Nexenta Systems, Inc.
+ */
+
#ifndef _SYS_USB_EHCID_H
#define _SYS_USB_EHCID_H
#ifdef __cplusplus
@@ -129,13 +134,10 @@
ehci_itd_t *ehci_itd_pool_addr; /* Start of the pool */
ddi_dma_cookie_t ehci_itd_pool_cookie; /* DMA cookie */
ddi_dma_handle_t ehci_itd_pool_dma_handle; /* DMA hndle */
ddi_acc_handle_t ehci_itd_pool_mem_handle; /* Mem hndle */
- /* Condition variable for advance on Asynchronous Schedule */
- kcondvar_t ehci_async_schedule_advance_cv;
-
/* Head of Asynchronous Schedule List */
ehci_qh_t *ehci_head_of_async_sched_list;
/*
* List of QTD inserted either into Asynchronous or Periodic
@@ -1026,17 +1028,10 @@
#define EHCI_ZALLOC 0x02 /* Memory for ehci state structure */
#define EHCI_INTR 0x04 /* Interrupt handler registered */
#define EHCI_USBAREG 0x08 /* USBA registered */
#define EHCI_RHREG 0x10 /* Root hub driver loaded */
-/*
- * This variable is used in the EHCI_FLAGS to tell the ISR to broadcase
- * the ehci_async_schedule_advance_cv when an intr occurs. It is used to
- * make sure that EHCI is receiving interrupts.
- */
-#define EHCI_CV_INTR 0x20 /* Ask INTR to broadcast cv */
-
#define EHCI_UNIT(dev) (getminor((dev)) & ~HUBD_IS_ROOT_HUB)
/*
* Debug printing
* Masks