Lines Matching refs:softsp

294 	struct axq_soft_state *softsp;  in axq_attach()  local
309 softsp = ddi_get_soft_state(axq_softp, instance); in axq_attach()
310 if (softsp->slotnum && softsp->paused && use_axq_iopause && in axq_attach()
312 *softsp->axq_domain_ctrl &= ~AXQ_DOMCTRL_PAUSE; in axq_attach()
313 softsp->paused = 0; in axq_attach()
324 softsp = ddi_get_soft_state(axq_softp, instance); in axq_attach()
327 softsp->dip = devi; in axq_attach()
330 if ((softsp->portid = (int)ddi_getprop(DDI_DEV_T_ANY, softsp->dip, in axq_attach()
337 softsp->expid = softsp->portid >> 5; in axq_attach()
343 softsp->slotnum = softsp->portid & 0x1; in axq_attach()
352 if (ddi_regs_map_setup(softsp->dip, 0, &softsp->address, 0, 0, in axq_attach()
353 &attr, &softsp->ac0) != DDI_SUCCESS) { in axq_attach()
355 ddi_get_name(softsp->dip), in axq_attach()
356 ddi_get_instance(softsp->dip)); in axq_attach()
365 softsp->axq_phyaddr = va_to_pa((caddr_t)softsp->address); in axq_attach()
367 axq_init(softsp); in axq_attach()
379 if (ddi_regs_map_setup(softsp->dip, 1, in axq_attach()
383 ddi_get_name(softsp->dip), in axq_attach()
384 ddi_get_instance(softsp->dip)); in axq_attach()
385 ddi_regs_map_free(&softsp->ac0); in axq_attach()
394 mutex_init(&softsp->axq_lock, NULL, MUTEX_DRIVER, NULL); in axq_attach()
398 ASSERT(axq_array[softsp->expid][softsp->slotnum] == NULL); in axq_attach()
399 axq_array[softsp->expid][softsp->slotnum] = softsp; in axq_attach()
402 axq_add_kstats(softsp); in axq_attach()
415 axq_init(struct axq_soft_state *softsp) in axq_init() argument
423 if (softsp->slotnum == 0) { in axq_init()
425 softsp->axq_domain_ctrl = REG_ADDR(softsp->address, in axq_init()
427 softsp->axq_cdc_addrtest = REG_ADDR(softsp->address, in axq_init()
429 softsp->axq_cdc_ctrltest = REG_ADDR(softsp->address, in axq_init()
431 softsp->axq_cdc_datawrite0 = REG_ADDR(softsp->address, in axq_init()
433 softsp->axq_cdc_datawrite1 = REG_ADDR(softsp->address, in axq_init()
435 softsp->axq_cdc_datawrite2 = REG_ADDR(softsp->address, in axq_init()
437 softsp->axq_cdc_datawrite3 = REG_ADDR(softsp->address, in axq_init()
439 softsp->axq_cdc_counter = REG_ADDR(softsp->address, in axq_init()
441 softsp->axq_cdc_readdata0 = REG_ADDR(softsp->address, in axq_init()
443 softsp->axq_cdc_readdata1 = REG_ADDR(softsp->address, in axq_init()
445 softsp->axq_cdc_readdata2 = REG_ADDR(softsp->address, in axq_init()
447 softsp->axq_cdc_readdata3 = REG_ADDR(softsp->address, in axq_init()
449 softsp->axq_pcr = REG_ADDR(softsp->address, in axq_init()
451 softsp->axq_pic0 = REG_ADDR(softsp->address, in axq_init()
453 softsp->axq_pic1 = REG_ADDR(softsp->address, in axq_init()
455 softsp->axq_pic2 = REG_ADDR(softsp->address, in axq_init()
457 softsp->axq_nasm = REG_ADDR(softsp->address, AXQ_SLOT0_NASM); in axq_init()
460 softsp->axq_domain_ctrl = REG_ADDR(softsp->address, in axq_init()
462 softsp->axq_pcr = REG_ADDR(softsp->address, in axq_init()
464 softsp->axq_pic0 = REG_ADDR(softsp->address, in axq_init()
466 softsp->axq_pic1 = REG_ADDR(softsp->address, in axq_init()
468 softsp->axq_pic2 = REG_ADDR(softsp->address, in axq_init()
470 softsp->axq_nasm = REG_ADDR(softsp->address, AXQ_SLOT1_NASM); in axq_init()
475 softsp->axq_casm_slot[i] = REG_ADDR(softsp->address, in axq_init()
480 softsp->axq_sdi_timeout_rd = REG_ADDR(softsp->address, in axq_init()
482 softsp->axq_sdi_timeout_rdclr = REG_ADDR(softsp->address, in axq_init()
489 if (softsp->slotnum == 0) { in axq_init()
490 softsp->axq_cdc_state = *softsp->axq_cdc_ctrltest & in axq_init()
500 softsp->axq_cpu2ssc_intr = REG_ADDR(softsp->address, in axq_init()
525 struct axq_soft_state *softsp; in axq_detach() local
532 softsp = ddi_get_soft_state(axq_softp, instance); in axq_detach()
546 if (softsp->slotnum && use_axq_iopause && axq_suspend_iopause) { in axq_detach()
553 cpuid = MAKE_CPUID(softsp->expid, in axq_detach()
554 softsp->slotnum, i); in axq_detach()
567 if (axq_slot1_idle(softsp) == DDI_FAILURE) { in axq_detach()
569 ddi_get_name(softsp->dip), in axq_detach()
570 ddi_get_instance(softsp->dip)); in axq_detach()
574 *softsp->axq_domain_ctrl |= AXQ_DOMCTRL_PAUSE; in axq_detach()
575 softsp->paused = 1; in axq_detach()
581 ASSERT(axq_array[softsp->expid][softsp->slotnum] in axq_detach()
583 axq_array[softsp->expid][softsp->slotnum] = NULL; in axq_detach()
586 ddi_regs_map_free(&softsp->ac0); in axq_detach()
591 if (softsp->axq_counters_ksp != (kstat_t *)NULL) { in axq_detach()
592 kstat_delete(softsp->axq_counters_ksp); in axq_detach()
624 struct axq_soft_state *softsp; in axq_getinfo() local
631 softsp = (struct axq_soft_state *) in axq_getinfo()
633 if (softsp == NULL) { in axq_getinfo()
636 *result = softsp->dip; in axq_getinfo()
658 struct axq_soft_state *softsp; in axq_cdc_flush() local
669 softsp = axq_array[expid][SLOT0_AXQ]; in axq_cdc_flush()
671 mutex_enter(&softsp->axq_lock); in axq_cdc_flush()
674 axq_ctrl_test_save0 = *softsp->axq_cdc_ctrltest; in axq_cdc_flush()
681 *softsp->axq_cdc_ctrltest = tmpval | AXQ_CDC_TMODE_WR in axq_cdc_flush()
688 *softsp->axq_cdc_addrtest = AXQ_CDC_ADR_TEST_EN; in axq_cdc_flush()
691 *softsp->axq_cdc_datawrite0 = *softsp->axq_cdc_datawrite1 = 0; in axq_cdc_flush()
692 *softsp->axq_cdc_datawrite2 = *softsp->axq_cdc_datawrite3 = 0; in axq_cdc_flush()
698 *softsp->axq_cdc_counter = AXQ_CDC_SRAM_SIZE; in axq_cdc_flush()
703 if (((*softsp->axq_cdc_counter) & in axq_cdc_flush()
717 *softsp->axq_cdc_addrtest = 0; in axq_cdc_flush()
725 *softsp->axq_cdc_ctrltest = axq_ctrl_test_save0; in axq_cdc_flush()
727 *softsp->axq_cdc_ctrltest = axq_ctrl_test_save0; in axq_cdc_flush()
730 mutex_exit(&softsp->axq_lock); in axq_cdc_flush()
799 struct axq_soft_state *softsp; in axq_cdc_enable_all() local
808 if ((softsp = axq_array[i][SLOT0_AXQ]) != NULL) { in axq_cdc_enable_all()
809 mutex_enter(&softsp->axq_lock); in axq_cdc_enable_all()
810 if (softsp->axq_cdc_state != AXQ_CDC_DIS) { in axq_cdc_enable_all()
811 *softsp->axq_cdc_ctrltest &= ~AXQ_CDC_DIS; in axq_cdc_enable_all()
813 mutex_exit(&softsp->axq_lock); in axq_cdc_enable_all()
830 struct axq_soft_state *softsp; in axq_iopause_enable_all() local
834 if ((softsp = axq_array[i][SLOT1_AXQ]) != NULL && in axq_iopause_enable_all()
841 cpuid = MAKE_CPUID(softsp->expid, in axq_iopause_enable_all()
842 softsp->slotnum, j); in axq_iopause_enable_all()
851 retval = axq_slot1_idle(softsp); in axq_iopause_enable_all()
856 *softsp->axq_domain_ctrl |= AXQ_DOMCTRL_PAUSE; in axq_iopause_enable_all()
857 softsp->paused = 1; in axq_iopause_enable_all()
877 struct axq_soft_state *softsp; in axq_iopause_disable_all() local
880 if ((softsp = axq_array[i][SLOT1_AXQ]) != NULL && in axq_iopause_disable_all()
881 softsp->paused) { in axq_iopause_disable_all()
882 *softsp->axq_domain_ctrl &= ~AXQ_DOMCTRL_PAUSE; in axq_iopause_disable_all()
883 softsp->paused = 0; in axq_iopause_disable_all()
892 axq_slot1_idle(struct axq_soft_state *softsp) in axq_slot1_idle() argument
896 ASSERT(softsp->slotnum == SLOT1_AXQ); in axq_slot1_idle()
898 if ((*(softsp->axq_domain_ctrl) & AXQ_DOMCTRL_BUSY) != 0) { in axq_slot1_idle()
915 struct axq_soft_state *softsp; in axq_nasm_read() local
929 softsp = axq_array[expid][slot]; in axq_nasm_read()
930 if (softsp == NULL) { in axq_nasm_read()
935 mutex_enter(&softsp->axq_lock); in axq_nasm_read()
937 *(softsp->axq_nasm) = awrite.val; in axq_nasm_read()
938 aread.val = *(softsp->axq_nasm); in axq_nasm_read()
940 mutex_exit(&softsp->axq_lock); in axq_nasm_read()
958 struct axq_soft_state *softsp; in axq_nasm_write_one() local
977 softsp = axq_array[expid][slot]; in axq_nasm_write_one()
978 if (softsp == NULL) { in axq_nasm_write_one()
982 mutex_enter(&softsp->axq_lock); in axq_nasm_write_one()
984 *(softsp->axq_nasm) = awrite.val; in axq_nasm_write_one()
986 mutex_exit(&softsp->axq_lock); in axq_nasm_write_one()
1062 struct axq_soft_state *softsp; in axq_casm_read() local
1070 softsp = axq_array[expid][slot]; in axq_casm_read()
1072 mutex_enter(&softsp->axq_lock); in axq_casm_read()
1074 retval = *(softsp->axq_casm_slot[casmslot]); in axq_casm_read()
1076 mutex_exit(&softsp->axq_lock); in axq_casm_read()
1091 struct axq_soft_state *softsp; in axq_casm_write() local
1099 softsp = axq_array[expid][slot]; in axq_casm_write()
1101 mutex_enter(&softsp->axq_lock); in axq_casm_write()
1110 if (*(softsp->axq_casm_slot[casmslot])) { in axq_casm_write()
1111 *(softsp->axq_casm_slot[casmslot]) = value; in axq_casm_write()
1117 mutex_exit(&softsp->axq_lock); in axq_casm_write()
1131 struct axq_soft_state *softsp; in axq_casm_write_all() local
1148 if ((softsp = axq_array[i][SLOT0_AXQ]) != NULL) { in axq_casm_write_all()
1149 if (*(softsp->axq_casm_slot[casmslot]) in axq_casm_write_all()
1154 if ((softsp = axq_array[i][SLOT1_AXQ]) != NULL) { in axq_casm_write_all()
1155 if (*(softsp->axq_casm_slot[casmslot]) in axq_casm_write_all()
1176 if ((softsp = axq_array[i][SLOT0_AXQ]) != NULL) { in axq_casm_write_all()
1177 *softsp->axq_casm_slot[casmslot] = value; in axq_casm_write_all()
1179 if ((softsp = axq_array[i][SLOT1_AXQ]) != NULL) { in axq_casm_write_all()
1180 *softsp->axq_casm_slot[casmslot] = value; in axq_casm_write_all()
1198 struct axq_soft_state *softsp; in axq_do_casm_rename_script() local
1223 if ((softsp = axq_array[i][slot]) != NULL) { in axq_do_casm_rename_script()
1224 paddr = softsp->axq_phyaddr; in axq_do_casm_rename_script()
1225 val0 = *(softsp->axq_casm_slot[casmslot0]); in axq_do_casm_rename_script()
1226 val1 = *(softsp->axq_casm_slot[casmslot1]); in axq_do_casm_rename_script()
1321 struct axq_soft_state *softsp; in axq_read_sdi_timeout_reg() local
1328 softsp = axq_array[expid][slot]; in axq_read_sdi_timeout_reg()
1330 mutex_enter(&softsp->axq_lock); in axq_read_sdi_timeout_reg()
1334 retval = *softsp->axq_sdi_timeout_rdclr; in axq_read_sdi_timeout_reg()
1336 retval = *softsp->axq_sdi_timeout_rd; in axq_read_sdi_timeout_reg()
1339 mutex_exit(&softsp->axq_lock); in axq_read_sdi_timeout_reg()
1428 axq_add_kstats(struct axq_soft_state *softsp) in axq_add_kstats() argument
1441 axq_add_picN_kstats(softsp->dip); in axq_add_kstats()
1453 ddi_get_instance(softsp->dip), "counters", in axq_add_kstats()
1457 " failed", ddi_get_instance(softsp->dip)); in axq_add_kstats()
1478 axq_counters_ksp->ks_private = (void *)softsp; in axq_add_kstats()
1483 softsp->axq_counters_ksp = axq_counters_ksp; in axq_add_kstats()
1491 struct axq_soft_state *softsp; in axq_counters_kstat_update() local
1494 softsp = (struct axq_soft_state *)ksp->ks_private; in axq_counters_kstat_update()
1502 *softsp->axq_pcr = (uint32_t)axq_counters_data[0].value.ui64; in axq_counters_kstat_update()
1512 (*softsp->axq_pcr); in axq_counters_kstat_update()
1516 (*softsp->axq_pic0); in axq_counters_kstat_update()
1520 *softsp->axq_pic1; in axq_counters_kstat_update()
1524 *softsp->axq_pic2; in axq_counters_kstat_update()