Changes in uspace/drv/root/root.c [7034be15:5291411] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/root/root.c
r7034be15 r5291411 72 72 static int add_platform_child(device_t *parent) 73 73 { 74 return EOK;75 74 printf(NAME ": adding new child for platform device.\n"); 76 75 … … 120 119 } 121 120 122 /** Create virtual USB host controller device.123 * Note that the virtual HC is actually device and driver in one124 * task.125 *126 * @param parent Parent device.127 * @return Error code.128 */129 static int add_virtual_usb_host_controller(device_t *parent)130 {131 printf(NAME ": adding virtual host contoller.\n");132 133 int rc;134 device_t *vhc = NULL;135 match_id_t *match_id = NULL;136 137 vhc = create_device();138 if (vhc == NULL) {139 rc = ENOMEM;140 goto failure;141 }142 143 vhc->name = "vhc";144 printf(NAME ": the new device's name is %s.\n", vhc->name);145 146 /* Initialize match id list. */147 match_id = create_match_id();148 if (match_id == NULL) {149 rc = ENOMEM;150 goto failure;151 }152 153 match_id->id = "usb&hc=vhc";154 match_id->score = 100;155 add_match_id(&vhc->match_ids, match_id);156 157 /* Register child device. */158 rc = child_device_register(vhc, parent);159 if (rc != EOK)160 goto failure;161 162 return EOK;163 164 failure:165 if (match_id != NULL)166 match_id->id = NULL;167 168 if (vhc != NULL) {169 vhc->name = NULL;170 delete_device(vhc);171 }172 173 return rc;174 }175 176 121 /** Get the root device. 177 122 * … … 188 133 printf(NAME ": failed to add child device for platform.\n"); 189 134 190 /* Register virtual USB host controller. */191 int rc = add_virtual_usb_host_controller(dev);192 if (EOK != rc) {193 printf(NAME ": failed to add child device - virtual USB HC.\n");194 }195 196 135 return res; 197 136 }
Note:
See TracChangeset
for help on using the changeset viewer.