Lines Matching refs:dcp

230 	struct devctl_hdl *dcp;  in dc_mkhndl()  local
247 if ((dcp = calloc(1, sizeof (*dcp))) == NULL) { in dc_mkhndl()
251 if ((dcp->opath = strdup(path)) == NULL) { in dc_mkhndl()
252 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
258 dcp->hdltype = type; in dc_mkhndl()
259 dcp->fd = -1; in dc_mkhndl()
275 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
290 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
295 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
310 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
334 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
359 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
370 dcp->hdltype = DEVCTL_DEVICE; in dc_mkhndl()
382 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
393 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
401 if (((dcp->nodename = malloc(MAXNAMELEN)) == NULL) || in dc_mkhndl()
402 ((dcp->unitaddr = malloc(MAXNAMELEN)) == NULL)) { in dc_mkhndl()
403 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
410 (void) snprintf(dcp->nodename, MAXNAMELEN, "%s", nodename); in dc_mkhndl()
411 (void) snprintf(dcp->unitaddr, MAXNAMELEN, "%s", unitsep+1); in dc_mkhndl()
418 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
425 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
442 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
451 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
460 dcp->fd = dup(DCP(pc)->fd); in dc_mkhndl()
462 dcp->fd = open(iocpath, oflags); in dc_mkhndl()
464 if (dcp->fd == -1) { in dc_mkhndl()
470 devctl_release((devctl_hdl_t)dcp); in dc_mkhndl()
477 return ((devctl_hdl_t)dcp); in dc_mkhndl()
484 devctl_pm_raisepower(devctl_hdl_t dcp) in devctl_pm_raisepower() argument
488 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_raisepower()
489 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_raisepower()
494 rv = dc_cmd(DEVCTL_PM_RAISE_PWR, 0, DCP(dcp), NULL, NULL); in devctl_pm_raisepower()
506 devctl_pm_changepowerhigh(devctl_hdl_t dcp) in devctl_pm_changepowerhigh() argument
510 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_changepowerhigh()
511 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_changepowerhigh()
516 rv = dc_cmd(DEVCTL_PM_CHANGE_PWR_HIGH, 0, DCP(dcp), NULL, NULL); in devctl_pm_changepowerhigh()
528 devctl_pm_changepowerlow(devctl_hdl_t dcp) in devctl_pm_changepowerlow() argument
532 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_changepowerlow()
533 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_changepowerlow()
538 rv = dc_cmd(DEVCTL_PM_CHANGE_PWR_LOW, 0, DCP(dcp), NULL, NULL); in devctl_pm_changepowerlow()
550 devctl_pm_idlecomponent(devctl_hdl_t dcp) in devctl_pm_idlecomponent() argument
554 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_idlecomponent()
555 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_idlecomponent()
560 rv = dc_cmd(DEVCTL_PM_IDLE_COMP, 0, DCP(dcp), NULL, NULL); in devctl_pm_idlecomponent()
572 devctl_pm_busycomponent(devctl_hdl_t dcp) in devctl_pm_busycomponent() argument
576 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_busycomponent()
577 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_busycomponent()
582 rv = dc_cmd(DEVCTL_PM_BUSY_COMP, 0, DCP(dcp), NULL, NULL); in devctl_pm_busycomponent()
594 devctl_pm_testbusy(devctl_hdl_t dcp, uint_t *busystate) in devctl_pm_testbusy() argument
604 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_testbusy()
605 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_testbusy()
610 rv = dc_cmd(DEVCTL_PM_BUSY_COMP_TEST, 0, DCP(dcp), NULL, in devctl_pm_testbusy()
629 devctl_pm_failsuspend(devctl_hdl_t dcp) in devctl_pm_failsuspend() argument
633 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_failsuspend()
634 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_failsuspend()
639 rv = dc_cmd(DEVCTL_PM_FAIL_SUSPEND, 0, DCP(dcp), NULL, NULL); in devctl_pm_failsuspend()
647 devctl_pm_bus_teststrict(devctl_hdl_t dcp, uint_t *strict) in devctl_pm_bus_teststrict() argument
657 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_bus_teststrict()
662 rv = dc_cmd(DEVCTL_PM_BUS_STRICT_TEST, 0, DCP(dcp), NULL, in devctl_pm_bus_teststrict()
681 devctl_pm_device_promprintf(devctl_hdl_t dcp) in devctl_pm_device_promprintf() argument
685 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_device_promprintf()
686 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_device_promprintf()
691 rv = dc_cmd(DEVCTL_PM_PROM_PRINTF, 0, DCP(dcp), NULL, NULL); in devctl_pm_device_promprintf()
704 devctl_pm_device_changeonresume(devctl_hdl_t dcp) in devctl_pm_device_changeonresume() argument
708 if (dcp == NULL || (DCP(dcp)->hdltype != DEVCTL_PM_DEV && in devctl_pm_device_changeonresume()
709 DCP(dcp)->hdltype != DEVCTL_PM_BUS)) { in devctl_pm_device_changeonresume()
715 DCP(dcp), NULL, NULL); in devctl_pm_device_changeonresume()
727 devctl_pm_device_no_lower_power(devctl_hdl_t dcp) in devctl_pm_device_no_lower_power() argument
731 if (dcp == NULL || DCP(dcp)->hdltype != DEVCTL_PM_DEV) { in devctl_pm_device_no_lower_power()
736 rv = dc_cmd(DEVCTL_PM_NO_LOWER_POWER, 0, DCP(dcp), NULL, NULL); in devctl_pm_device_no_lower_power()
749 devctl_pm_bus_no_invol(devctl_hdl_t dcp) in devctl_pm_bus_no_invol() argument
753 if (dcp == NULL || DCP(dcp)->hdltype != DEVCTL_PM_BUS) { in devctl_pm_bus_no_invol()
758 rv = dc_cmd(DEVCTL_PM_BUS_NO_INVOL, 0, DCP(dcp), NULL, NULL); in devctl_pm_bus_no_invol()
769 devctl_device_online(devctl_hdl_t dcp) in devctl_device_online() argument
773 if (dcp == NULL || DCP(dcp)->hdltype != DEVCTL_DEVICE) { in devctl_device_online()
778 rv = dc_cmd(DEVCTL_DEVICE_ONLINE, 0, DCP(dcp), NULL, NULL); in devctl_device_online()
790 devctl_device_offline(devctl_hdl_t dcp) in devctl_device_offline() argument
794 if (dcp == NULL || DCP(dcp)->hdltype != DEVCTL_DEVICE) { in devctl_device_offline()
799 rv = dc_cmd(DEVCTL_DEVICE_OFFLINE, 0, DCP(dcp), NULL, NULL); in devctl_device_offline()
811 devctl_device_remove(devctl_hdl_t dcp) in devctl_device_remove() argument
815 if (dcp == NULL || DCP(dcp)->hdltype != DEVCTL_DEVICE) { in devctl_device_remove()
820 rv = dc_cmd(DEVCTL_DEVICE_REMOVE, 0, DCP(dcp), NULL, NULL); in devctl_device_remove()
833 devctl_bus_quiesce(devctl_hdl_t dcp) in devctl_bus_quiesce() argument
837 rv = dc_cmd(DEVCTL_BUS_QUIESCE, 0, DCP(dcp), NULL, NULL); in devctl_bus_quiesce()
846 devctl_bus_unquiesce(devctl_hdl_t dcp) in devctl_bus_unquiesce() argument
850 rv = dc_cmd(DEVCTL_BUS_UNQUIESCE, 0, DCP(dcp), NULL, NULL); in devctl_bus_unquiesce()
859 devctl_bus_reset(devctl_hdl_t dcp) in devctl_bus_reset() argument
863 rv = dc_cmd(DEVCTL_BUS_RESET, 0, DCP(dcp), NULL, NULL); in devctl_bus_reset()
872 devctl_bus_resetall(devctl_hdl_t dcp) in devctl_bus_resetall() argument
876 rv = dc_cmd(DEVCTL_BUS_RESETALL, 0, DCP(dcp), NULL, NULL); in devctl_bus_resetall()
885 devctl_device_reset(devctl_hdl_t dcp) in devctl_device_reset() argument
889 rv = dc_cmd(DEVCTL_DEVICE_RESET, 0, DCP(dcp), NULL, NULL); in devctl_device_reset()
898 devctl_device_getstate(devctl_hdl_t dcp, uint_t *devstate) in devctl_device_getstate() argument
908 rv = dc_cmd(DEVCTL_DEVICE_GETSTATE, 0, DCP(dcp), NULL, in devctl_device_getstate()
924 devctl_bus_getstate(devctl_hdl_t dcp, uint_t *devstate) in devctl_bus_getstate() argument
934 rv = dc_cmd(DEVCTL_BUS_GETSTATE, 0, DCP(dcp), NULL, in devctl_bus_getstate()
950 devctl_bus_configure(devctl_hdl_t dcp) in devctl_bus_configure() argument
954 rv = dc_cmd(DEVCTL_BUS_CONFIGURE, 0, DCP(dcp), NULL, NULL); in devctl_bus_configure()
963 devctl_bus_unconfigure(devctl_hdl_t dcp) in devctl_bus_unconfigure() argument
967 rv = dc_cmd(DEVCTL_BUS_UNCONFIGURE, 0, DCP(dcp), NULL, NULL); in devctl_bus_unconfigure()
983 devctl_bus_dev_create(devctl_hdl_t dcp, devctl_ddef_t ddef_hdl, in devctl_bus_dev_create() argument
990 if (dcp == NULL || ddef_hdl == NULL) { in devctl_bus_dev_create()
996 rv = dc_cmd(DEVCTL_BUS_DEV_CREATE, flags, DCP(dcp), in devctl_bus_dev_create()
1006 (void) strcat(devpath, DCP(dcp)->opath); in devctl_bus_dev_create()
1025 *new_dcp = dc_mkhndl(DEVCTL_CLONE, devpath, 0, dcp); in devctl_bus_dev_create()
1034 devctl_ap_connect(devctl_hdl_t dcp, nvlist_t *ap_data) in devctl_ap_connect() argument
1038 rv = dc_cmd(DEVCTL_AP_CONNECT, 0, DCP(dcp), ap_data, NULL); in devctl_ap_connect()
1047 devctl_ap_disconnect(devctl_hdl_t dcp, nvlist_t *ap_data) in devctl_ap_disconnect() argument
1051 rv = dc_cmd(DEVCTL_AP_DISCONNECT, 0, DCP(dcp), ap_data, NULL); in devctl_ap_disconnect()
1060 devctl_ap_insert(devctl_hdl_t dcp, nvlist_t *ap_data) in devctl_ap_insert() argument
1064 rv = dc_cmd(DEVCTL_AP_INSERT, 0, DCP(dcp), ap_data, NULL); in devctl_ap_insert()
1073 devctl_ap_remove(devctl_hdl_t dcp, nvlist_t *ap_data) in devctl_ap_remove() argument
1077 rv = dc_cmd(DEVCTL_AP_REMOVE, 0, DCP(dcp), ap_data, NULL); in devctl_ap_remove()
1086 devctl_ap_configure(devctl_hdl_t dcp, nvlist_t *ap_data) in devctl_ap_configure() argument
1090 rv = dc_cmd(DEVCTL_AP_CONFIGURE, 0, DCP(dcp), ap_data, NULL); in devctl_ap_configure()
1099 devctl_ap_unconfigure(devctl_hdl_t dcp, nvlist_t *ap_data) in devctl_ap_unconfigure() argument
1103 rv = dc_cmd(DEVCTL_AP_UNCONFIGURE, 0, DCP(dcp), ap_data, NULL); in devctl_ap_unconfigure()
1112 devctl_ap_getstate(devctl_hdl_t dcp, nvlist_t *ap_data, in devctl_ap_getstate() argument
1118 rv = dc_cmd(DEVCTL_AP_GETSTATE, 0, DCP(dcp), ap_data, in devctl_ap_getstate()
1311 devctl_get_pathname(devctl_hdl_t dcp, char *pathbuf, size_t bufsz) in devctl_get_pathname() argument
1313 if (dcp == NULL || pathbuf == NULL || bufsz == 0) { in devctl_get_pathname()
1318 (void) snprintf(pathbuf, bufsz, "%s", DCP(dcp)->opath); in devctl_get_pathname()
1327 dc_cmd(uint_t cmd, uint_t flags, struct devctl_hdl *dcp, nvlist_t *ulp, in dc_cmd() argument
1335 (void *)dcp, (void *)ulp, flags, retinfo); in dc_cmd()
1337 if ((dcp == NULL) || (DCP(dcp)->fd == -1)) { in dc_cmd()
1366 iocdata.c_nodename = dcp->nodename; in dc_cmd()
1367 iocdata.c_unitaddr = dcp->unitaddr; in dc_cmd()
1369 rv = ioctl(dcp->fd, cmd, &iocdata); in dc_cmd()