Lines Matching defs:conf

150 	struct dsp_conf	*conf;
159 if (odsp->conf)
160 printk(" (Conf %d)", odsp->conf->id);
166 list_for_each_entry(conf, &conf_ilist, list) {
167 printk(KERN_DEBUG "* Conf %d (%p)\n", conf->id, conf);
168 list_for_each_entry(member, &conf->mlist, list) {
189 struct dsp_conf *conf;
197 list_for_each_entry(conf, &conf_ilist, list)
198 if (conf->id == id)
199 return conf;
209 dsp_cmx_add_conf_member(struct dsp *dsp, struct dsp_conf *conf)
213 if (!conf || !dsp) {
214 printk(KERN_WARNING "%s: conf or dsp is 0.\n", __func__);
218 printk(KERN_WARNING "%s: dsp is already member in a conf.\n",
223 if (dsp->conf) {
224 printk(KERN_WARNING "%s: dsp is already in a conf.\n",
241 list_add_tail(&member->list, &conf->mlist);
243 dsp->conf = conf;
264 if (!dsp->conf) {
265 printk(KERN_WARNING "%s: dsp is not in a conf.\n",
270 if (list_empty(&dsp->conf->mlist)) {
271 printk(KERN_WARNING "%s: dsp has linked an empty conf.\n",
276 /* find us in conf */
277 list_for_each_entry(member, &dsp->conf->mlist, list) {
280 dsp->conf = NULL;
300 struct dsp_conf *conf;
308 conf = kzalloc(sizeof(struct dsp_conf), GFP_ATOMIC);
309 if (!conf) {
313 INIT_LIST_HEAD(&conf->mlist);
314 conf->id = id;
316 list_add_tail(&conf->list, &conf_ilist);
318 return conf;
326 dsp_cmx_del_conf(struct dsp_conf *conf)
328 if (!conf) {
329 printk(KERN_WARNING "%s: conf is null.\n",
334 if (!list_empty(&conf->mlist)) {
335 printk(KERN_WARNING "%s: conf not empty.\n",
339 list_del(&conf->list);
340 kfree(conf);
368 * if only dsp instance is given, the instance is not associated with a conf
373 dsp_cmx_hardware(struct dsp_conf *conf, struct dsp *dsp)
383 /* dsp gets updated (no conf) */
384 if (!conf) {
395 "%s removing %s from HFC conf %d "
492 /* conf gets updated (all members) */
495 __func__, conf->id);
497 if (list_empty(&conf->mlist)) {
502 member = list_entry(conf->mlist.next, struct dsp_conf_member, list);
506 list_for_each_entry(member, &conf->mlist, list) {
511 "%s dsp %s cannot form a conf, because "
515 list_for_each_entry(member, &conf->mlist, list) {
522 "conf %d because not "
553 conf->hardware = 0;
554 conf->software = 1;
561 "%s dsp %s cannot form a conf, because "
570 "%s dsp %s cannot form a conf, because "
579 "%s dsp %s cannot form a conf, because "
587 "%s dsp %s cannot form a conf, because "
604 "%s dsp %s cannot form a conf, because "
613 "conf, because encryption is enabled\n",
621 "%s dsp %s cannot form a conf, because "
630 "%s dsp %s cannot form a conf, because "
657 "%s conf %d cannot form a HW conference, "
658 "because dsp is alone\n", __func__, conf->id);
659 conf->hardware = 0;
660 conf->software = 0;
661 member = list_entry(conf->mlist.next, struct dsp_conf_member,
675 member = list_entry(conf->mlist.next, struct dsp_conf_member,
683 "%s removing %s from HFC conf %d because "
694 "%s removing %s from HFC conf %d because "
734 conf->hardware = 1;
735 conf->software = tx_data;
796 conf->hardware = 1;
797 conf->software = tx_data;
826 conf->hardware = 1;
827 conf->software = tx_data;
906 conf->hardware = 1;
907 conf->software = tx_data;
924 __func__, conf->id);
932 conf->hardware = 1;
933 conf->software = tx_data;
942 list_for_each_entry(member, &conf->mlist, list) {
989 __func__, conf->id);
997 /* assign free slot & set PCM & join conf */
1008 conf->hardware = 1;
1009 conf->software = tx_data;
1039 __func__, conf->id);
1056 struct dsp_conf *conf;
1063 /* first remove us from current conf */
1067 dsp->conf->id);
1068 /* remove us from conf */
1069 conf = dsp->conf;
1078 /* conf now empty? */
1079 if (list_empty(&conf->mlist)) {
1083 err = dsp_cmx_del_conf(conf);
1087 /* update members left on conf */
1088 dsp_cmx_hardware(conf, NULL);
1096 /* now add us to conf */
1100 conf = dsp_cmx_search_conf(conf_id);
1101 if (!conf) {
1106 conf = dsp_cmx_new_conf(conf_id);
1107 if (!conf)
1109 } else if (!list_empty(&conf->mlist)) {
1110 member = list_entry(conf->mlist.next, struct dsp_conf_member,
1126 err = dsp_cmx_add_conf_member(dsp, conf);
1132 if (list_empty(&conf->mlist)) {
1141 /* update members on conf */
1142 dsp_cmx_hardware(conf, NULL);
1300 struct dsp_conf *conf = dsp->conf;
1315 if (((dsp->conf && dsp->conf->hardware) || /* hardware conf */
1323 if (dsp->conf && dsp->conf->software && dsp->conf->hardware)
1331 "SEND members=%d dsp=%s, conf=%p, rx_R=%05x rx_W=%05x\n",
1332 members, dsp->name, conf, dsp->rx_R, dsp->rx_W);
1407 /* PROCESS DATA (one member / no conf) */
1408 if (!conf || members <= 1) {
1449 other = (list_entry(conf->mlist.next,
1452 other = (list_entry(conf->mlist.prev,
1507 * -> subtract rx-data from conf-data,
1518 /* conf-rx+tx */
1529 /* conf-rx */
1535 * -> encode conf-data, if tx-data
1545 /* conf(echo)+tx */
1556 /* conf(echo) */
1619 struct dsp_conf *conf;
1660 conf = dsp->conf;
1663 if (conf) {
1664 members = list_count_nodes(&conf->mlist);
1666 if (conf->software && members > 1)
1668 if (conf->software && members > 2)
1685 list_for_each_entry(conf, &conf_ilist, list) {
1687 members = list_count_nodes(&conf->mlist);
1689 if (conf->software && members > 1) {
1691 if (conf->software && members > 2) {
1693 /* check for hdlc conf */
1694 member = list_entry(conf->mlist.next,
1700 list_for_each_entry(member, &conf->mlist, list) {
1715 list_for_each_entry(member, &conf->mlist, list) {
1919 /* no conf */
1920 if (!dsp->conf) {
1935 if (dsp->conf->hardware)
1937 list_for_each_entry(member, &dsp->conf->mlist, list) {