Changeset fc0271a5 in mainline for uspace/drv/bus/usb/uhci/main.c
- Timestamp:
- 2017-10-12T16:06:37Z (8 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- f9d787c
- Parents:
- d0db4a0
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/uhci/main.c
rd0db4a0 rfc0271a5 45 45 #include <usb/debug.h> 46 46 #include <usb/host/ddf_helpers.h> 47 #include <usb/host/bandwidth.h> 47 48 48 49 #include "hc.h" … … 57 58 static const ddf_hc_driver_t uhci_hc_driver = { 58 59 .claim = disable_legacy, 59 .hc_speed = USB_SPEED_FULL,60 60 .irq_code_gen = uhci_hc_gen_irq_code, 61 61 .init = uhci_driver_init, … … 72 72 static int uhci_driver_init(hcd_t *hcd, const hw_res_list_parsed_t *res) 73 73 { 74 int err; 75 74 76 assert(hcd); 75 77 assert(hcd_get_driver_data(hcd) == NULL); … … 79 81 return ENOMEM; 80 82 81 const int ret = hc_init(instance, res); 82 if (ret == EOK) { 83 hcd_set_implementation(hcd, instance, &uhci_hc_driver.ops); 84 } else { 85 free(instance); 86 } 87 return ret; 83 if ((err = hc_init(instance, res)) != EOK) 84 goto err; 85 86 if ((err = usb2_bus_init(&instance->bus, hcd, BANDWIDTH_AVAILABLE_USB11, bandwidth_count_usb11))) 87 goto err; 88 89 hcd_set_implementation(hcd, instance, &uhci_hc_driver.ops, &instance->bus.base); 90 91 return EOK; 92 93 err: 94 free(instance); 95 return err; 88 96 } 89 97 … … 105 113 hc_fini(hc); 106 114 107 hcd_set_implementation(hcd, NULL, NULL );115 hcd_set_implementation(hcd, NULL, NULL, NULL); 108 116 free(hc); 109 117 }
Note:
See TracChangeset
for help on using the changeset viewer.