Lines Matching refs:conf
161 struct dsp_conf *conf; in dsp_cmx_debug() local
170 if (odsp->conf) in dsp_cmx_debug()
171 printk(" (Conf %d)", odsp->conf->id); in dsp_cmx_debug()
177 list_for_each_entry(conf, &conf_ilist, list) { in dsp_cmx_debug()
178 printk(KERN_DEBUG "* Conf %d (%p)\n", conf->id, conf); in dsp_cmx_debug()
179 list_for_each_entry(member, &conf->mlist, list) { in dsp_cmx_debug()
200 struct dsp_conf *conf; in dsp_cmx_search_conf() local
208 list_for_each_entry(conf, &conf_ilist, list) in dsp_cmx_search_conf()
209 if (conf->id == id) in dsp_cmx_search_conf()
210 return conf; in dsp_cmx_search_conf()
220 dsp_cmx_add_conf_member(struct dsp *dsp, struct dsp_conf *conf) in dsp_cmx_add_conf_member() argument
224 if (!conf || !dsp) { in dsp_cmx_add_conf_member()
234 if (dsp->conf) { in dsp_cmx_add_conf_member()
252 list_add_tail(&member->list, &conf->mlist); in dsp_cmx_add_conf_member()
254 dsp->conf = conf; in dsp_cmx_add_conf_member()
275 if (!dsp->conf) { in dsp_cmx_del_conf_member()
281 if (list_empty(&dsp->conf->mlist)) { in dsp_cmx_del_conf_member()
288 list_for_each_entry(member, &dsp->conf->mlist, list) { in dsp_cmx_del_conf_member()
291 dsp->conf = NULL; in dsp_cmx_del_conf_member()
311 struct dsp_conf *conf; in dsp_cmx_new_conf() local
319 conf = kzalloc(sizeof(struct dsp_conf), GFP_ATOMIC); in dsp_cmx_new_conf()
320 if (!conf) { in dsp_cmx_new_conf()
324 INIT_LIST_HEAD(&conf->mlist); in dsp_cmx_new_conf()
325 conf->id = id; in dsp_cmx_new_conf()
327 list_add_tail(&conf->list, &conf_ilist); in dsp_cmx_new_conf()
329 return conf; in dsp_cmx_new_conf()
337 dsp_cmx_del_conf(struct dsp_conf *conf) in dsp_cmx_del_conf() argument
339 if (!conf) { in dsp_cmx_del_conf()
345 if (!list_empty(&conf->mlist)) { in dsp_cmx_del_conf()
350 list_del(&conf->list); in dsp_cmx_del_conf()
351 kfree(conf); in dsp_cmx_del_conf()
384 dsp_cmx_hardware(struct dsp_conf *conf, struct dsp *dsp) in dsp_cmx_hardware() argument
395 if (!conf) { in dsp_cmx_hardware()
506 __func__, conf->id); in dsp_cmx_hardware()
508 if (list_empty(&conf->mlist)) { in dsp_cmx_hardware()
513 member = list_entry(conf->mlist.next, struct dsp_conf_member, list); in dsp_cmx_hardware()
517 list_for_each_entry(member, &conf->mlist, list) { in dsp_cmx_hardware()
526 list_for_each_entry(member, &conf->mlist, list) { in dsp_cmx_hardware()
564 conf->hardware = 0; in dsp_cmx_hardware()
565 conf->software = 1; in dsp_cmx_hardware()
669 "because dsp is alone\n", __func__, conf->id); in dsp_cmx_hardware()
670 conf->hardware = 0; in dsp_cmx_hardware()
671 conf->software = 0; in dsp_cmx_hardware()
672 member = list_entry(conf->mlist.next, struct dsp_conf_member, in dsp_cmx_hardware()
686 member = list_entry(conf->mlist.next, struct dsp_conf_member, in dsp_cmx_hardware()
745 conf->hardware = 1; in dsp_cmx_hardware()
746 conf->software = tx_data; in dsp_cmx_hardware()
807 conf->hardware = 1; in dsp_cmx_hardware()
808 conf->software = tx_data; in dsp_cmx_hardware()
837 conf->hardware = 1; in dsp_cmx_hardware()
838 conf->software = tx_data; in dsp_cmx_hardware()
917 conf->hardware = 1; in dsp_cmx_hardware()
918 conf->software = tx_data; in dsp_cmx_hardware()
935 __func__, conf->id); in dsp_cmx_hardware()
943 conf->hardware = 1; in dsp_cmx_hardware()
944 conf->software = tx_data; in dsp_cmx_hardware()
953 list_for_each_entry(member, &conf->mlist, list) { in dsp_cmx_hardware()
1000 __func__, conf->id); in dsp_cmx_hardware()
1019 conf->hardware = 1; in dsp_cmx_hardware()
1020 conf->software = tx_data; in dsp_cmx_hardware()
1050 __func__, conf->id); in dsp_cmx_hardware()
1067 struct dsp_conf *conf; in dsp_cmx_conf() local
1078 dsp->conf->id); in dsp_cmx_conf()
1080 conf = dsp->conf; in dsp_cmx_conf()
1090 if (list_empty(&conf->mlist)) { in dsp_cmx_conf()
1094 err = dsp_cmx_del_conf(conf); in dsp_cmx_conf()
1099 dsp_cmx_hardware(conf, NULL); in dsp_cmx_conf()
1111 conf = dsp_cmx_search_conf(conf_id); in dsp_cmx_conf()
1112 if (!conf) { in dsp_cmx_conf()
1117 conf = dsp_cmx_new_conf(conf_id); in dsp_cmx_conf()
1118 if (!conf) in dsp_cmx_conf()
1120 } else if (!list_empty(&conf->mlist)) { in dsp_cmx_conf()
1121 member = list_entry(conf->mlist.next, struct dsp_conf_member, in dsp_cmx_conf()
1137 err = dsp_cmx_add_conf_member(dsp, conf); in dsp_cmx_conf()
1143 if (list_empty(&conf->mlist)) { in dsp_cmx_conf()
1153 dsp_cmx_hardware(conf, NULL); in dsp_cmx_conf()
1311 struct dsp_conf *conf = dsp->conf; local
1326 if (((dsp->conf && dsp->conf->hardware) || /* hardware conf */
1334 if (dsp->conf && dsp->conf->software && dsp->conf->hardware)
1343 members, dsp->name, conf, dsp->rx_R, dsp->rx_W);
1419 if (!conf || members <= 1) {
1460 other = (list_entry(conf->mlist.next,
1463 other = (list_entry(conf->mlist.prev,
1630 struct dsp_conf *conf; local
1671 conf = dsp->conf;
1674 if (conf) {
1675 members = count_list_member(&conf->mlist);
1677 if (conf->software && members > 1)
1679 if (conf->software && members > 2)
1696 list_for_each_entry(conf, &conf_ilist, list) {
1698 members = count_list_member(&conf->mlist);
1700 if (conf->software && members > 1) {
1702 if (conf->software && members > 2) {
1705 member = list_entry(conf->mlist.next,
1711 list_for_each_entry(member, &conf->mlist, list) {
1726 list_for_each_entry(member, &conf->mlist, list) {
1932 if (!dsp->conf) {
1947 if (dsp->conf->hardware)
1949 list_for_each_entry(member, &dsp->conf->mlist, list) {