/* Disables the inbound message unit, free all buffers, and frees the inbound message interrupt.  */
void rio_close_inb_mbox(struct rio_mport *mport, int mbox)
/* Disables the inbound message unit, free all buffers, and frees the inbound message interrupt.  */
void rio_close_inb_mbox(struct rio_mport *mport, int mbox)
{
	struct rio_priv *priv = mport->priv;
	out_be32(&priv->msg_regs->imr, 0);
	dma_free_coherent(priv->dev, priv->msg_rx_ring.size * RIO_MAX_MSG_SIZE,
			  priv->msg_rx_ring.virt, priv->msg_rx_ring.phys);
	free_irq(IRQ_RIO_RX(mport), (void *)mport);
}