aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn/mISDN
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2012-04-23 22:51:50 -0400
committerDavid S. Miller <davem@davemloft.net>2012-04-26 03:10:45 -0400
commit52a637c2a5d96f12eadb17e03da9b3405cd58acf (patch)
tree4d1dac9b55208868cd2de09e6d6e2b9f0689499d /drivers/isdn/mISDN
parent74fa9e5dff617e2e1e7688969f3492a6080bb6e1 (diff)
mISDN: Fixed hardware bridging/conference check routine of mISDN_dsp.ko.
In some cases the hardware bridging/conference (2-n parties) was selected, but still pure software bridging/conference was used. Signed-off-by: Andreas Eversberg <jolly@eversberg.eu> Signed-off-by: Karsten Keil <keil@b1-systems.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/isdn/mISDN')
-rw-r--r--drivers/isdn/mISDN/dsp_cmx.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/isdn/mISDN/dsp_cmx.c b/drivers/isdn/mISDN/dsp_cmx.c
index b7589c2eecf5..0c104b976835 100644
--- a/drivers/isdn/mISDN/dsp_cmx.c
+++ b/drivers/isdn/mISDN/dsp_cmx.c
@@ -742,8 +742,8 @@ dsp_cmx_hardware(struct dsp_conf *conf, struct dsp *dsp)
742 member->dsp->pcm_slot_tx, 742 member->dsp->pcm_slot_tx,
743 member->dsp->pcm_bank_tx, 743 member->dsp->pcm_bank_tx,
744 member->dsp->pcm_bank_rx); 744 member->dsp->pcm_bank_rx);
745 conf->hardware = 0; 745 conf->hardware = 1;
746 conf->software = 1; 746 conf->software = tx_data;
747 return; 747 return;
748 } 748 }
749 /* find a new slot */ 749 /* find a new slot */
@@ -834,8 +834,8 @@ dsp_cmx_hardware(struct dsp_conf *conf, struct dsp *dsp)
834 nextm->dsp->name, 834 nextm->dsp->name,
835 member->dsp->pcm_slot_tx, 835 member->dsp->pcm_slot_tx,
836 member->dsp->pcm_slot_rx); 836 member->dsp->pcm_slot_rx);
837 conf->hardware = 0; 837 conf->hardware = 1;
838 conf->software = 1; 838 conf->software = tx_data;
839 return; 839 return;
840 } 840 }
841 /* find two new slot */ 841 /* find two new slot */
@@ -939,8 +939,11 @@ dsp_cmx_hardware(struct dsp_conf *conf, struct dsp *dsp)
939 /* for more than two members.. */ 939 /* for more than two members.. */
940 940
941 /* if all members already have the same conference */ 941 /* if all members already have the same conference */
942 if (all_conf) 942 if (all_conf) {
943 conf->hardware = 1;
944 conf->software = tx_data;
943 return; 945 return;
946 }
944 947
945 /* 948 /*
946 * if there is an existing conference, but not all members have joined 949 * if there is an existing conference, but not all members have joined
@@ -1013,6 +1016,8 @@ dsp_cmx_hardware(struct dsp_conf *conf, struct dsp *dsp)
1013 dsp_cmx_hw_message(member->dsp, 1016 dsp_cmx_hw_message(member->dsp,
1014 MISDN_CTRL_HFC_CONF_JOIN, current_conf, 0, 0, 0); 1017 MISDN_CTRL_HFC_CONF_JOIN, current_conf, 0, 0, 0);
1015 } 1018 }
1019 conf->hardware = 1;
1020 conf->software = tx_data;
1016 return; 1021 return;
1017 } 1022 }
1018 1023