Lines Matching refs:mmio_atsd_reg
429 struct mmio_atsd_reg { struct
460 static void mmio_launch_invalidate(struct mmio_atsd_reg *mmio_atsd_reg, in mmio_launch_invalidate() argument
463 struct npu *npu = mmio_atsd_reg->npu; in mmio_launch_invalidate()
464 int reg = mmio_atsd_reg->reg; in mmio_launch_invalidate()
471 static void mmio_invalidate_pid(struct mmio_atsd_reg mmio_atsd_reg[NV_MAX_NPUS], in mmio_invalidate_pid()
478 if (mmio_atsd_reg[i].reg < 0) in mmio_invalidate_pid()
498 mmio_launch_invalidate(&mmio_atsd_reg[i], launch, 0); in mmio_invalidate_pid()
502 static void mmio_invalidate_va(struct mmio_atsd_reg mmio_atsd_reg[NV_MAX_NPUS], in mmio_invalidate_va()
509 if (mmio_atsd_reg[i].reg < 0) in mmio_invalidate_va()
528 mmio_launch_invalidate(&mmio_atsd_reg[i], launch, va); in mmio_invalidate_va()
535 struct mmio_atsd_reg mmio_atsd_reg[NV_MAX_NPUS]) in mmio_invalidate_wait()
542 if (mmio_atsd_reg[i].reg < 0) in mmio_invalidate_wait()
546 npu = mmio_atsd_reg[i].npu; in mmio_invalidate_wait()
547 reg = mmio_atsd_reg[i].reg; in mmio_invalidate_wait()
558 struct mmio_atsd_reg mmio_atsd_reg[NV_MAX_NPUS]) in acquire_atsd_reg()
566 mmio_atsd_reg[i].reg = -1; in acquire_atsd_reg()
580 mmio_atsd_reg[i].npu = npu; in acquire_atsd_reg()
581 mmio_atsd_reg[i].reg = get_mmio_atsd_reg(npu); in acquire_atsd_reg()
582 while (mmio_atsd_reg[i].reg < 0) { in acquire_atsd_reg()
583 mmio_atsd_reg[i].reg = get_mmio_atsd_reg(npu); in acquire_atsd_reg()
596 static void release_atsd_reg(struct mmio_atsd_reg mmio_atsd_reg[NV_MAX_NPUS]) in release_atsd_reg()
607 if (mmio_atsd_reg[i].reg < 0) in release_atsd_reg()
610 put_mmio_atsd_reg(mmio_atsd_reg[i].npu, mmio_atsd_reg[i].reg); in release_atsd_reg()
621 struct mmio_atsd_reg mmio_atsd_reg[NV_MAX_NPUS]; in mmio_invalidate() local
636 acquire_atsd_reg(npu_context, mmio_atsd_reg); in mmio_invalidate()
638 mmio_invalidate_va(mmio_atsd_reg, address, pid, flush); in mmio_invalidate()
640 mmio_invalidate_pid(mmio_atsd_reg, pid, flush); in mmio_invalidate()
642 mmio_invalidate_wait(mmio_atsd_reg); in mmio_invalidate()
649 mmio_invalidate_pid(mmio_atsd_reg, 0, true); in mmio_invalidate()
650 mmio_invalidate_wait(mmio_atsd_reg); in mmio_invalidate()
651 mmio_invalidate_pid(mmio_atsd_reg, 0, true); in mmio_invalidate()
652 mmio_invalidate_wait(mmio_atsd_reg); in mmio_invalidate()
654 release_atsd_reg(mmio_atsd_reg); in mmio_invalidate()