Changes in uspace/drv/bus/usb/vhc/main.c [b7fd2a0:5a6cc679] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/vhc/main.c
rb7fd2a0 r5a6cc679 40 40 41 41 #include <usb/host/ddf_helpers.h> 42 #include <usb/host/utility.h> 42 43 43 44 #include <usb/debug.h> … … 69 70 return ret; 70 71 } 71 vhc_init(vhc);72 72 return EOK; 73 73 } 74 74 75 hcd_ops_t vhc_hc_ops = {76 .schedule = vhc_schedule,77 };78 79 75 static errno_t vhc_dev_add(ddf_dev_t *dev) 80 76 { 77 /* Initialize generic structures */ 78 errno_t ret = hcd_ddf_setup_hc(dev, sizeof(vhc_data_t)); 79 if (ret != EOK) { 80 usb_log_error("Failed to init HCD structures: %s.", 81 str_error(ret)); 82 return ret; 83 } 84 vhc_data_t *vhc = ddf_dev_data_get(dev); 85 vhc_init(vhc); 86 87 hc_device_setup(&vhc->base, (bus_t *) &vhc->bus); 88 81 89 /* Initialize virtual structure */ 82 90 ddf_fun_t *ctl_fun = NULL; 83 errno_tret = vhc_control_node(dev, &ctl_fun);91 ret = vhc_control_node(dev, &ctl_fun); 84 92 if (ret != EOK) { 85 usb_log_error("Failed to setup control node.\n"); 86 return ret; 87 } 88 vhc_data_t *data = ddf_fun_data_get(ctl_fun); 89 90 /* Initialize generic structures */ 91 ret = hcd_ddf_setup_hc(dev, USB_SPEED_FULL, 92 BANDWIDTH_AVAILABLE_USB11, bandwidth_count_usb11); 93 if (ret != EOK) { 94 usb_log_error("Failed to init HCD structures: %s.\n", 95 str_error(ret)); 96 ddf_fun_destroy(ctl_fun); 93 usb_log_error("Failed to setup control node."); 97 94 return ret; 98 95 } 99 96 100 hcd_set_implementation(dev_to_hcd(dev), data, &vhc_hc_ops);101 102 97 /* Add virtual hub device */ 103 ret = vhc_virtdev_plug_hub( data, &data->hub, NULL, 0);98 ret = vhc_virtdev_plug_hub(vhc, &vhc->hub, NULL, 0); 104 99 if (ret != EOK) { 105 usb_log_error("Failed to plug root hub: %s. \n", str_error(ret));100 usb_log_error("Failed to plug root hub: %s.", str_error(ret)); 106 101 ddf_fun_destroy(ctl_fun); 107 102 return ret; … … 112 107 * needs to be ready at this time. 113 108 */ 114 ret = hc d_ddf_setup_root_hub(dev);109 ret = hc_setup_virtual_root_hub(&vhc->base, USB_SPEED_HIGH); 115 110 if (ret != EOK) { 116 usb_log_error("Failed to init VHC root hub: %s \n",111 usb_log_error("Failed to init VHC root hub: %s", 117 112 str_error(ret)); 118 113 // TODO do something here...
Note:
See TracChangeset
for help on using the changeset viewer.