Lines Matching refs:opts

434 	struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);  in in_rq_cur()  local
442 if ((FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) || in in_rq_cur()
443 (FUOUT_EN(opts) && (entity_id == USB_OUT_FU_ID))) { in in_rq_cur()
446 if (FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) in in_rq_cur()
485 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio); in in_rq_min() local
493 if ((FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) || in in_rq_min()
494 (FUOUT_EN(opts) && (entity_id == USB_OUT_FU_ID))) { in in_rq_min()
497 if (FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) in in_rq_min()
505 min_db = opts->p_volume_min; in in_rq_min()
507 min_db = opts->c_volume_min; in in_rq_min()
532 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio); in in_rq_max() local
540 if ((FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) || in in_rq_max()
541 (FUOUT_EN(opts) && (entity_id == USB_OUT_FU_ID))) { in in_rq_max()
544 if (FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) in in_rq_max()
552 max_db = opts->p_volume_max; in in_rq_max()
554 max_db = opts->c_volume_max; in in_rq_max()
579 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio); in in_rq_res() local
587 if ((FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) || in in_rq_res()
588 (FUOUT_EN(opts) && (entity_id == USB_OUT_FU_ID))) { in in_rq_res()
591 if (FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) in in_rq_res()
599 res_db = opts->p_volume_res; in in_rq_res()
601 res_db = opts->c_volume_res; in in_rq_res()
626 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio); in out_rq_cur_complete() local
639 if ((FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) || in out_rq_cur_complete()
640 (FUOUT_EN(opts) && (entity_id == USB_OUT_FU_ID))) { in out_rq_cur_complete()
643 if (FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) in out_rq_cur_complete()
680 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio); in out_rq_cur() local
688 if ((FUIN_EN(opts) && (entity_id == USB_IN_FU_ID)) || in out_rq_cur()
689 (FUOUT_EN(opts) && (entity_id == USB_OUT_FU_ID))) { in out_rq_cur()
996 uac1_ac_header_descriptor *build_ac_header_desc(struct f_uac1_opts *opts) in build_ac_header_desc() argument
1002 if (EPOUT_EN(opts)) in build_ac_header_desc()
1004 if (EPIN_EN(opts)) in build_ac_header_desc()
1027 static void setup_descriptor(struct f_uac1_opts *opts) in setup_descriptor() argument
1032 if (EPOUT_EN(opts)) in setup_descriptor()
1034 if (EPIN_EN(opts)) in setup_descriptor()
1036 if (EPOUT_EN(opts)) in setup_descriptor()
1038 if (EPIN_EN(opts)) in setup_descriptor()
1040 if (FUOUT_EN(opts)) in setup_descriptor()
1042 if (FUIN_EN(opts)) in setup_descriptor()
1045 if (FUIN_EN(opts)) { in setup_descriptor()
1051 if (FUOUT_EN(opts)) { in setup_descriptor()
1063 if (EPIN_EN(opts)) { in setup_descriptor()
1068 if (FUIN_EN(opts)) in setup_descriptor()
1072 if (EPOUT_EN(opts)) { in setup_descriptor()
1077 if (FUOUT_EN(opts)) in setup_descriptor()
1086 if (EPOUT_EN(opts)) { in setup_descriptor()
1089 if (FUOUT_EN(opts)) in setup_descriptor()
1093 if (EPIN_EN(opts)) { in setup_descriptor()
1096 if (FUIN_EN(opts)) in setup_descriptor()
1100 if (FUOUT_EN(opts) || FUIN_EN(opts)) in setup_descriptor()
1103 if (EPOUT_EN(opts)) { in setup_descriptor()
1111 if (EPIN_EN(opts)) { in setup_descriptor()
1124 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio); in f_audio_validate_opts() local
1126 if (!opts->p_chmask && !opts->c_chmask) { in f_audio_validate_opts()
1129 } else if (opts->p_chmask & ~UAC1_CHANNEL_MASK) { in f_audio_validate_opts()
1132 } else if (opts->c_chmask & ~UAC1_CHANNEL_MASK) { in f_audio_validate_opts()
1135 } else if ((opts->p_ssize < 1) || (opts->p_ssize > 4)) { in f_audio_validate_opts()
1138 } else if ((opts->c_ssize < 1) || (opts->c_ssize > 4)) { in f_audio_validate_opts()
1141 } else if (!opts->p_srates[0]) { in f_audio_validate_opts()
1144 } else if (!opts->c_srates[0]) { in f_audio_validate_opts()
1149 if (opts->p_volume_max <= opts->p_volume_min) { in f_audio_validate_opts()
1152 } else if (opts->c_volume_max <= opts->c_volume_min) { in f_audio_validate_opts()
1155 } else if (opts->p_volume_res <= 0) { in f_audio_validate_opts()
1158 } else if (opts->c_volume_res <= 0) { in f_audio_validate_opts()
1163 if ((opts->p_volume_max - opts->p_volume_min) % opts->p_volume_res) { in f_audio_validate_opts()
1166 } else if ((opts->c_volume_max - opts->c_volume_min) % opts->c_volume_res) { in f_audio_validate_opts()
1437 struct f_uac1_opts *opts = to_f_uac1_opts(item); in f_uac1_attr_release() local
1439 usb_put_function_instance(&opts->func_inst); in f_uac1_attr_release()
1459 struct f_uac1_opts *opts = to_f_uac1_opts(item); \
1462 mutex_lock(&opts->lock); \
1463 result = sprintf(page, type##_fmt, opts->name); \
1464 mutex_unlock(&opts->lock); \
1473 struct f_uac1_opts *opts = to_f_uac1_opts(item); \
1477 mutex_lock(&opts->lock); \
1478 if (opts->refcnt) { \
1487 opts->name = num; \
1491 mutex_unlock(&opts->lock); \
1501 struct f_uac1_opts *opts = to_f_uac1_opts(item); \
1505 mutex_lock(&opts->lock); \
1508 if (opts->name##s[i] == 0) \
1511 opts->name##s[i]); \
1515 mutex_unlock(&opts->lock); \
1523 struct f_uac1_opts *opts = to_f_uac1_opts(item); \
1530 mutex_lock(&opts->lock); \
1531 if (opts->refcnt) { \
1537 memset(opts->name##s, 0x00, sizeof(opts->name##s)); \
1544 opts->name##s[i++] = num; \
1550 mutex_unlock(&opts->lock); \
1560 struct f_uac1_opts *opts = to_f_uac1_opts(item); \
1563 mutex_lock(&opts->lock); \
1564 result = snprintf(page, sizeof(opts->name), "%s", opts->name); \
1565 mutex_unlock(&opts->lock); \
1573 struct f_uac1_opts *opts = to_f_uac1_opts(item); \
1576 mutex_lock(&opts->lock); \
1577 if (opts->refcnt) { \
1582 ret = snprintf(opts->name, min(sizeof(opts->name), len), \
1586 mutex_unlock(&opts->lock); \
1647 struct f_uac1_opts *opts; in f_audio_free_inst() local
1649 opts = container_of(f, struct f_uac1_opts, func_inst); in f_audio_free_inst()
1650 kfree(opts); in f_audio_free_inst()
1655 struct f_uac1_opts *opts; in f_audio_alloc_inst() local
1657 opts = kzalloc(sizeof(*opts), GFP_KERNEL); in f_audio_alloc_inst()
1658 if (!opts) in f_audio_alloc_inst()
1661 mutex_init(&opts->lock); in f_audio_alloc_inst()
1662 opts->func_inst.free_func_inst = f_audio_free_inst; in f_audio_alloc_inst()
1664 config_group_init_type_name(&opts->func_inst.group, "", in f_audio_alloc_inst()
1667 opts->c_chmask = UAC1_DEF_CCHMASK; in f_audio_alloc_inst()
1668 opts->c_srates[0] = UAC1_DEF_CSRATE; in f_audio_alloc_inst()
1669 opts->c_ssize = UAC1_DEF_CSSIZE; in f_audio_alloc_inst()
1670 opts->p_chmask = UAC1_DEF_PCHMASK; in f_audio_alloc_inst()
1671 opts->p_srates[0] = UAC1_DEF_PSRATE; in f_audio_alloc_inst()
1672 opts->p_ssize = UAC1_DEF_PSSIZE; in f_audio_alloc_inst()
1674 opts->p_mute_present = UAC1_DEF_MUTE_PRESENT; in f_audio_alloc_inst()
1675 opts->p_volume_present = UAC1_DEF_VOLUME_PRESENT; in f_audio_alloc_inst()
1676 opts->p_volume_min = UAC1_DEF_MIN_DB; in f_audio_alloc_inst()
1677 opts->p_volume_max = UAC1_DEF_MAX_DB; in f_audio_alloc_inst()
1678 opts->p_volume_res = UAC1_DEF_RES_DB; in f_audio_alloc_inst()
1680 opts->c_mute_present = UAC1_DEF_MUTE_PRESENT; in f_audio_alloc_inst()
1681 opts->c_volume_present = UAC1_DEF_VOLUME_PRESENT; in f_audio_alloc_inst()
1682 opts->c_volume_min = UAC1_DEF_MIN_DB; in f_audio_alloc_inst()
1683 opts->c_volume_max = UAC1_DEF_MAX_DB; in f_audio_alloc_inst()
1684 opts->c_volume_res = UAC1_DEF_RES_DB; in f_audio_alloc_inst()
1686 opts->req_number = UAC1_DEF_REQ_NUM; in f_audio_alloc_inst()
1688 snprintf(opts->function_name, sizeof(opts->function_name), "AC Interface"); in f_audio_alloc_inst()
1690 return &opts->func_inst; in f_audio_alloc_inst()
1696 struct f_uac1_opts *opts; in f_audio_free() local
1699 opts = container_of(f->fi, struct f_uac1_opts, func_inst); in f_audio_free()
1701 mutex_lock(&opts->lock); in f_audio_free()
1702 --opts->refcnt; in f_audio_free()
1703 mutex_unlock(&opts->lock); in f_audio_free()
1727 struct f_uac1_opts *opts; in f_audio_alloc() local
1734 opts = container_of(fi, struct f_uac1_opts, func_inst); in f_audio_alloc()
1735 mutex_lock(&opts->lock); in f_audio_alloc()
1736 ++opts->refcnt; in f_audio_alloc()
1737 mutex_unlock(&opts->lock); in f_audio_alloc()