|
@@ -1124,19 +1124,8 @@ void usbhs_fifo_init(struct usbhs_priv *priv)
|
|
|
mod->irq_brdysts = 0;
|
|
|
|
|
|
cfifo->pipe = NULL;
|
|
|
- cfifo->tx_chan = NULL;
|
|
|
- cfifo->rx_chan = NULL;
|
|
|
-
|
|
|
d0fifo->pipe = NULL;
|
|
|
- d0fifo->tx_chan = NULL;
|
|
|
- d0fifo->rx_chan = NULL;
|
|
|
-
|
|
|
d1fifo->pipe = NULL;
|
|
|
- d1fifo->tx_chan = NULL;
|
|
|
- d1fifo->rx_chan = NULL;
|
|
|
-
|
|
|
- usbhsf_dma_init(priv, usbhsf_get_d0fifo(priv));
|
|
|
- usbhsf_dma_init(priv, usbhsf_get_d1fifo(priv));
|
|
|
}
|
|
|
|
|
|
void usbhs_fifo_quit(struct usbhs_priv *priv)
|
|
@@ -1147,9 +1136,6 @@ void usbhs_fifo_quit(struct usbhs_priv *priv)
|
|
|
mod->irq_ready = NULL;
|
|
|
mod->irq_bempsts = 0;
|
|
|
mod->irq_brdysts = 0;
|
|
|
-
|
|
|
- usbhsf_dma_quit(priv, usbhsf_get_d0fifo(priv));
|
|
|
- usbhsf_dma_quit(priv, usbhsf_get_d1fifo(priv));
|
|
|
}
|
|
|
|
|
|
int usbhs_fifo_probe(struct usbhs_priv *priv)
|
|
@@ -1171,6 +1157,7 @@ int usbhs_fifo_probe(struct usbhs_priv *priv)
|
|
|
fifo->ctr = D0FIFOCTR;
|
|
|
fifo->tx_slave.shdma_slave.slave_id = usbhs_get_dparam(priv, d0_tx_id);
|
|
|
fifo->rx_slave.shdma_slave.slave_id = usbhs_get_dparam(priv, d0_rx_id);
|
|
|
+ usbhsf_dma_init(priv, fifo);
|
|
|
|
|
|
/* D1FIFO */
|
|
|
fifo = usbhsf_get_d1fifo(priv);
|
|
@@ -1180,10 +1167,13 @@ int usbhs_fifo_probe(struct usbhs_priv *priv)
|
|
|
fifo->ctr = D1FIFOCTR;
|
|
|
fifo->tx_slave.shdma_slave.slave_id = usbhs_get_dparam(priv, d1_tx_id);
|
|
|
fifo->rx_slave.shdma_slave.slave_id = usbhs_get_dparam(priv, d1_rx_id);
|
|
|
+ usbhsf_dma_init(priv, fifo);
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
void usbhs_fifo_remove(struct usbhs_priv *priv)
|
|
|
{
|
|
|
+ usbhsf_dma_quit(priv, usbhsf_get_d0fifo(priv));
|
|
|
+ usbhsf_dma_quit(priv, usbhsf_get_d1fifo(priv));
|
|
|
}
|