Lines Matching refs:rcdev

191 dpaa2_rc_get_resource_list(device_t rcdev, device_t child)  in dpaa2_rc_get_resource_list()  argument
199 dpaa2_rc_delete_resource(device_t rcdev, device_t child, int type, int rid) in dpaa2_rc_delete_resource() argument
205 if (device_get_parent(child) != rcdev) in dpaa2_rc_delete_resource()
217 device_printf(rcdev, "%s: resource still owned by " in dpaa2_rc_delete_resource()
222 resource_list_unreserve(rl, rcdev, child, type, rid); in dpaa2_rc_delete_resource()
228 dpaa2_rc_alloc_multi_resource(device_t rcdev, device_t child, int type, int *rid, in dpaa2_rc_alloc_multi_resource() argument
249 return (resource_list_alloc(rl, rcdev, child, type, rid, in dpaa2_rc_alloc_multi_resource()
254 dpaa2_rc_alloc_resource(device_t rcdev, device_t child, int type, int *rid, in dpaa2_rc_alloc_resource() argument
257 if (device_get_parent(child) != rcdev) in dpaa2_rc_alloc_resource()
258 return (BUS_ALLOC_RESOURCE(device_get_parent(rcdev), child, in dpaa2_rc_alloc_resource()
261 return (dpaa2_rc_alloc_multi_resource(rcdev, child, type, rid, start, in dpaa2_rc_alloc_resource()
266 dpaa2_rc_release_resource(device_t rcdev, device_t child, int type, int rid, in dpaa2_rc_release_resource() argument
272 if (device_get_parent(child) != rcdev) in dpaa2_rc_release_resource()
273 return (BUS_RELEASE_RESOURCE(device_get_parent(rcdev), child, in dpaa2_rc_release_resource()
278 return (resource_list_release(rl, rcdev, child, type, rid, r)); in dpaa2_rc_release_resource()
282 dpaa2_rc_child_deleted(device_t rcdev, device_t child) in dpaa2_rc_child_deleted() argument
303 resource_list_unreserve(rl, rcdev, child, rle->type, in dpaa2_rc_child_deleted()
314 dpaa2_rc_child_detached(device_t rcdev, device_t child) in dpaa2_rc_child_detached() argument
322 if (resource_list_release_active(rl, rcdev, child, SYS_RES_IRQ) != 0) in dpaa2_rc_child_detached()
327 PCI_RELEASE_MSI(rcdev, child); in dpaa2_rc_child_detached()
329 if (resource_list_release_active(rl, rcdev, child, SYS_RES_MEMORY) != 0) in dpaa2_rc_child_detached()
334 dpaa2_rc_setup_intr(device_t rcdev, device_t child, struct resource *irq, in dpaa2_rc_setup_intr() argument
344 error = bus_generic_setup_intr(rcdev, child, irq, flags, filter, intr, in dpaa2_rc_setup_intr()
347 device_printf(rcdev, "%s: bus_generic_setup_intr() failed: " in dpaa2_rc_setup_intr()
353 if (device_get_parent(child) != rcdev) { in dpaa2_rc_setup_intr()
361 device_printf(rcdev, "%s: cannot setup interrupt with " in dpaa2_rc_setup_intr()
375 error = PCIB_MAP_MSI(device_get_parent(rcdev), child, in dpaa2_rc_setup_intr()
378 device_printf(rcdev, "%s: PCIB_MAP_MSI failed: " in dpaa2_rc_setup_intr()
380 (void)bus_generic_teardown_intr(rcdev, child, irq, in dpaa2_rc_setup_intr()
386 error = dpaa2_rc_configure_irq(rcdev, child, rid, addr, data); in dpaa2_rc_setup_intr()
388 device_printf(rcdev, "%s: failed to configure IRQ for " in dpaa2_rc_setup_intr()
401 dpaa2_rc_teardown_intr(device_t rcdev, device_t child, struct resource *irq, in dpaa2_rc_teardown_intr() argument
412 if (device_get_parent(child) != rcdev) in dpaa2_rc_teardown_intr()
413 return(bus_generic_teardown_intr(rcdev, child, irq, cookie)); in dpaa2_rc_teardown_intr()
418 device_printf(rcdev, "%s: cannot teardown interrupt " in dpaa2_rc_teardown_intr()
430 error = bus_generic_teardown_intr(rcdev, child, irq, cookie); in dpaa2_rc_teardown_intr()
438 dpaa2_rc_print_child(device_t rcdev, device_t child) in dpaa2_rc_print_child() argument
444 retval += bus_print_child_header(rcdev, child); in dpaa2_rc_print_child()
458 retval += bus_print_child_domain(rcdev, child); in dpaa2_rc_print_child()
459 retval += bus_print_child_footer(rcdev, child); in dpaa2_rc_print_child()
476 dpaa2_rc_alloc_msi(device_t rcdev, device_t child, int *count) in dpaa2_rc_alloc_msi() argument
478 struct dpaa2_devinfo *rcinfo = device_get_ivars(rcdev); in dpaa2_rc_alloc_msi()
506 error = PCIB_ALLOC_MSI(device_get_parent(rcdev), child, actual, in dpaa2_rc_alloc_msi()
573 dpaa2_rc_release_msi(device_t rcdev, device_t child) in dpaa2_rc_release_msi() argument
575 struct dpaa2_devinfo *rcinfo = device_get_ivars(rcdev); in dpaa2_rc_release_msi()
602 PCIB_RELEASE_MSI(device_get_parent(rcdev), child, dinfo->msi.msi_alloc, in dpaa2_rc_release_msi()
616 dpaa2_rc_msi_count(device_t rcdev, device_t child) in dpaa2_rc_msi_count() argument
624 dpaa2_rc_get_id(device_t rcdev, device_t child, enum pci_id_type type, in dpaa2_rc_get_id() argument
627 struct dpaa2_devinfo *rcinfo = device_get_ivars(rcdev); in dpaa2_rc_get_id()
632 return (PCIB_GET_ID(device_get_parent(rcdev), child, type, id)); in dpaa2_rc_get_id()
2744 device_t rcdev = sc->dev; in dpaa2_rc_discover() local
2746 struct dpaa2_devinfo *rcinfo = device_get_ivars(rcdev); in dpaa2_rc_discover()
2757 rc = DPAA2_CMD_MNG_GET_VERSION(rcdev, child, &cmd, &major, &minor, &rev); in dpaa2_rc_discover()
2759 device_printf(rcdev, "%s: failed to get MC firmware version: " in dpaa2_rc_discover()
2763 device_printf(rcdev, "MC firmware version: %u.%u.%u\n", major, minor, in dpaa2_rc_discover()
2767 rc = DPAA2_CMD_MNG_GET_CONTAINER_ID(rcdev, child, &cmd, &sc->cont_id); in dpaa2_rc_discover()
2769 device_printf(rcdev, "%s: failed to get container id: " in dpaa2_rc_discover()
2774 device_printf(rcdev, "Resource container ID: %u\n", sc->cont_id); in dpaa2_rc_discover()
2778 rc = DPAA2_CMD_RC_OPEN(rcdev, child, &cmd, sc->cont_id, &rc_token); in dpaa2_rc_discover()
2780 device_printf(rcdev, "%s: failed to open container: cont_id=%u, " in dpaa2_rc_discover()
2786 rc = DPAA2_CMD_RC_GET_OBJ_COUNT(rcdev, child, &cmd, &obj_count); in dpaa2_rc_discover()
2788 device_printf(rcdev, "%s: failed to count objects in container: " in dpaa2_rc_discover()
2790 (void)DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd); in dpaa2_rc_discover()
2794 device_printf(rcdev, "Objects in container: %u\n", obj_count); in dpaa2_rc_discover()
2797 rc = DPAA2_CMD_RC_GET_ATTRIBUTES(rcdev, child, &cmd, &dprc_attr); in dpaa2_rc_discover()
2799 device_printf(rcdev, "%s: failed to get attributes of the " in dpaa2_rc_discover()
2802 DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd); in dpaa2_rc_discover()
2806 device_printf(rcdev, "Isolation context ID: %u\n", in dpaa2_rc_discover()
2820 rc = DPAA2_CMD_RC_GET_OBJ(rcdev, child, &cmd, i, &obj); in dpaa2_rc_discover()
2830 bus_generic_probe(rcdev); in dpaa2_rc_discover()
2831 rc = bus_generic_attach(rcdev); in dpaa2_rc_discover()
2833 DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd); in dpaa2_rc_discover()
2839 rc = DPAA2_CMD_RC_GET_OBJ(rcdev, child, &cmd, i, &obj); in dpaa2_rc_discover()
2842 device_printf(rcdev, "%s: skip unsupported " in dpaa2_rc_discover()
2846 device_printf(rcdev, "%s: failed to get " in dpaa2_rc_discover()
2858 bus_generic_probe(rcdev); in dpaa2_rc_discover()
2859 rc = bus_generic_attach(rcdev); in dpaa2_rc_discover()
2861 DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd); in dpaa2_rc_discover()
2867 rc = DPAA2_CMD_RC_GET_OBJ(rcdev, child, &cmd, i, &obj); in dpaa2_rc_discover()
2869 device_printf(rcdev, "%s: skip unsupported DPAA2 " in dpaa2_rc_discover()
2873 device_printf(rcdev, "%s: failed to get object: " in dpaa2_rc_discover()
2880 DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd); in dpaa2_rc_discover()
2883 bus_generic_probe(rcdev); in dpaa2_rc_discover()
2884 return (bus_generic_attach(rcdev)); in dpaa2_rc_discover()
2894 device_t rcdev, dev; in dpaa2_rc_add_child() local
2903 rcdev = sc->dev; in dpaa2_rc_add_child()
2904 rcinfo = device_get_ivars(rcdev); in dpaa2_rc_add_child()
2916 dev = device_add_child(rcdev, devclass, -1); in dpaa2_rc_add_child()
2918 device_printf(rcdev, "%s: failed to add a device for DPAA2 " in dpaa2_rc_add_child()
2928 device_printf(rcdev, "%s: failed to allocate dpaa2_devinfo " in dpaa2_rc_add_child()
2935 dinfo->pdev = rcdev; in dpaa2_rc_add_child()
2967 error = dpaa2_rc_add_res(rcdev, dev, res_spec->type, &rid, in dpaa2_rc_add_child()
2970 device_printf(rcdev, "%s: dpaa2_rc_add_res() failed: " in dpaa2_rc_add_child()
2997 device_t rcdev, dev, child; in dpaa2_rc_add_managed_child() local
3006 rcdev = sc->dev; in dpaa2_rc_add_managed_child()
3008 rcinfo = device_get_ivars(rcdev); in dpaa2_rc_add_managed_child()
3042 dev = device_add_child(rcdev, devclass, -1); in dpaa2_rc_add_managed_child()
3044 device_printf(rcdev, "%s: failed to add a device for DPAA2 " in dpaa2_rc_add_managed_child()
3054 device_printf(rcdev, "%s: failed to allocate dpaa2_devinfo " in dpaa2_rc_add_managed_child()
3061 dinfo->pdev = rcdev; in dpaa2_rc_add_managed_child()
3079 error = DPAA2_CMD_RC_GET_OBJ_REGION(rcdev, child, cmd, obj->id, in dpaa2_rc_add_managed_child()
3082 device_printf(rcdev, "%s: failed to obtain memory " in dpaa2_rc_add_managed_child()
3101 error = dpaa2_rc_add_res(rcdev, dev, res_spec->type, &rid, in dpaa2_rc_add_managed_child()
3104 device_printf(rcdev, "%s: dpaa2_rc_add_res() failed: " in dpaa2_rc_add_managed_child()
3109 error = DPAA2_MC_MANAGE_DEV(rcdev, dev, flags); in dpaa2_rc_add_managed_child()
3111 device_printf(rcdev, "%s: failed to add a managed DPAA2 device: " in dpaa2_rc_add_managed_child()
3124 dpaa2_rc_configure_irq(device_t rcdev, device_t child, int rid, uint64_t addr, in dpaa2_rc_configure_irq() argument
3135 if (device_get_parent(child) == rcdev && rid >= 1) { in dpaa2_rc_configure_irq()
3136 rcinfo = device_get_ivars(rcdev); in dpaa2_rc_configure_irq()
3139 rc = DPAA2_CMD_RC_OPEN(rcdev, child, &cmd, rcinfo->id, in dpaa2_rc_configure_irq()
3142 device_printf(rcdev, "%s: failed to open DPRC: " in dpaa2_rc_configure_irq()
3147 rc = DPAA2_CMD_RC_SET_OBJ_IRQ(rcdev, child, &cmd, rid - 1, addr, in dpaa2_rc_configure_irq()
3150 device_printf(rcdev, "%s: failed to setup IRQ: " in dpaa2_rc_configure_irq()
3155 rc = DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd); in dpaa2_rc_configure_irq()
3157 device_printf(rcdev, "%s: failed to close DPRC: " in dpaa2_rc_configure_irq()
3295 dpaa2_rc_add_res(device_t rcdev, device_t child, enum dpaa2_dev_type devtype, in dpaa2_rc_add_res() argument
3305 error = DPAA2_MC_GET_FREE_DEV(rcdev, &dpaa2_dev, devtype); in dpaa2_rc_add_res()
3307 device_printf(rcdev, "%s: failed to obtain a free %s (rid=%d) " in dpaa2_rc_add_res()
3315 error = DPAA2_MC_GET_SHARED_DEV(rcdev, &dpaa2_dev, devtype); in dpaa2_rc_add_res()
3317 device_printf(rcdev, "%s: failed to obtain a shared " in dpaa2_rc_add_res()
3331 res = resource_list_reserve(&dinfo->resources, rcdev, child, devtype, in dpaa2_rc_add_res()
3335 device_printf(rcdev, "%s: failed to reserve %s (rid=%d) for: %s " in dpaa2_rc_add_res()
3343 error = DPAA2_MC_RESERVE_DEV(rcdev, dpaa2_dev, devtype); in dpaa2_rc_add_res()
3345 device_printf(rcdev, "%s: failed to reserve a shared " in dpaa2_rc_add_res()