Lines Matching refs:fp
131 struct audioformat *fp; in create_fixed_stream_quirk() local
137 fp = kmemdup(quirk->data, sizeof(*fp), GFP_KERNEL); in create_fixed_stream_quirk()
138 if (!fp) in create_fixed_stream_quirk()
141 INIT_LIST_HEAD(&fp->list); in create_fixed_stream_quirk()
142 if (fp->nr_rates > MAX_NR_RATES) { in create_fixed_stream_quirk()
143 kfree(fp); in create_fixed_stream_quirk()
146 if (fp->nr_rates > 0) { in create_fixed_stream_quirk()
147 rate_table = kmemdup(fp->rate_table, in create_fixed_stream_quirk()
148 sizeof(int) * fp->nr_rates, GFP_KERNEL); in create_fixed_stream_quirk()
150 kfree(fp); in create_fixed_stream_quirk()
153 fp->rate_table = rate_table; in create_fixed_stream_quirk()
156 stream = (fp->endpoint & USB_DIR_IN) in create_fixed_stream_quirk()
158 err = snd_usb_add_audio_stream(chip, stream, fp); in create_fixed_stream_quirk()
161 if (fp->iface != get_iface_desc(&iface->altsetting[0])->bInterfaceNumber || in create_fixed_stream_quirk()
162 fp->altset_idx >= iface->num_altsetting) { in create_fixed_stream_quirk()
166 alts = &iface->altsetting[fp->altset_idx]; in create_fixed_stream_quirk()
173 fp->protocol = altsd->bInterfaceProtocol; in create_fixed_stream_quirk()
175 if (fp->datainterval == 0) in create_fixed_stream_quirk()
176 fp->datainterval = snd_usb_parse_datainterval(chip, alts); in create_fixed_stream_quirk()
177 if (fp->maxpacksize == 0) in create_fixed_stream_quirk()
178 fp->maxpacksize = le16_to_cpu(get_endpoint(alts, 0)->wMaxPacketSize); in create_fixed_stream_quirk()
179 usb_set_interface(chip->dev, fp->iface, 0); in create_fixed_stream_quirk()
180 snd_usb_init_pitch(chip, fp->iface, alts, fp); in create_fixed_stream_quirk()
181 snd_usb_init_sample_rate(chip, fp->iface, alts, fp, fp->rate_max); in create_fixed_stream_quirk()
185 list_del(&fp->list); /* unlink for avoiding double-free */ in create_fixed_stream_quirk()
186 kfree(fp); in create_fixed_stream_quirk()
419 struct audioformat *fp; in create_uaxx_quirk() local
456 fp = kmemdup(&ua_format, sizeof(*fp), GFP_KERNEL); in create_uaxx_quirk()
457 if (!fp) in create_uaxx_quirk()
460 fp->iface = altsd->bInterfaceNumber; in create_uaxx_quirk()
461 fp->endpoint = get_endpoint(alts, 0)->bEndpointAddress; in create_uaxx_quirk()
462 fp->ep_attr = get_endpoint(alts, 0)->bmAttributes; in create_uaxx_quirk()
463 fp->datainterval = 0; in create_uaxx_quirk()
464 fp->maxpacksize = le16_to_cpu(get_endpoint(alts, 0)->wMaxPacketSize); in create_uaxx_quirk()
465 INIT_LIST_HEAD(&fp->list); in create_uaxx_quirk()
467 switch (fp->maxpacksize) { in create_uaxx_quirk()
469 fp->rate_max = fp->rate_min = 44100; in create_uaxx_quirk()
473 fp->rate_max = fp->rate_min = 48000; in create_uaxx_quirk()
477 fp->rate_max = fp->rate_min = 96000; in create_uaxx_quirk()
481 kfree(fp); in create_uaxx_quirk()
485 stream = (fp->endpoint & USB_DIR_IN) in create_uaxx_quirk()
487 err = snd_usb_add_audio_stream(chip, stream, fp); in create_uaxx_quirk()
489 list_del(&fp->list); /* unlink for avoiding double-free */ in create_uaxx_quirk()
490 kfree(fp); in create_uaxx_quirk()
493 usb_set_interface(chip->dev, fp->iface, 0); in create_uaxx_quirk()
1303 int snd_usb_is_big_endian_format(struct snd_usb_audio *chip, struct audioformat *fp) in snd_usb_is_big_endian_format() argument
1308 if (fp->altsetting == 2 || fp->altsetting == 3 || in snd_usb_is_big_endian_format()
1309 fp->altsetting == 5 || fp->altsetting == 6) in snd_usb_is_big_endian_format()
1314 fp->altsetting == 1 || fp->altsetting == 2 || in snd_usb_is_big_endian_format()
1315 fp->altsetting == 3) in snd_usb_is_big_endian_format()
1319 if (fp->altsetting == 2 || fp->altsetting == 3 || in snd_usb_is_big_endian_format()
1320 fp->altsetting == 5 || fp->altsetting == 6) in snd_usb_is_big_endian_format()
1575 struct audioformat *fp, in snd_usb_interface_dsd_format_quirks() argument
1583 switch (fp->altsetting) { in snd_usb_interface_dsd_format_quirks()
1585 fp->dsd_dop = true; in snd_usb_interface_dsd_format_quirks()
1588 fp->dsd_bitrev = true; in snd_usb_interface_dsd_format_quirks()
1591 fp->dsd_bitrev = true; in snd_usb_interface_dsd_format_quirks()
1601 if (fp->altsetting == 2) in snd_usb_interface_dsd_format_quirks()
1619 if (fp->altsetting == 3) in snd_usb_interface_dsd_format_quirks()
1628 if (fp->altsetting == 2) { in snd_usb_interface_dsd_format_quirks()
1641 if (fp->altsetting == 2) in snd_usb_interface_dsd_format_quirks()
1651 iface = usb_ifnum_to_if(chip->dev, fp->iface); in snd_usb_interface_dsd_format_quirks()
1658 if (fp->altsetting == iface->num_altsetting - 1) in snd_usb_interface_dsd_format_quirks()
1676 if (fp->dsd_raw) in snd_usb_interface_dsd_format_quirks()
1688 struct audioformat *fp, in snd_usb_audioformat_attributes_quirk() argument
1696 fp->attributes &= ~UAC_EP_CS_ATTR_SAMPLE_RATE; in snd_usb_audioformat_attributes_quirk()
1701 fp->attributes |= UAC_EP_CS_ATTR_SAMPLE_RATE; in snd_usb_audioformat_attributes_quirk()
1712 fp->ep_attr &= ~USB_ENDPOINT_SYNCTYPE; in snd_usb_audioformat_attributes_quirk()
1714 fp->ep_attr |= USB_ENDPOINT_SYNC_ADAPTIVE; in snd_usb_audioformat_attributes_quirk()
1716 fp->ep_attr |= USB_ENDPOINT_SYNC_SYNC; in snd_usb_audioformat_attributes_quirk()