Lines Matching refs:mb
105 static void dump_mb(struct cx18 *cx, struct cx18_mailbox *mb, char *name)
113 name, mb->request, mb->ack, mb->cmd, mb->error,
114 u32arr2hex(mb->args, MAX_MB_ARGUMENTS, argstr));
233 struct cx18_mailbox *mb;
239 mb = &order->mb;
240 handle = mb->args[0];
247 "stale" : "good", mb->request);
251 mdl_ack_count = mb->args[2];
280 mb->request);
328 CX18_DEBUG_INFO("%x %s\n", order->mb.args[0], str);
339 switch (order->mb.cmd) {
348 order->mb.cmd);
355 order->mb.cmd);
398 order->rpu, order->mb.cmd);
402 req = order->mb.request;
419 struct cx18_mailbox *mb;
422 mb = &order->mb;
423 handle = mb->args[0];
424 mdl_ack_offset = mb->args[1];
425 mdl_ack_count = mb->args[2];
450 str_offset = order->mb.args[1];
472 switch (order->mb.cmd) {
481 order->mb.cmd);
488 order->mb.cmd);
522 struct cx18_mailbox __iomem *mb;
530 mb = &cx->scb->cpu2epu_mb;
533 mb = &cx->scb->apu2epu_mb;
547 order_mb = &order->mb;
549 /* mb->cmd and mb->args[0] through mb->args[2] */
551 (&order_mb->cmd)[i] = cx18_readl(cx, &mb->cmd + i);
553 /* mb->request and mb->ack. N.B. we want to read mb->ack last */
555 (&order_mb->request)[i] = cx18_readl(cx, &mb->request + i);
584 struct cx18_mailbox __iomem *mb;
614 mb = &cx->scb->epu2apu_mb;
620 mb = &cx->scb->epu2cpu_mb;
638 req = cx18_readl(cx, &mb->request);
641 (ack = cx18_readl(cx, &mb->ack)) == req,
645 cx18_writel(cx, req, &mb->ack);
655 cx18_writel(cx, cmd, &mb->cmd);
657 cx18_writel(cx, data[i], &mb->args[i]);
658 cx18_writel(cx, 0, &mb->error);
659 cx18_writel(cx, req, &mb->request);
660 cx18_writel(cx, req - 1, &mb->ack); /* ensure ack & req are distinct */
675 ack = cx18_readl(cx, &mb->ack);
679 ack = cx18_readl(cx, &mb->ack);
710 data[i] = cx18_readl(cx, &mb->args[i]);
711 err = cx18_readl(cx, &mb->error);