Lines Matching refs:nvp
36 static uint64_t xive2_nvp_reporting_addr(Xive2Nvp *nvp) in xive2_nvp_reporting_addr() argument
40 cache_addr = xive_get_field32(NVP2_W6_REPORTING_LINE, nvp->w6) << 24 | in xive2_nvp_reporting_addr()
41 xive_get_field32(NVP2_W7_REPORTING_LINE, nvp->w7); in xive2_nvp_reporting_addr()
144 Xive2Nvp nvp; in xive2_presenter_nvp_backlog_op() local
147 if (xive2_router_get_nvp(xrtr, blk, idx, &nvp)) { in xive2_presenter_nvp_backlog_op()
151 if (!xive2_nvp_is_valid(&nvp)) { in xive2_presenter_nvp_backlog_op()
156 old_ipb = xive_get_field32(NVP2_W2_IPB, nvp.w2); in xive2_presenter_nvp_backlog_op()
170 nvp.w2 = xive_set_field32(NVP2_W2_IPB, nvp.w2, ipb); in xive2_presenter_nvp_backlog_op()
171 xive2_router_write_nvp(xrtr, blk, idx, &nvp, 2); in xive2_presenter_nvp_backlog_op()
292 void xive2_nvp_pic_print_info(Xive2Nvp *nvp, uint32_t nvp_idx, GString *buf) in xive2_nvp_pic_print_info() argument
294 uint8_t eq_blk = xive_get_field32(NVP2_W5_VP_END_BLOCK, nvp->w5); in xive2_nvp_pic_print_info()
295 uint32_t eq_idx = xive_get_field32(NVP2_W5_VP_END_INDEX, nvp->w5); in xive2_nvp_pic_print_info()
296 uint64_t cache_line = xive2_nvp_reporting_addr(nvp); in xive2_nvp_pic_print_info()
298 if (!xive2_nvp_is_valid(nvp)) { in xive2_nvp_pic_print_info()
304 xive_get_field32(NVP2_W2_IPB, nvp->w2), in xive2_nvp_pic_print_info()
305 xive_get_field32(NVP2_W0_PGOFIRST, nvp->w0)); in xive2_nvp_pic_print_info()
313 if (xive2_nvp_is_hw(nvp)) { in xive2_nvp_pic_print_info()
315 xive_get_field32(NVP2_W2_CPPR, nvp->w2)); in xive2_nvp_pic_print_info()
316 if (xive2_nvp_is_co(nvp)) { in xive2_nvp_pic_print_info()
318 xive_get_field32(NVP2_W1_CO_THRID, nvp->w1)); in xive2_nvp_pic_print_info()
500 Xive2Nvp nvp; in xive2_tctx_save_ctx() local
503 if (xive2_router_get_nvp(xrtr, nvp_blk, nvp_idx, &nvp)) { in xive2_tctx_save_ctx()
509 if (!xive2_nvp_is_valid(&nvp)) { in xive2_tctx_save_ctx()
515 if (!xive2_nvp_is_hw(&nvp)) { in xive2_tctx_save_ctx()
521 if (!xive2_nvp_is_co(&nvp)) { in xive2_tctx_save_ctx()
527 if (xive_get_field32(NVP2_W1_CO_THRID_VALID, nvp.w1) && in xive2_tctx_save_ctx()
528 xive_get_field32(NVP2_W1_CO_THRID, nvp.w1) != pir) { in xive2_tctx_save_ctx()
535 nvp.w2 = xive_set_field32(NVP2_W2_IPB, nvp.w2, regs[TM_IPB]); in xive2_tctx_save_ctx()
536 nvp.w2 = xive_set_field32(NVP2_W2_CPPR, nvp.w2, regs[TM_CPPR]); in xive2_tctx_save_ctx()
537 if (nvp.w0 & NVP2_W0_L) { in xive2_tctx_save_ctx()
542 nvp.w2 = xive_set_field32(NVP2_W2_LSMFB, nvp.w2, regs[TM_LSMFB]); in xive2_tctx_save_ctx()
544 if (nvp.w0 & NVP2_W0_G) { in xive2_tctx_save_ctx()
545 nvp.w2 = xive_set_field32(NVP2_W2_LGS, nvp.w2, regs[TM_LGS]); in xive2_tctx_save_ctx()
547 if (nvp.w0 & NVP2_W0_T) { in xive2_tctx_save_ctx()
548 nvp.w2 = xive_set_field32(NVP2_W2_T, nvp.w2, regs[TM_T]); in xive2_tctx_save_ctx()
550 xive2_router_write_nvp(xrtr, nvp_blk, nvp_idx, &nvp, 2); in xive2_tctx_save_ctx()
552 nvp.w1 = xive_set_field32(NVP2_W1_CO, nvp.w1, 0); in xive2_tctx_save_ctx()
554 nvp.w1 = xive_set_field32(NVP2_W1_CO_THRID, nvp.w1, 0xFFFF); in xive2_tctx_save_ctx()
555 xive2_router_write_nvp(xrtr, nvp_blk, nvp_idx, &nvp, 1); in xive2_tctx_save_ctx()
684 Xive2Nvp nvp; in xive2_tm_pull_ctx_ol() local
692 if (xive2_router_get_nvp(xrtr, nvp_blk, nvp_idx, &nvp)) { in xive2_tm_pull_ctx_ol()
698 if (!xive2_nvp_is_valid(&nvp)) { in xive2_tm_pull_ctx_ol()
706 phys_addr = xive2_nvp_reporting_addr(&nvp) + 0x80; /* odd line */ in xive2_tm_pull_ctx_ol()
746 Xive2Nvp *nvp) in xive2_tctx_restore_os_ctx() argument
752 if (!xive2_nvp_is_hw(nvp)) { in xive2_tctx_restore_os_ctx()
758 cppr = xive_get_field32(NVP2_W2_CPPR, nvp->w2); in xive2_tctx_restore_os_ctx()
759 nvp->w2 = xive_set_field32(NVP2_W2_CPPR, nvp->w2, 0); in xive2_tctx_restore_os_ctx()
760 xive2_router_write_nvp(xrtr, nvp_blk, nvp_idx, nvp, 2); in xive2_tctx_restore_os_ctx()
763 tctx->regs[TM_QW1_OS + TM_LSMFB] = xive_get_field32(NVP2_W2_LSMFB, nvp->w2); in xive2_tctx_restore_os_ctx()
764 tctx->regs[TM_QW1_OS + TM_LGS] = xive_get_field32(NVP2_W2_LGS, nvp->w2); in xive2_tctx_restore_os_ctx()
765 tctx->regs[TM_QW1_OS + TM_T] = xive_get_field32(NVP2_W2_T, nvp->w2); in xive2_tctx_restore_os_ctx()
767 nvp->w1 = xive_set_field32(NVP2_W1_CO, nvp->w1, 1); in xive2_tctx_restore_os_ctx()
768 nvp->w1 = xive_set_field32(NVP2_W1_CO_THRID_VALID, nvp->w1, 1); in xive2_tctx_restore_os_ctx()
769 nvp->w1 = xive_set_field32(NVP2_W1_CO_THRID, nvp->w1, pir); in xive2_tctx_restore_os_ctx()
776 nvp->w1 = xive_set_field32(NVP2_W1_CO_PRIV, nvp->w1, 0); in xive2_tctx_restore_os_ctx()
778 xive2_router_write_nvp(xrtr, nvp_blk, nvp_idx, nvp, 1); in xive2_tctx_restore_os_ctx()
796 Xive2Nvp nvp; in xive2_tctx_need_resend() local
802 if (xive2_router_get_nvp(xrtr, nvp_blk, nvp_idx, &nvp)) { in xive2_tctx_need_resend()
808 if (!xive2_nvp_is_valid(&nvp)) { in xive2_tctx_need_resend()
817 xive2_tctx_restore_os_ctx(xrtr, tctx, nvp_blk, nvp_idx, &nvp); in xive2_tctx_need_resend()
820 ipb = xive_get_field32(NVP2_W2_IPB, nvp.w2); in xive2_tctx_need_resend()
822 nvp.w2 = xive_set_field32(NVP2_W2_IPB, nvp.w2, 0); in xive2_tctx_need_resend()
823 xive2_router_write_nvp(xrtr, nvp_blk, nvp_idx, &nvp, 2); in xive2_tctx_need_resend()
829 first_group = xive_get_field32(NVP2_W0_PGOFIRST, nvp.w0); in xive2_tctx_need_resend()
930 Xive2Nvp nvp; in xive2_tctx_set_cppr() local
1010 if (xive2_router_get_nvp(xrtr, nvp_blk, nvp_idx, &nvp)) { in xive2_tctx_set_cppr()
1016 if (!xive2_nvp_is_valid(&nvp)) { in xive2_tctx_set_cppr()
1022 first_group = xive_get_field32(NVP2_W0_PGOFIRST, nvp.w0); in xive2_tctx_set_cppr()
1115 Xive2Nvp *nvp) in xive2_router_get_nvp() argument
1119 return xrc->get_nvp(xrtr, nvp_blk, nvp_idx, nvp); in xive2_router_get_nvp()
1123 Xive2Nvp *nvp, uint8_t word_number) in xive2_router_write_nvp() argument
1127 return xrc->write_nvp(xrtr, nvp_blk, nvp_idx, nvp, word_number); in xive2_router_write_nvp()
1428 Xive2Nvp nvp; in xive2_router_end_notify() local
1431 if (xive2_router_get_nvp(xrtr, nvx_blk, nvx_idx, &nvp)) { in xive2_router_end_notify()
1437 if (!xive2_nvp_is_valid(&nvp)) { in xive2_router_end_notify()
1448 ipb = xive_get_field32(NVP2_W2_IPB, nvp.w2) | in xive2_router_end_notify()
1450 nvp.w2 = xive_set_field32(NVP2_W2_IPB, nvp.w2, ipb); in xive2_router_end_notify()
1451 xive2_router_write_nvp(xrtr, nvx_blk, nvx_idx, &nvp, 2); in xive2_router_end_notify()