Changeset e86b8f0 in mainline for uspace/drv/nic/rtl8139/driver.c
- Timestamp:
- 2012-01-21T12:50:28Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 77a69ea, 86c71de
- Parents:
- 3fe58d3c
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/nic/rtl8139/driver.c
r3fe58d3c re86b8f0 1280 1280 int rtl8139_dev_add(ddf_dev_t *dev) 1281 1281 { 1282 ddf_fun_t *fun; 1283 1282 1284 assert(dev); 1283 1285 ddf_msg(LVL_NOTE, "RTL8139_dev_add %s (handle = %d)", dev->name, dev->handle); … … 1316 1318 } 1317 1319 1318 rc = nic_register_as_ddf_fun(nic_data, &rtl8139_dev_ops); 1320 fun = ddf_fun_create(nic_get_ddf_dev(nic_data), fun_exposed, "port0"); 1321 if (fun == NULL) { 1322 ddf_msg(LVL_ERROR, "Failed creating device function"); 1323 goto err_srv; 1324 } 1325 nic_set_ddf_fun(nic_data, fun); 1326 fun->ops = &rtl8139_dev_ops; 1327 fun->driver_data = nic_data; 1328 1329 rc = ddf_fun_bind(fun); 1319 1330 if (rc != EOK) { 1320 ddf_msg(LVL_ERROR, "Failed to register as DDF function - error %d", rc); 1321 goto err_irq; 1331 ddf_msg(LVL_ERROR, "Failed binding device function"); 1332 goto err_fun_create; 1333 } 1334 rc = ddf_fun_add_to_category(fun, DEVICE_CATEGORY_NIC); 1335 if (rc != EOK) { 1336 ddf_msg(LVL_ERROR, "Failed adding function to category"); 1337 goto err_fun_bind; 1322 1338 } 1323 1339 … … 1327 1343 return EOK; 1328 1344 1345 err_fun_bind: 1346 ddf_fun_unbind(fun); 1347 err_fun_create: 1348 ddf_fun_destroy(fun); 1349 err_srv: 1350 /* XXX Disconnect from services */ 1329 1351 err_irq: 1330 1352 unregister_interrupt_handler(dev, rtl8139->irq);
Note:
See TracChangeset
for help on using the changeset viewer.