Changes in uspace/drv/bus/usb/uhci/main.c [0f6b50f:53a309e] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/uhci/main.c
r0f6b50f r53a309e 49 49 #define NAME "uhci" 50 50 51 static int uhci_driver_init(hcd_t *, const hw_res_list_parsed_t *, ddf_dev_t *); 52 static int uhci_driver_start(hcd_t *, bool); 51 static int uhci_driver_init(hcd_t *, const hw_res_list_parsed_t *, bool); 53 52 static void uhci_driver_fini(hcd_t *); 54 static int disable_legacy( hcd_t *,ddf_dev_t *);53 static int disable_legacy(ddf_dev_t *); 55 54 56 55 static const ddf_hc_driver_t uhci_hc_driver = { 57 56 .claim = disable_legacy, 57 .hc_speed = USB_SPEED_FULL, 58 58 .irq_code_gen = uhci_hc_gen_irq_code, 59 59 .init = uhci_driver_init, 60 .start = uhci_driver_start,61 .setup_root_hub = hcd_setup_virtual_root_hub,62 60 .fini = uhci_driver_fini, 63 61 .name = "UHCI", … … 69 67 }; 70 68 71 static int uhci_driver_init(hcd_t *hcd, const hw_res_list_parsed_t *res, ddf_dev_t *device)69 static int uhci_driver_init(hcd_t *hcd, const hw_res_list_parsed_t *res, bool irq) 72 70 { 73 int err;74 75 71 assert(hcd); 76 72 assert(hcd_get_driver_data(hcd) == NULL); … … 80 76 return ENOMEM; 81 77 82 if ((err = hc_init(instance, res)) != EOK) 83 goto err; 84 85 hcd_set_implementation(hcd, instance, &uhci_hc_driver.ops, &instance->bus.base); 86 87 return EOK; 88 89 err: 90 free(instance); 91 return err; 92 } 93 94 static int uhci_driver_start(hcd_t *hcd, bool interrupts) 95 { 96 assert(hcd); 97 hc_t *hc = hcd_get_driver_data(hcd); 98 99 hc->hw_interrupts = interrupts; 100 hc_start(hc); 101 return EOK; 78 const int ret = hc_init(instance, res, irq); 79 if (ret == EOK) { 80 hcd_set_implementation(hcd, instance, &uhci_hc_driver.ops); 81 } else { 82 free(instance); 83 } 84 return ret; 102 85 } 103 86 … … 109 92 hc_fini(hc); 110 93 111 hcd_set_implementation(hcd, NULL, NULL , NULL);94 hcd_set_implementation(hcd, NULL, NULL); 112 95 free(hc); 113 96 } … … 118 101 * @return Error code. 119 102 */ 120 static int disable_legacy( hcd_t *hcd,ddf_dev_t *device)103 static int disable_legacy(ddf_dev_t *device) 121 104 { 122 105 assert(device);
Note:
See TracChangeset
for help on using the changeset viewer.