summaryrefslogtreecommitdiff
path: root/xhfc
diff options
context:
space:
mode:
authorNoe Rubinstein <nrubinstein@proformatique.com>2010-09-16 14:31:04 +0200
committerNoe Rubinstein <nrubinstein@proformatique.com>2010-09-16 14:31:04 +0200
commit8a26830dda76e370f0189248d25a76537782a1cc (patch)
tree5fbf1874ae5b15272e82bf9dbb1be7e453e00ca4 /xhfc
parenta6366b4c855c5563cd800f8c31e06d44a3947335 (diff)
fix B chan to PCM data flow
Diffstat (limited to 'xhfc')
-rw-r--r--xhfc/xhfc.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/xhfc/xhfc.c b/xhfc/xhfc.c
index 30fe18a..7e53888 100644
--- a/xhfc/xhfc.c
+++ b/xhfc/xhfc.c
@@ -250,7 +250,7 @@ void xhfc_config_b_chan_on_fifo(struct xhfc *x, int fifo, int slot, int directio
u8 r_fifo, a_con_hdlc, r_slot, a_sl_cfg;
r_fifo = a_con_hdlc = r_slot = a_sl_cfg = 0x00;
- SET_V_FIFO_DIR(r_fifo, TRANSMIT);
+ SET_V_FIFO_DIR(r_fifo, direction);
SET_V_FIFO_NUM(r_fifo, fifo);
SET_V_REV(r_fifo, 0);
@@ -259,16 +259,16 @@ void xhfc_config_b_chan_on_fifo(struct xhfc *x, int fifo, int slot, int directio
SET_V_FIFO_IRQ(a_con_hdlc, 7); /* enable data transmission */
SET_V_DATA_FLOW(a_con_hdlc, 6); /* '110': ST -> PCM */
- SET_V_SL_DIR(r_slot, TRANSMIT);
+ SET_V_SL_DIR(r_slot, direction);
SET_V_SL_NUM(r_slot, slot);
- SET_V_CH_SDIR(a_sl_cfg, TRANSMIT);
+ SET_V_CH_SDIR(a_sl_cfg, direction);
SET_V_CH_SNUM(a_sl_cfg, fifo);
- SET_V_ROUT(a_sl_cfg, 2); /* '10': data to pin STIO1 */
+ SET_V_ROUT(a_sl_cfg, 3); /* '11': receive data from STIO1, output to STIO2 */
- write_xhfc(x, R_FIFO, r_fifo);
- xhfc_waitbusy(x);
- write_xhfc(x, A_CON_HDLC, a_con_hdlc);
+ write_xhfc(x, R_FIFO, r_fifo);
+ xhfc_waitbusy(x);
+ write_xhfc(x, A_CON_HDLC, a_con_hdlc);
write_xhfc(x, R_SLOT, r_slot);
write_xhfc(x, A_SL_CFG, a_sl_cfg);
}