Lines Matching refs:domp
452 ppm_domain_t *domp = NULL; in ppm_ioctl() local
484 if ((domp = ppm_lookup_domain(domain)) == NULL) { in ppm_ioctl()
490 switch (domp->model) { in ppm_ioctl()
492 if ((ret = ppm_fetget(domp, &lvl)) != 0) { in ppm_ioctl()
503 level = (domp->status == PPMD_ON) ? in ppm_ioctl()
517 level = domp->devlist->level; in ppm_ioctl()
564 domp = ppm_get_domain_by_dev(path); in ppm_ioctl()
566 if (domp != NULL) { in ppm_ioctl()
567 l = strlen(domp->name) + 1; in ppm_ioctl()
576 domp->name, STRUCT_FGETP(bydev, domlist), l, &l); in ppm_ioctl()
615 if ((domp = ppm_lookup_domain(domain)) == NULL) { in ppm_ioctl()
629 for (ppmd = domp->devlist; ppmd; in ppm_ioctl()
634 if (ppmd != domp->devlist) in ppm_ioctl()
703 domp = ppm_get_domain_by_dev(path); in ppm_ioctl()
706 if (domp == NULL) in ppm_ioctl()
709 ppmd = domp->devlist; in ppm_ioctl()
711 if (domp->model != PPMD_CPU) in ppm_ioctl()
761 ppm_domain_t *domp; in ppm_ctlops() local
823 domp = ppmd->domp; in ppm_ctlops()
825 domp = ppm_lookup_dev(rdip); in ppm_ctlops()
826 ASSERT(domp); in ppm_ctlops()
827 ppmd = ppm_get_dev(rdip, domp); in ppm_ctlops()
831 (domp->dflags & PPMD_LOCK_ALL) ? "all" : "one", in ppm_ctlops()
834 if (domp->dflags & PPMD_LOCK_ALL) in ppm_ctlops()
835 ppm_lock_all(domp, reqp, result); in ppm_ctlops()
844 domp = ppmd->domp; in ppm_ctlops()
846 domp = ppm_lookup_dev(rdip); in ppm_ctlops()
847 ASSERT(domp); in ppm_ctlops()
848 ppmd = ppm_get_dev(rdip, domp); in ppm_ctlops()
856 if (domp->dflags & PPMD_LOCK_ALL) in ppm_ctlops()
858 mutex_owner(&domp->lock); in ppm_ctlops()
867 if ((domp = ppm_lookup_dev(rdip)) == NULL) in ppm_ctlops()
879 mutex_enter(&domp->lock); in ppm_ctlops()
880 owned = ppm_add_owned(rdip, domp); in ppm_ctlops()
884 if (PPMD_IS_PCI(domp->model) && domp->status == PPMD_OFF) { in ppm_ctlops()
885 ret = ppm_switch_clock(domp, PPMD_ON); in ppm_ctlops()
887 domp->dflags |= PPMD_INITCHILD_CLKON; in ppm_ctlops()
889 mutex_exit(&domp->lock); in ppm_ctlops()
894 domp = ppm_lookup_dev(rdip); in ppm_ctlops()
895 ASSERT(domp); in ppm_ctlops()
896 ASSERT(domp->status == PPMD_ON); in ppm_ctlops()
904 ppmd = ppm_get_dev(rdip, domp); in ppm_ctlops()
905 mutex_enter(&domp->lock); in ppm_ctlops()
906 ASSERT(domp->pwr_cnt > 0); in ppm_ctlops()
907 domp->pwr_cnt--; in ppm_ctlops()
908 mutex_exit(&domp->lock); in ppm_ctlops()
916 if ((domp = ppm_lookup_dev(rdip)) == NULL) in ppm_ctlops()
920 mutex_enter(&domp->lock); in ppm_ctlops()
921 for (owned = domp->owned; owned; owned = owned->next) in ppm_ctlops()
932 if (PPMD_IS_PCI(domp->model) && in ppm_ctlops()
933 domp->status == PPMD_ON && domp->pwr_cnt == 0 && in ppm_ctlops()
934 (domp->dflags & PPMD_INITCHILD_CLKON) && in ppm_ctlops()
935 ppm_none_else_holds_power(domp)) { in ppm_ctlops()
936 ret = ppm_switch_clock(domp, PPMD_OFF); in ppm_ctlops()
938 domp->dflags &= ~PPMD_INITCHILD_CLKON; in ppm_ctlops()
940 mutex_exit(&domp->lock); in ppm_ctlops()
967 domp = ppm_lookup_dev(rdip); in ppm_ctlops()
968 ASSERT(domp); in ppm_ctlops()
969 ASSERT(domp->status == PPMD_ON); in ppm_ctlops()
976 domp = ppm_lookup_dev(rdip); in ppm_ctlops()
977 ASSERT(domp); in ppm_ctlops()
978 ppmd = ppm_get_dev(rdip, domp); in ppm_ctlops()
980 switch (ppmd->domp->model) { in ppm_ctlops()
993 ppmd->domp->model); in ppm_ctlops()
1047 for (cpup = ecpup->domp->devlist; cpup != ecpup; cpup = cpup->next) { in ppm_revert_cpu_power()
1095 ASSERT(MUTEX_HELD(&ppmd->domp->lock)); in ppm_manage_cpus()
1122 for (cpup = ppmd->domp->devlist; cpup; cpup = cpup->next) { in ppm_manage_cpus()
1157 for (cpup = ppmd->domp->devlist; cpup; cpup = cpup->next) { in ppm_manage_cpus()
1179 for (cpup = ppmd->domp->devlist; cpup; in ppm_manage_cpus()
1202 ppm_domain_t *domp; in ppm_svc_resume_ctlop() local
1214 domp = ppmd->domp; in ppm_svc_resume_ctlop()
1215 mutex_enter(&domp->lock); in ppm_svc_resume_ctlop()
1216 if ((domp->model == PPMD_FET) || PPMD_IS_PCI(domp->model) || in ppm_svc_resume_ctlop()
1217 (domp->model == PPMD_PCIE)) { in ppm_svc_resume_ctlop()
1218 for (ppmd = domp->devlist; ppmd; ppmd = ppmd->next) { in ppm_svc_resume_ctlop()
1228 ASSERT(domp->status == PPMD_ON); in ppm_svc_resume_ctlop()
1238 domp->pwr_cnt += PM_NUMCMPTS(dip) - powered; in ppm_svc_resume_ctlop()
1240 for (ppmd = domp->devlist; ppmd; ppmd = ppmd->next) { in ppm_svc_resume_ctlop()
1244 mutex_exit(&domp->lock); in ppm_svc_resume_ctlop()
1257 ppm_domain_t *domp; in ppm_bringup_domains() local
1261 for (domp = ppm_domain_p; domp; domp = domp->next) { in ppm_bringup_domains()
1262 if ((!PPMD_IS_PCI(domp->model) && (domp->model != PPMD_FET) && in ppm_bringup_domains()
1263 (domp->model != PPMD_PCIE)) || (domp->devlist == NULL)) in ppm_bringup_domains()
1266 mutex_enter(&domp->lock); in ppm_bringup_domains()
1267 if (domp->status == PPMD_ON) { in ppm_bringup_domains()
1268 mutex_exit(&domp->lock); in ppm_bringup_domains()
1271 switch (domp->model) { in ppm_bringup_domains()
1273 ret = ppm_fetset(domp, PPMD_ON); in ppm_bringup_domains()
1277 ret = ppm_switch_clock(domp, PPMD_ON); in ppm_bringup_domains()
1280 ret = ppm_pcie_pwr(domp, PPMD_ON); in ppm_bringup_domains()
1285 mutex_exit(&domp->lock); in ppm_bringup_domains()
1302 ppm_domain_t *domp; in ppm_sync_bookkeeping() local
1306 for (domp = ppm_domain_p; domp; domp = domp->next) { in ppm_sync_bookkeeping()
1307 if ((!PPMD_IS_PCI(domp->model) && (domp->model != PPMD_FET) && in ppm_sync_bookkeeping()
1308 (domp->model != PPMD_PCIE)) || (domp->devlist == NULL)) in ppm_sync_bookkeeping()
1311 mutex_enter(&domp->lock); in ppm_sync_bookkeeping()
1312 if ((domp->pwr_cnt != 0) || !ppm_none_else_holds_power(domp)) { in ppm_sync_bookkeeping()
1313 mutex_exit(&domp->lock); in ppm_sync_bookkeeping()
1322 if (domp->devlist == NULL) in ppm_sync_bookkeeping()
1325 switch (domp->model) { in ppm_sync_bookkeeping()
1327 ret = ppm_fetset(domp, PPMD_OFF); in ppm_sync_bookkeeping()
1331 ret = ppm_switch_clock(domp, PPMD_OFF); in ppm_sync_bookkeeping()
1334 ret = ppm_pcie_pwr(domp, PPMD_OFF); in ppm_sync_bookkeeping()
1339 mutex_exit(&domp->lock); in ppm_sync_bookkeeping()
1422 ASSERT(MUTEX_HELD(&ppmd->domp->lock)); in ppm_dev_init()
1427 if ((ppmd->domp->model == PPMD_FET) || in ppm_dev_init()
1428 PPMD_IS_PCI(ppmd->domp->model) || in ppm_dev_init()
1429 (ppmd->domp->model == PPMD_PCIE)) in ppm_dev_init()
1430 ppmd->domp->pwr_cnt++; in ppm_dev_init()
1457 if (ppmd->domp->dflags & PPMD_PCI66MHZ) { in ppm_dev_init()
1471 if ((ppmd->domp->model == PPMD_PCI_PROP) && in ppm_dev_init()
1472 (ppmd->domp->propname != NULL) && in ppm_dev_init()
1474 ppmd->domp->propname)) in ppm_dev_init()
1485 ASSERT(MUTEX_HELD(&ppmd->domp->lock)); in ppm_dev_fini()
1488 if ((ppmd->domp->model == PPMD_FET) || in ppm_dev_fini()
1489 PPMD_IS_PCI(ppmd->domp->model) || in ppm_dev_fini()
1490 (ppmd->domp->model == PPMD_PCIE)) in ppm_dev_fini()
1492 ppmd->domp->pwr_cnt--; in ppm_dev_fini()
1513 ppm_domain_t *domp; in ppm_manage_fet() local
1548 domp = ppmd->domp; in ppm_manage_fet()
1552 ppmd->level, (domp->status == PPMD_OFF ? "off" : "on"))) in ppm_manage_fet()
1562 PPM_LOCK_DOMAIN(domp); in ppm_manage_fet()
1572 if (domp->status == PPMD_OFF) { in ppm_manage_fet()
1577 ASSERT(old == 0 && domp->pwr_cnt == 0); in ppm_manage_fet()
1582 *result = ppm_fetset(domp, PPMD_ON); in ppm_manage_fet()
1586 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_fet()
1598 domp->pwr_cnt++; in ppm_manage_fet()
1603 domp->name, domp->pwr_cnt)) in ppm_manage_fet()
1607 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_fet()
1609 ASSERT(domp->pwr_cnt > 0); in ppm_manage_fet()
1616 PPM_LOCK_DOMAIN(domp); in ppm_manage_fet()
1626 ASSERT(domp->pwr_cnt > 0); in ppm_manage_fet()
1627 domp->pwr_cnt--; in ppm_manage_fet()
1631 domp->name, domp->pwr_cnt)) in ppm_manage_fet()
1640 if ((domp->pwr_cnt == 0) && in ppm_manage_fet()
1642 ppm_none_else_holds_power(domp)) { in ppm_manage_fet()
1647 dummy_ret = ppm_fetset(domp, PPMD_OFF); in ppm_manage_fet()
1654 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_fet()
1655 ASSERT(domp->pwr_cnt >= 0); in ppm_manage_fet()
1665 ppm_fetset(ppm_domain_t *domp, uint8_t value) in ppm_fetset() argument
1675 for (dc = domp->dc; dc; dc = dc->next) in ppm_fetset()
1680 str, domp->name)) in ppm_fetset()
1686 if (delay > 0 && domp->last_off_time > 0) { in ppm_fetset()
1694 temp -= domp->last_off_time; in ppm_fetset()
1705 "before on\n", domp->name, in ppm_fetset()
1731 str, domp->dc->method)) in ppm_fetset()
1737 domp->name, in ppm_fetset()
1738 (domp->status == PPMD_ON) ? "ON" : "OFF", in ppm_fetset()
1742 domp->status = value; in ppm_fetset()
1749 domp->last_off_time = ddi_get_lbolt(); in ppm_fetset()
1755 "after on\n", domp->name, delay)) in ppm_fetset()
1769 ppm_fetget(ppm_domain_t *domp, uint8_t *lvl) in ppm_fetget() argument
1772 ppm_dc_t *dc = domp->dc; in ppm_fetget()
1779 str, domp->name)) in ppm_fetget()
1784 "defined, found only one in domain(%s)", str, domp->name); in ppm_fetget()
1806 PPMD(D_FET, ("%s: %s domain FET %s\n", str, domp->name, in ppm_fetget()
1826 PPMD(D_FET, ("%s: %s domain FET %s\n", str, domp->name, in ppm_fetget()
1833 str, domp->dc->method)) in ppm_fetget()
1845 ppm_switch_clock(ppm_domain_t *domp, int onoff) in ppm_switch_clock() argument
1858 dc = ppm_lookup_dc(domp, cmd); in ppm_switch_clock()
1861 str, domp->name)) in ppm_switch_clock()
1873 for (pdev = domp->devlist; pdev; pdev = pdev->next) { in ppm_switch_clock()
1889 domp->status = PPMD_ON; in ppm_switch_clock()
1896 domp->status = PPMD_OFF; in ppm_switch_clock()
1902 domp->name)) in ppm_switch_clock()
1935 ppm_domain_t *domp; in ppm_manage_pci() local
1969 domp = ppmd->domp; in ppm_manage_pci()
1978 PPM_LOCK_DOMAIN(domp); in ppm_manage_pci()
1981 if (domp->status == PPMD_OFF) { in ppm_manage_pci()
1987 ASSERT(!((old == 0) ^ (domp->pwr_cnt == 0))); in ppm_manage_pci()
1992 *result = ppm_switch_clock(domp, PPMD_ON); in ppm_manage_pci()
1996 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_pci()
2002 domp->pwr_cnt++; in ppm_manage_pci()
2007 domp->name, domp->pwr_cnt)) in ppm_manage_pci()
2010 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_pci()
2012 ASSERT(domp->pwr_cnt > 0); in ppm_manage_pci()
2019 PPM_LOCK_DOMAIN(domp); in ppm_manage_pci()
2029 ASSERT(domp->pwr_cnt > 0); in ppm_manage_pci()
2030 domp->pwr_cnt--; in ppm_manage_pci()
2034 domp->name, domp->pwr_cnt)) in ppm_manage_pci()
2043 if ((domp->pwr_cnt == 0) && in ppm_manage_pci()
2045 ppm_none_else_holds_power(domp)) { in ppm_manage_pci()
2050 dummy_ret = ppm_switch_clock(domp, PPMD_OFF); in ppm_manage_pci()
2057 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_pci()
2058 ASSERT(domp->pwr_cnt >= 0); in ppm_manage_pci()
2078 ppm_domain_t *domp; in ppm_manage_pcie() local
2112 domp = ppmd->domp; in ppm_manage_pcie()
2121 PPM_LOCK_DOMAIN(domp); in ppm_manage_pcie()
2124 if (domp->status == PPMD_OFF) { in ppm_manage_pcie()
2130 ASSERT(!((old == 0) ^ (domp->pwr_cnt == 0))); in ppm_manage_pcie()
2135 *result = ppm_pcie_pwr(domp, PPMD_ON); in ppm_manage_pcie()
2139 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_pcie()
2145 domp->pwr_cnt++; in ppm_manage_pcie()
2150 domp->name, domp->pwr_cnt)) in ppm_manage_pcie()
2153 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_pcie()
2155 ASSERT(domp->pwr_cnt > 0); in ppm_manage_pcie()
2162 PPM_LOCK_DOMAIN(domp); in ppm_manage_pcie()
2172 ASSERT(domp->pwr_cnt > 0); in ppm_manage_pcie()
2173 domp->pwr_cnt--; in ppm_manage_pcie()
2177 domp->name, domp->pwr_cnt)) in ppm_manage_pcie()
2186 if ((domp->pwr_cnt == 0) && in ppm_manage_pcie()
2188 ppm_none_else_holds_power(domp)) { in ppm_manage_pcie()
2193 dummy_ret = ppm_pcie_pwr(domp, PPMD_OFF); in ppm_manage_pcie()
2200 PPM_UNLOCK_DOMAIN(domp); in ppm_manage_pcie()
2201 ASSERT(domp->pwr_cnt >= 0); in ppm_manage_pcie()
2211 ppm_gpioset(ppm_domain_t *domp, int key) in ppm_gpioset() argument
2220 for (dc = domp->dc; dc; dc = dc->next) in ppm_gpioset()
2225 str, domp->name)) in ppm_gpioset()
2232 "before change\n", domp->name, delay)) in ppm_gpioset()
2249 for (pdev = domp->devlist; pdev; pdev = pdev->next) { in ppm_gpioset()
2266 domp->name, in ppm_gpioset()
2267 (domp->status == PPMD_ON) ? "ON" : "OFF", in ppm_gpioset()
2282 domp->name, in ppm_gpioset()
2283 (domp->status == PPMD_ON) ? "ON" : "OFF", in ppm_gpioset()
2290 str, domp->dc->method)) in ppm_gpioset()
2298 "after change\n", domp->name, delay)) in ppm_gpioset()
2306 ppm_pcie_pwr(ppm_domain_t *domp, int onoff) in ppm_pcie_pwr() argument
2317 dc = ppm_lookup_dc(domp, in ppm_pcie_pwr()
2329 "before change\n", domp->name, delay)) in ppm_pcie_pwr()
2339 "after change\n", domp->name, delay)) in ppm_pcie_pwr()
2344 str, domp->name)) in ppm_pcie_pwr()
2352 if ((ret = ppm_gpioset(domp, PPMDC_CLK_OFF)) != DDI_SUCCESS) { in ppm_pcie_pwr()
2355 str, domp->name)) in ppm_pcie_pwr()
2360 if ((ret = ppm_gpioset(domp, PPMDC_PWR_OFF)) != DDI_SUCCESS) { in ppm_pcie_pwr()
2363 str, domp->name)) in ppm_pcie_pwr()
2369 if ((ret = ppm_gpioset(domp, PPMDC_RESET_ON)) != DDI_SUCCESS) { in ppm_pcie_pwr()
2372 str, domp->name)) in ppm_pcie_pwr()
2377 if ((ret = ppm_gpioset(domp, PPMDC_PWR_ON)) != DDI_SUCCESS) { in ppm_pcie_pwr()
2380 str, domp->name)) in ppm_pcie_pwr()
2385 if ((ret = ppm_gpioset(domp, PPMDC_CLK_ON)) != DDI_SUCCESS) { in ppm_pcie_pwr()
2388 str, domp->name)) in ppm_pcie_pwr()
2393 if ((ret = ppm_gpioset(domp, PPMDC_RESET_OFF)) != DDI_SUCCESS) { in ppm_pcie_pwr()
2396 str, domp->name)) in ppm_pcie_pwr()
2400 dc = ppm_lookup_dc(domp, PPMDC_POST_PWR_ON); in ppm_pcie_pwr()
2410 "before change\n", domp->name, delay)) in ppm_pcie_pwr()
2427 domp->name, delay)) in ppm_pcie_pwr()
2437 str, domp->name, (domp->status == PPMD_ON) ? "ON" : "OFF", in ppm_pcie_pwr()
2440 domp->status = onoff; in ppm_pcie_pwr()
2491 ppm_domain_t *domp; in ppm_manage_led() local
2508 for (domp = ppm_domain_p; (domp && (domp->model != PPMD_LED)); ) in ppm_manage_led()
2509 domp = domp->next; in ppm_manage_led()
2513 ppm_set_led(domp, PPMD_OFF); in ppm_manage_led()
2515 ppm_blink_led, domp, PPM_LEDOFF_INTERVAL); in ppm_manage_led()
2526 ppm_set_led(domp, PPMD_ON); in ppm_manage_led()
2533 ppm_set_led(ppm_domain_t *domp, int val) in ppm_set_led() argument
2537 ret = ppm_gpioset(domp, in ppm_set_led()
2542 (domp->status == PPMD_ON) ? "ON to OFF" : "OFF to ON")) in ppm_set_led()
2545 domp->status = val; in ppm_set_led()
2554 ppm_domain_t *domp = arg; in ppm_blink_led() local
2564 if (domp->status == PPMD_ON) { in ppm_blink_led()
2565 ppm_set_led(domp, PPMD_OFF); in ppm_blink_led()
2568 ppm_set_led(domp, PPMD_ON); in ppm_blink_led()
2572 unitp->led_tid = timeout(ppm_blink_led, domp, intvl); in ppm_blink_led()
2584 ppm_domain_t *domp; in ppm_power_up_domain() local
2587 domp = ppm_lookup_dev(dip); in ppm_power_up_domain()
2588 ASSERT(domp); in ppm_power_up_domain()
2589 mutex_enter(&domp->lock); in ppm_power_up_domain()
2590 switch (domp->model) { in ppm_power_up_domain()
2592 if (domp->status == PPMD_OFF) { in ppm_power_up_domain()
2593 if ((ret = ppm_fetset(domp, PPMD_ON)) == in ppm_power_up_domain()
2607 if (domp->status == PPMD_OFF) { in ppm_power_up_domain()
2608 if ((ret = ppm_switch_clock(domp, PPMD_ON)) == in ppm_power_up_domain()
2622 if (domp->status == PPMD_OFF) { in ppm_power_up_domain()
2623 if ((ret = ppm_pcie_pwr(domp, PPMD_ON)) == in ppm_power_up_domain()
2640 domp->pwr_cnt++; in ppm_power_up_domain()
2641 mutex_exit(&domp->lock); in ppm_power_up_domain()
2654 ppm_domain_t *domp; in ppm_power_down_domain() local
2656 domp = ppm_lookup_dev(dip); in ppm_power_down_domain()
2657 ASSERT(domp); in ppm_power_down_domain()
2658 mutex_enter(&domp->lock); in ppm_power_down_domain()
2659 ASSERT(domp->pwr_cnt > 0); in ppm_power_down_domain()
2660 domp->pwr_cnt--; in ppm_power_down_domain()
2661 switch (domp->model) { in ppm_power_down_domain()
2663 if ((domp->pwr_cnt == 0) && in ppm_power_down_domain()
2665 ppm_none_else_holds_power(domp)) { in ppm_power_down_domain()
2666 if ((ret = ppm_fetset(domp, PPMD_OFF)) == in ppm_power_down_domain()
2680 if ((domp->pwr_cnt == 0) && in ppm_power_down_domain()
2682 ppm_none_else_holds_power(domp)) { in ppm_power_down_domain()
2683 if ((ret = ppm_switch_clock(domp, PPMD_OFF)) == in ppm_power_down_domain()
2696 if ((domp->pwr_cnt == 0) && in ppm_power_down_domain()
2698 ppm_none_else_holds_power(domp)) { in ppm_power_down_domain()
2699 if ((ret = ppm_pcie_pwr(domp, PPMD_OFF)) == in ppm_power_down_domain()
2714 mutex_exit(&domp->lock); in ppm_power_down_domain()
2721 ppm_domain_t *domp = ppm_lookup_domain("domain_estar"); in ppm_manage_sx() local
2725 if (domp == NULL) { in ppm_manage_sx()
2734 dc = ppm_lookup_dc(domp, PPMDC_ENTER_S3); in ppm_manage_sx()
2736 dc = ppm_lookup_dc(domp, PPMDC_EXIT_S3); in ppm_manage_sx()