Lines Matching defs:upa64s_p

184 static int get_properties(upa64s_devstate_t *upa64s_p, dev_info_t *dip);
185 static void save_state(upa64s_devstate_t *upa64s_p);
186 static void restore_state(upa64s_devstate_t *upa64s_p);
203 upa64s_devstate_t *upa64s_p; /* per upa64s state pointer */
219 upa64s_p = get_upa64s_soft_state(instance);
220 upa64s_p->dip = dip;
225 if (get_properties(upa64s_p, dip) != DDI_SUCCESS)
245 (caddr_t *)&upa64s_p->config_base, 0, 0, &attr,
246 &upa64s_p->config_base_ah) != DDI_SUCCESS) {
252 upa64s_p->upa0_config = (uint64_t *)(upa64s_p->config_base +
254 upa64s_p->upa1_config = (uint64_t *)(upa64s_p->config_base +
256 upa64s_p->if_config = (uint64_t *)(upa64s_p->config_base +
258 upa64s_p->estar = (uint64_t *)(upa64s_p->config_base +
261 if (ddi_regs_map_setup(dip, 1, (caddr_t *)&upa64s_p->imr[0],
262 0, 0, &attr, &upa64s_p->imr_ah[0]) != DDI_SUCCESS) {
268 if (ddi_regs_map_setup(dip, 2, (caddr_t *)&upa64s_p->imr[1],
269 0, 0, &attr, &upa64s_p->imr_ah[1]) != DDI_SUCCESS) {
279 upa64s_p->power_level = UPA64S_PM_UNKNOWN;
294 upa64s_p = get_upa64s_soft_state(ddi_get_instance(dip));
296 restore_state(upa64s_p);
302 upa64s_p->power_level = UPA64S_PM_UNKNOWN;
304 upa64s_p->saved_power_level) != DDI_SUCCESS)
315 ddi_regs_map_free(&upa64s_p->imr_ah[1]);
317 ddi_regs_map_free(&upa64s_p->imr_ah[0]);
319 ddi_regs_map_free(&upa64s_p->config_base_ah);
333 upa64s_devstate_t *upa64s_p = get_upa64s_soft_state(instance);
349 ddi_regs_map_free(&upa64s_p->config_base_ah);
350 ddi_regs_map_free(&upa64s_p->imr_ah[0]);
351 ddi_regs_map_free(&upa64s_p->imr_ah[1]);
358 save_state(upa64s_p);
359 upa64s_p->saved_power_level = upa64s_p->power_level;
377 upa64s_devstate_t *upa64s_p = get_upa64s_soft_state(instance);
391 if (upa64s_p->power_level == UPA64S_PM_UNKNOWN) {
392 uint64_data = ddi_get64(upa64s_p->config_base_ah,
393 upa64s_p->if_config);
398 upa64s_p->power_level = level;
403 if (level == upa64s_p->power_level) {
414 ddi_put64(upa64s_p->config_base_ah, upa64s_p->if_config,
420 ddi_put64(upa64s_p->config_base_ah, upa64s_p->if_config,
422 uint64_data = ddi_get64(upa64s_p->config_base_ah,
423 upa64s_p->if_config);
428 ddi_put64(upa64s_p->config_base_ah, upa64s_p->estar,
434 ddi_put64(upa64s_p->config_base_ah, upa64s_p->estar,
436 uint64_data = ddi_get64(upa64s_p->config_base_ah,
437 upa64s_p->estar);
442 ddi_put64(upa64s_p->config_base_ah, upa64s_p->estar,
448 ddi_put64(upa64s_p->config_base_ah, upa64s_p->estar,
450 uint64_data = ddi_get64(upa64s_p->config_base_ah,
451 upa64s_p->estar);
457 ddi_put64(upa64s_p->config_base_ah, upa64s_p->if_config,
459 uint64_data = ddi_get64(upa64s_p->config_base_ah,
460 upa64s_p->if_config);
470 ddi_put64(upa64s_p->config_base_ah, upa64s_p->if_config,
472 uint64_data = ddi_get64(upa64s_p->config_base_ah,
473 upa64s_p->if_config);
475 upa64s_p->power_level = level;
607 upa64s_devstate_t *upa64s_p = get_upa64s_soft_state(instance);
615 upaport = upa64s_xlate_intr(rdip, upa64s_p->safari_id,
628 if (upa64s_p->ino_state[upaport] != INO_FREE) {
651 upaport, upa64s_p->imr[upaport], HI32(imr_data), LO32(imr_data));
653 ddi_put64(upa64s_p->imr_ah[upaport], upa64s_p->imr[upaport], imr_data);
655 imr_data = ddi_get64(upa64s_p->imr_ah[upaport], upa64s_p->imr[upaport]);
656 upa64s_p->ino_state[upaport] = INO_INUSE;
670 upa64s_devstate_t *upa64s_p =
680 upaport = upa64s_xlate_intr(rdip, upa64s_p->safari_id,
690 if (upa64s_p->ino_state[upaport] != INO_INUSE) {
697 ddi_put64(upa64s_p->imr_ah[upaport], upa64s_p->imr[upaport], 0);
700 tmp = ddi_get64(upa64s_p->imr_ah[upaport], upa64s_p->imr[upaport]);
703 upa64s_p->ino_state[upaport] = INO_FREE;
848 get_properties(upa64s_devstate_t *upa64s_p, dev_info_t *dip)
861 upa64s_p->safari_id = safari_id;
875 save_state(upa64s_devstate_t *upa64s_p)
877 upa64s_p->imr_data[0] = ddi_get64(upa64s_p->imr_ah[0],
878 upa64s_p->imr[0]);
879 upa64s_p->imr_data[1] = ddi_get64(upa64s_p->imr_ah[1],
880 upa64s_p->imr[1]);
892 restore_state(upa64s_devstate_t *upa64s_p)
897 ddi_put64(upa64s_p->imr_ah[0], upa64s_p->imr[0],
898 upa64s_p->imr_data[0]);
899 ddi_put64(upa64s_p->imr_ah[1], upa64s_p->imr[1],
900 upa64s_p->imr_data[1]);
903 tmp = ddi_get64(upa64s_p->imr_ah[0], upa64s_p->imr[0]);
904 tmp = ddi_get64(upa64s_p->imr_ah[1], upa64s_p->imr[1]);
1175 upa64s_devstate_t *upa64s_p = get_upa64s_soft_state(instance);
1184 if (upa64s_p->ino_state[upaport] != INO_INUSE)
1187 imr = upa64s_p->imr[upaport];
1199 ddi_put64(upa64s_p->imr_ah[upaport], (uint64_t *)imr, imr_dat);
1200 imr_dat = ddi_get64(upa64s_p->imr_ah[upaport], (uint64_t *)imr);