Lines Matching defs:mxm

3389 mcx_cmdq_mboxes_alloc(struct mcx_softc *sc, struct mcx_dmamem *mxm,
3397 error = mcx_dmamem_alloc(sc, mxm,
3402 mcx_dmamem_zero(mxm);
3404 dva = MCX_DMA_DVA(mxm);
3405 kva = MCX_DMA_KVA(mxm);
3440 mcx_cmdq_mboxes_sign(struct mcx_dmamem *mxm, unsigned int nmb)
3445 kva = MCX_DMA_KVA(mxm);
3459 mcx_cmdq_mboxes_sync(struct mcx_softc *sc, struct mcx_dmamem *mxm, int ops)
3461 bus_dmamap_sync(sc->sc_dmat, MCX_DMA_MAP(mxm),
3462 0, MCX_DMA_LEN(mxm), ops);
3466 mcx_cq_mbox(struct mcx_dmamem *mxm, unsigned int i)
3470 kva = MCX_DMA_KVA(mxm);
3483 mcx_cmdq_mboxes_copyin(struct mcx_dmamem *mxm, unsigned int nmb,
3490 mb = (struct mcx_cmdq_mailbox *)MCX_DMA_KVA(mxm);
3505 mcx_cmdq_mboxes_pas(struct mcx_dmamem *mxm, int offset, int npages,
3514 pas = mcx_cq_mbox_data(mcx_cq_mbox(mxm, mbox));
3520 pas = mcx_cq_mbox_data(mcx_cq_mbox(mxm, mbox));
3529 mcx_cmdq_mboxes_copyout(struct mcx_dmamem *mxm, int nmb, void *b, size_t len)
3535 mb = (struct mcx_cmdq_mailbox *)MCX_DMA_KVA(mxm);
3549 mcx_cq_mboxes_free(struct mcx_softc *sc, struct mcx_dmamem *mxm)
3551 mcx_dmamem_free(sc, mxm);
3600 struct mcx_dmamem mxm;
3620 if (mcx_cmdq_mboxes_alloc(sc, &mxm, nmb,
3626 mcx_cmdq_mboxes_copyin(&mxm, nmb, data, len);
3627 mcx_cmdq_mboxes_sign(&mxm, nmb);
3628 mcx_cmdq_mboxes_sync(sc, &mxm, BUS_DMASYNC_PRERW);
3631 mcx_cmdq_mboxes_sync(sc, &mxm, BUS_DMASYNC_POSTRW);
3655 mcx_cmdq_mboxes_copyout(&mxm, nmb, data, len);
3657 mcx_dmamem_free(sc, &mxm);
3693 struct mcx_dmamem mxm;
3710 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
3715 mcx_cmdq_mboxes_sign(&mxm, 1);
3750 mb = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
3765 mcx_cq_mboxes_free(sc, &mxm);
3851 struct mcx_dmamem mxm;
3876 if (mcx_cmdq_mboxes_alloc(sc, &mxm, nmb,
3886 pas = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, i));
3897 mcx_cmdq_mboxes_sign(&mxm, nmb);
3919 mcx_dmamem_free(sc, &mxm);
3959 struct mcx_dmamem mxm;
3978 if (mcx_cmdq_mboxes_alloc(sc, &mxm, MCX_HCA_CAP_NMAILBOXES,
3983 mcx_cmdq_mboxes_sign(&mxm, MCX_HCA_CAP_NMAILBOXES);
3984 mcx_cmdq_mboxes_sync(sc, &mxm, BUS_DMASYNC_PRERW);
3988 mcx_cmdq_mboxes_sync(sc, &mxm, BUS_DMASYNC_POSTRW);
4007 mb = mcx_cq_mbox(&mxm, 0);
4036 mcx_dmamem_free(sc, &mxm);
4044 struct mcx_dmamem mxm;
4063 if (mcx_cmdq_mboxes_alloc(sc, &mxm, MCX_HCA_CAP_NMAILBOXES,
4068 mcx_cmdq_mboxes_sign(&mxm, MCX_HCA_CAP_NMAILBOXES);
4069 mcx_cmdq_mboxes_sync(sc, &mxm, BUS_DMASYNC_PRERW);
4073 mcx_cmdq_mboxes_sync(sc, &mxm, BUS_DMASYNC_POSTRW);
4092 mb = mcx_cq_mbox(&mxm, 0);
4098 mcx_dmamem_free(sc, &mxm);
4144 struct mcx_dmamem mxm;
4161 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
4166 strlcpy(mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)),
4169 mcx_cmdq_mboxes_sign(&mxm, 1);
4190 mcx_dmamem_free(sc, &mxm);
4199 struct mcx_dmamem mxm;
4253 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1, &cqe->cq_input_ptr, token) != 0) {
4259 (((char *)mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0))) + 240);
4268 mcx_cmdq_mboxes_sign(&mxm, 1);
4290 mcx_dmamem_free(sc, &mxm);
4337 struct mcx_dmamem mxm;
4372 if (mcx_cmdq_mboxes_alloc(sc, &mxm,
4378 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
4388 mcx_cmdq_mboxes_pas(&mxm, sizeof(*mbin), npages, &eq->eq_mem);
4389 mcx_cmdq_mboxes_sign(&mxm, howmany(insize, MCX_CMDQ_MAILBOX_DATASIZE));
4411 mcx_dmamem_free(sc, &mxm);
4420 mcx_dmamem_free(sc, &mxm);
4504 struct mcx_dmamem mxm;
4521 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
4527 mcx_cmdq_mboxes_sign(&mxm, 1);
4549 mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
4555 mcx_dmamem_free(sc, &mxm);
4633 struct mcx_dmamem mxm;
4667 if (mcx_cmdq_mboxes_alloc(sc, &mxm,
4674 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
4688 mcx_cmdq_mboxes_pas(&mxm, sizeof(*mbin), npages, &cq->cq_mem);
4712 mcx_dmamem_free(sc, &mxm);
4725 mcx_dmamem_free(sc, &mxm);
4785 struct mcx_dmamem mxm;
4817 if (mcx_cmdq_mboxes_alloc(sc, &mxm,
4825 (((char *)mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0))) + 0x10);
4843 mcx_cmdq_mboxes_pas(&mxm, sizeof(*mbin) + 0x10, npages, &rx->rx_rq_mem);
4865 mcx_dmamem_free(sc, &mxm);
4875 mcx_dmamem_free(sc, &mxm);
4885 struct mcx_dmamem mxm;
4902 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
4908 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
4912 mcx_cmdq_mboxes_sign(&mxm, 1);
4933 mcx_dmamem_free(sc, &mxm);
4988 struct mcx_dmamem mxm;
5004 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5010 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5036 mcx_dmamem_free(sc, &mxm);
5045 struct mcx_dmamem mxm;
5061 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5067 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5098 mcx_dmamem_free(sc, &mxm);
5146 struct mcx_dmamem mxm;
5178 if (mcx_cmdq_mboxes_alloc(sc, &mxm,
5186 (((char *)mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0))) + 0x10);
5204 mcx_cmdq_mboxes_pas(&mxm, sizeof(*mbin) + 0x10,
5228 mcx_dmamem_free(sc, &mxm);
5238 mcx_dmamem_free(sc, &mxm);
5295 struct mcx_dmamem mxm;
5312 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5318 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5322 mcx_cmdq_mboxes_sign(&mxm, 1);
5343 mcx_dmamem_free(sc, &mxm);
5351 struct mcx_dmamem mxm;
5367 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5373 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5376 mcx_cmdq_mboxes_sign(&mxm, 1);
5398 mcx_dmamem_free(sc, &mxm);
5445 struct mcx_dmamem mxm;
5464 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5470 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5481 mcx_cmdq_mboxes_sign(&mxm, 1);
5504 mcx_dmamem_free(sc, &mxm);
5594 struct mcx_dmamem mxm;
5610 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5616 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5621 mcx_cmdq_mboxes_sign(&mxm, 1);
5643 mcx_dmamem_free(sc, &mxm);
5651 struct mcx_dmamem mxm;
5667 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5673 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5677 mcx_cmdq_mboxes_sign(&mxm, 1);
5699 mcx_dmamem_free(sc, &mxm);
5707 struct mcx_dmamem mxm;
5722 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
5728 mb = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5732 mcx_cmdq_mboxes_sign(&mxm, 1);
5754 mcx_dmamem_free(sc, &mxm);
5764 struct mcx_dmamem mxm;
5781 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2, &cqe->cq_input_ptr, token)
5787 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5796 mcx_cmdq_mboxes_sign(&mxm, 2);
5823 mcx_dmamem_free(sc, &mxm);
5831 struct mcx_dmamem mxm;
5847 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
5853 mb = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5859 mcx_cmdq_mboxes_sign(&mxm, 2);
5884 mcx_dmamem_free(sc, &mxm);
5893 struct mcx_dmamem mxm;
5911 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2, &cqe->cq_input_ptr, token)
5918 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
5928 (((char *)mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 1))) + 0x130);
5939 mcx_cmdq_mboxes_sign(&mxm, 2);
5961 mcx_dmamem_free(sc, &mxm);
5970 struct mcx_dmamem mxm;
5988 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2, &cqe->cq_input_ptr, token)
5995 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
6005 (((char *)mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 1))) + 0x130);
6013 mcx_cmdq_mboxes_sign(&mxm, 2);
6035 mcx_dmamem_free(sc, &mxm);
6043 struct mcx_dmamem mxm;
6060 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6066 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
6073 mcx_cmdq_mboxes_sign(&mxm, 2);
6096 mcx_dmamem_free(sc, &mxm);
6104 struct mcx_dmamem mxm;
6125 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6132 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
6136 mcx_cmdq_mboxes_sign(&mxm, 1);
6162 (mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6170 mcx_cq_mboxes_free(sc, &mxm);
6176 struct mcx_dmamem mxm;
6197 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6205 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
6210 mcx_cmdq_mboxes_sign(&mxm, 1);
6237 (mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6246 mcx_cq_mboxes_free(sc, &mxm);
6253 struct mcx_dmamem mxm;
6274 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6281 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
6286 mcx_cmdq_mboxes_sign(&mxm, 1);
6312 (mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6319 dump = (uint8_t *)(mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 1)));
6327 mcx_cq_mboxes_free(sc, &mxm);
6334 struct mcx_dmamem mxm;
6351 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
6359 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
6362 mcx_cmdq_mboxes_sign(&mxm, 1);
6385 (mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6398 mcx_dmamem_free(sc, &mxm);
6406 struct mcx_dmamem mxm;
6423 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 1,
6429 mbin = mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0));
6433 mcx_cmdq_mboxes_sign(&mxm, 1);
6455 (mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6460 mcx_dmamem_free(sc, &mxm);
6472 struct mcx_dmamem mxm;
6493 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6499 mcx_cmdq_mboxes_sign(&mxm, 1);
6524 (mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6528 mcx_cq_mboxes_free(sc, &mxm);
6535 struct mcx_dmamem mxm;
6556 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6562 mcx_cmdq_mboxes_sign(&mxm, 1);
6587 (mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6591 mcx_cq_mboxes_free(sc, &mxm);
6598 struct mcx_dmamem mxm;
6619 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6625 mcx_cmdq_mboxes_sign(&mxm, 1);
6649 ctx = (struct mcx_cq_ctx *)(mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6652 mcx_cq_mboxes_free(sc, &mxm);
6659 struct mcx_dmamem mxm;
6680 if (mcx_cmdq_mboxes_alloc(sc, &mxm, 2,
6686 mcx_cmdq_mboxes_sign(&mxm, 1);
6710 ctx = (struct mcx_eq_ctx *)(mcx_cq_mbox_data(mcx_cq_mbox(&mxm, 0)));
6713 mcx_cq_mboxes_free(sc, &mxm);
8269 mcx_dmamem_alloc(struct mcx_softc *sc, struct mcx_dmamem *mxm,
8272 mxm->mxm_size = size;
8274 if (bus_dmamap_create(sc->sc_dmat, mxm->mxm_size, 1,
8275 mxm->mxm_size, 0,
8277 &mxm->mxm_map) != 0)
8279 if (bus_dmamem_alloc(sc->sc_dmat, mxm->mxm_size,
8280 align, 0, &mxm->mxm_seg, 1, &mxm->mxm_nsegs,
8283 if (bus_dmamem_map(sc->sc_dmat, &mxm->mxm_seg, mxm->mxm_nsegs,
8284 mxm->mxm_size, &mxm->mxm_kva, BUS_DMA_WAITOK) != 0)
8286 if (bus_dmamap_load(sc->sc_dmat, mxm->mxm_map, mxm->mxm_kva,
8287 mxm->mxm_size, NULL, BUS_DMA_WAITOK) != 0)
8292 bus_dmamem_unmap(sc->sc_dmat, mxm->mxm_kva, mxm->mxm_size);
8294 bus_dmamem_free(sc->sc_dmat, &mxm->mxm_seg, 1);
8296 bus_dmamap_destroy(sc->sc_dmat, mxm->mxm_map);
8301 mcx_dmamem_zero(struct mcx_dmamem *mxm)
8303 memset(MCX_DMA_KVA(mxm), 0, MCX_DMA_LEN(mxm));
8307 mcx_dmamem_free(struct mcx_softc *sc, struct mcx_dmamem *mxm)
8309 bus_dmamap_unload(sc->sc_dmat, mxm->mxm_map);
8310 bus_dmamem_unmap(sc->sc_dmat, mxm->mxm_kva, mxm->mxm_size);
8311 bus_dmamem_free(sc->sc_dmat, &mxm->mxm_seg, 1);
8312 bus_dmamap_destroy(sc->sc_dmat, mxm->mxm_map);