Changeset e7bc999 in mainline for uspace/drv/ohci/main.c
- Timestamp:
- 2011-03-20T21:36:17Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 1fb1339, 33577f81, fd9f6e4c
- Parents:
- 42dbb26
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/ohci/main.c
r42dbb26 re7bc999 48 48 49 49 static int ohci_add_device(ddf_dev_t *device); 50 /*----------------------------------------------------------------------------*/ 51 /** IRQ handling callback, identifies device 52 * 53 * @param[in] dev DDF instance of the device to use. 54 * @param[in] iid (Unused). 55 * @param[in] call Pointer to the call that represents interrupt. 56 */ 57 static void irq_handler(ddf_dev_t *dev, ipc_callid_t iid, ipc_call_t *call) 58 { 59 assert(dev); 60 ohci_hc_t *hc = (ohci_hc_t*)dev->driver_data; 61 assert(hc); 62 ohci_hc_interrupt(hc, 0); 63 } 50 64 /*----------------------------------------------------------------------------*/ 51 65 static driver_ops_t ohci_driver_ops = { … … 104 118 } 105 119 106 ret = ohci_hc_init(hcd, hc_fun, mem_reg_base, mem_reg_size); 120 bool interrupts = false; 121 ret = pci_enable_interrupts(device); 122 if (ret != EOK) { 123 usb_log_warning( 124 "Failed(%d) to enable interrupts, fall back to polling.\n", 125 ret); 126 } else { 127 usb_log_debug("Hw interrupts enabled.\n"); 128 interrupts = true; 129 } 130 131 ret = ohci_hc_init(hcd, hc_fun, mem_reg_base, mem_reg_size, interrupts); 107 132 if (ret != EOK) { 108 133 usb_log_error("Failed to initialize OHCI driver.\n"); … … 110 135 return ret; 111 136 } 137 138 ret = register_interrupt_handler(device, irq, irq_handler, NULL); 112 139 113 140 hc_fun->ops = &hc_ops;
Note:
See TracChangeset
for help on using the changeset viewer.