/linux/sound/firewire/oxfw/ |
H A D | oxfw-stream.c | 8 #include "oxfw.h" 41 static int set_rate(struct snd_oxfw *oxfw, unsigned int rate) in set_rate() argument 45 err = avc_general_set_sig_fmt(oxfw->unit, rate, in set_rate() 50 if (oxfw->has_output) in set_rate() 51 err = avc_general_set_sig_fmt(oxfw->unit, rate, in set_rate() 57 static int set_stream_format(struct snd_oxfw *oxfw, struct amdtp_stream *s, in set_stream_format() argument 66 if (s == &oxfw->tx_stream) { in set_stream_format() 67 formats = oxfw->tx_stream_formats; in set_stream_format() 70 formats = oxfw->rx_stream_formats; in set_stream_format() 87 if (oxfw in set_stream_format() 103 start_stream(struct snd_oxfw * oxfw,struct amdtp_stream * stream) start_stream() argument 127 check_connection_used_by_others(struct snd_oxfw * oxfw,struct amdtp_stream * stream) check_connection_used_by_others() argument 151 init_stream(struct snd_oxfw * oxfw,struct amdtp_stream * stream) init_stream() argument 201 keep_resources(struct snd_oxfw * oxfw,struct amdtp_stream * stream) keep_resources() argument 253 snd_oxfw_stream_reserve_duplex(struct snd_oxfw * oxfw,struct amdtp_stream * stream,unsigned int rate,unsigned int pcm_channels,unsigned int frames_per_period,unsigned int frames_per_buffer) snd_oxfw_stream_reserve_duplex() argument 332 snd_oxfw_stream_start_duplex(struct snd_oxfw * oxfw) snd_oxfw_stream_start_duplex() argument 406 snd_oxfw_stream_stop_duplex(struct snd_oxfw * oxfw) snd_oxfw_stream_stop_duplex() argument 421 destroy_stream(struct snd_oxfw * oxfw,struct amdtp_stream * stream) destroy_stream() argument 434 snd_oxfw_stream_init_duplex(struct snd_oxfw * oxfw) snd_oxfw_stream_init_duplex() argument 462 snd_oxfw_stream_destroy_duplex(struct snd_oxfw * oxfw) snd_oxfw_stream_destroy_duplex() argument 472 snd_oxfw_stream_update_duplex(struct snd_oxfw * oxfw) snd_oxfw_stream_update_duplex() argument 487 snd_oxfw_stream_get_current_formation(struct snd_oxfw * oxfw,enum avc_general_plug_dir dir,struct snd_oxfw_stream_formation * formation) snd_oxfw_stream_get_current_formation() argument 628 assume_stream_formats(struct snd_oxfw * oxfw,enum avc_general_plug_dir dir,unsigned int pid,u8 * buf,unsigned int * len,u8 ** formats) assume_stream_formats() argument 705 fill_stream_formats(struct snd_oxfw * oxfw,enum avc_general_plug_dir dir,unsigned short pid) fill_stream_formats() argument 782 snd_oxfw_stream_discover(struct snd_oxfw * oxfw) snd_oxfw_stream_discover() argument 861 snd_oxfw_stream_lock_changed(struct snd_oxfw * oxfw) snd_oxfw_stream_lock_changed() argument 867 snd_oxfw_stream_lock_try(struct snd_oxfw * oxfw) snd_oxfw_stream_lock_try() argument 888 snd_oxfw_stream_lock_release(struct snd_oxfw * oxfw) snd_oxfw_stream_lock_release() argument [all...] |
H A D | oxfw-midi.c | 8 #include "oxfw.h" 12 struct snd_oxfw *oxfw = substream->rmidi->private_data; in midi_capture_open() local 15 err = snd_oxfw_stream_lock_try(oxfw); in midi_capture_open() 19 mutex_lock(&oxfw->mutex); in midi_capture_open() 21 err = snd_oxfw_stream_reserve_duplex(oxfw, &oxfw->tx_stream, 0, 0, 0, 0); in midi_capture_open() 23 ++oxfw->substreams_count; in midi_capture_open() 24 err = snd_oxfw_stream_start_duplex(oxfw); in midi_capture_open() 26 --oxfw->substreams_count; in midi_capture_open() 29 mutex_unlock(&oxfw in midi_capture_open() 39 struct snd_oxfw *oxfw = substream->rmidi->private_data; midi_playback_open() local 64 struct snd_oxfw *oxfw = substream->rmidi->private_data; midi_capture_close() local 79 struct snd_oxfw *oxfw = substream->rmidi->private_data; midi_playback_close() local 94 struct snd_oxfw *oxfw = substrm->rmidi->private_data; midi_capture_trigger() local 111 struct snd_oxfw *oxfw = substrm->rmidi->private_data; midi_playback_trigger() local 126 set_midi_substream_names(struct snd_oxfw * oxfw,struct snd_rawmidi_str * str) set_midi_substream_names() argument 138 snd_oxfw_create_midi(struct snd_oxfw * oxfw) snd_oxfw_create_midi() argument [all...] |
H A D | oxfw.c | 3 * oxfw.c - a part of driver for OXFW970/971 based devices 8 #include "oxfw.h" 65 static int name_card(struct snd_oxfw *oxfw, const struct ieee1394_device_id *entry) in name_card() argument 67 struct fw_device *fw_dev = fw_parent_device(oxfw->unit); in name_card() 82 err = fw_csr_string(oxfw->unit->directory, CSR_MODEL, in name_card() 87 err = snd_fw_transaction(oxfw->unit, TCODE_READ_QUADLET_REQUEST, in name_card() 94 oxfw->quirks |= SND_OXFW_QUIRK_JUMBO_PAYLOAD; in name_card() 108 strscpy(oxfw->card->driver, d); in name_card() 109 strscpy(oxfw->card->mixername, m); in name_card() 110 strscpy(oxfw in name_card() 123 struct snd_oxfw *oxfw = card->private_data; oxfw_card_free() local 132 detect_quirks(struct snd_oxfw * oxfw,const struct ieee1394_device_id * entry) detect_quirks() argument 212 struct snd_oxfw *oxfw; oxfw_probe() local 281 struct snd_oxfw *oxfw = dev_get_drvdata(&unit->device); oxfw_bus_reset() local 297 struct snd_oxfw *oxfw = dev_get_drvdata(&unit->device); oxfw_remove() local [all...] |
H A D | oxfw-hwdep.c | 16 #include "oxfw.h" 21 struct snd_oxfw *oxfw = hwdep->private_data; in hwdep_read() local 25 spin_lock_irq(&oxfw->lock); in hwdep_read() 27 while (!oxfw->dev_lock_changed) { in hwdep_read() 28 prepare_to_wait(&oxfw->hwdep_wait, &wait, TASK_INTERRUPTIBLE); in hwdep_read() 29 spin_unlock_irq(&oxfw->lock); in hwdep_read() 31 finish_wait(&oxfw->hwdep_wait, &wait); in hwdep_read() 34 spin_lock_irq(&oxfw->lock); in hwdep_read() 39 event.lock_status.status = (oxfw->dev_lock_count > 0); in hwdep_read() 40 oxfw in hwdep_read() 55 struct snd_oxfw *oxfw = hwdep->private_data; hwdep_poll() local 70 hwdep_get_info(struct snd_oxfw * oxfw,void __user * arg) hwdep_get_info() argument 89 hwdep_lock(struct snd_oxfw * oxfw) hwdep_lock() argument 107 hwdep_unlock(struct snd_oxfw * oxfw) hwdep_unlock() argument 127 struct snd_oxfw *oxfw = hwdep->private_data; hwdep_release() local 140 struct snd_oxfw *oxfw = hwdep->private_data; hwdep_ioctl() local 165 snd_oxfw_create_hwdep(struct snd_oxfw * oxfw) snd_oxfw_create_hwdep() argument [all...] |
H A D | oxfw-pcm.c | 8 #include "oxfw.h" 109 static int init_hw_params(struct snd_oxfw *oxfw, in init_hw_params() argument 119 stream = &oxfw->tx_stream; in init_hw_params() 120 formats = oxfw->tx_stream_formats; in init_hw_params() 123 stream = &oxfw->rx_stream; in init_hw_params() 124 formats = oxfw->rx_stream_formats; in init_hw_params() 148 struct snd_oxfw *oxfw = substream->private_data; in limit_to_current_params() local 158 err = snd_oxfw_stream_get_current_formation(oxfw, dir, &formation); in limit_to_current_params() 172 struct snd_oxfw *oxfw = substream->private_data; in pcm_open() local 173 struct amdtp_domain *d = &oxfw in pcm_open() 230 struct snd_oxfw *oxfw = substream->private_data; pcm_close() local 239 struct snd_oxfw *oxfw = substream->private_data; pcm_capture_hw_params() local 262 struct snd_oxfw *oxfw = substream->private_data; pcm_playback_hw_params() local 285 struct snd_oxfw *oxfw = substream->private_data; pcm_capture_hw_free() local 300 struct snd_oxfw *oxfw = substream->private_data; pcm_playback_hw_free() local 316 struct snd_oxfw *oxfw = substream->private_data; pcm_capture_prepare() local 331 struct snd_oxfw *oxfw = substream->private_data; pcm_playback_prepare() local 347 struct snd_oxfw *oxfw = substream->private_data; pcm_capture_trigger() local 365 struct snd_oxfw *oxfw = substream->private_data; pcm_playback_trigger() local 384 struct snd_oxfw *oxfw = sbstm->private_data; pcm_capture_pointer() local 390 struct snd_oxfw *oxfw = sbstm->private_data; pcm_playback_pointer() local 397 struct snd_oxfw *oxfw = substream->private_data; pcm_capture_ack() local 404 struct snd_oxfw *oxfw = substream->private_data; pcm_playback_ack() local 409 snd_oxfw_create_pcm(struct snd_oxfw * oxfw) snd_oxfw_create_pcm() argument [all...] |
H A D | oxfw.h | 3 * oxfw.h - a part of driver for OXFW970/971 based devices 128 int snd_oxfw_stream_init_duplex(struct snd_oxfw *oxfw); 129 int snd_oxfw_stream_reserve_duplex(struct snd_oxfw *oxfw, 134 int snd_oxfw_stream_start_duplex(struct snd_oxfw *oxfw); 135 void snd_oxfw_stream_stop_duplex(struct snd_oxfw *oxfw); 136 void snd_oxfw_stream_destroy_duplex(struct snd_oxfw *oxfw); 137 void snd_oxfw_stream_update_duplex(struct snd_oxfw *oxfw); 146 int snd_oxfw_stream_get_current_formation(struct snd_oxfw *oxfw, 150 int snd_oxfw_stream_discover(struct snd_oxfw *oxfw); 152 void snd_oxfw_stream_lock_changed(struct snd_oxfw *oxfw); [all...] |
H A D | Makefile | 2 snd-oxfw-y := oxfw-command.o oxfw-stream.o oxfw-pcm.o oxfw-proc.o \ 3 oxfw-midi.o oxfw-hwdep.o oxfw-spkr.o oxfw-scs1x.o oxfw [all...] |
H A D | oxfw-proc.c | 8 #include "./oxfw.h" 13 struct snd_oxfw *oxfw = entry->private_data; in proc_read_formation() local 20 err = snd_oxfw_stream_get_current_formation(oxfw, in proc_read_formation() 29 format = oxfw->rx_stream_formats[i]; in proc_read_formation() 46 if (!oxfw->has_output) in proc_read_formation() 50 err = snd_oxfw_stream_get_current_formation(oxfw, in proc_read_formation() 59 format = oxfw->tx_stream_formats[i]; in proc_read_formation() 77 static void add_node(struct snd_oxfw *oxfw, struct snd_info_entry *root, in add_node() argument 84 entry = snd_info_create_card_entry(oxfw->card, name, root); in add_node() 86 snd_info_set_text_ops(entry, oxfw, o in add_node() 89 snd_oxfw_proc_init(struct snd_oxfw * oxfw) snd_oxfw_proc_init() argument [all...] |
H A D | oxfw-spkr.c | 3 * oxfw-spkr.c - a part of driver for OXFW970/971 based devices 8 #include "oxfw.h" 148 struct snd_oxfw *oxfw = control->private_data; in spkr_mute_get() local 149 struct fw_spkr *spkr = oxfw->spec; in spkr_mute_get() 159 struct snd_oxfw *oxfw = control->private_data; in spkr_mute_put() local 160 struct fw_spkr *spkr = oxfw->spec; in spkr_mute_put() 169 err = avc_audio_feature_mute(oxfw->unit, spkr->mute_fb_id, &mute, in spkr_mute_put() 181 struct snd_oxfw *oxfw = control->private_data; in spkr_volume_info() local 182 struct fw_spkr *spkr = oxfw->spec; in spkr_volume_info() 197 struct snd_oxfw *oxfw in spkr_volume_get() local 210 struct snd_oxfw *oxfw = control->private_data; spkr_volume_put() local 251 snd_oxfw_add_spkr(struct snd_oxfw * oxfw,bool is_lacie) snd_oxfw_add_spkr() argument [all...] |
H A D | oxfw-scs1x.c | 3 * oxfw-scs1x.c - a part of driver for OXFW970/971 based devices 9 #include "oxfw.h" 334 static int register_address(struct snd_oxfw *oxfw) in register_address() argument 336 struct fw_scs1x *scs = oxfw->spec; in register_address() 341 return snd_fw_transaction(oxfw->unit, TCODE_WRITE_BLOCK_REQUEST, in register_address() 352 void snd_oxfw_scs1x_update(struct snd_oxfw *oxfw) in snd_oxfw_scs1x_update() argument 354 register_address(oxfw); in snd_oxfw_scs1x_update() 357 int snd_oxfw_scs1x_add(struct snd_oxfw *oxfw) in snd_oxfw_scs1x_add() argument 374 scs = devm_kzalloc(&oxfw->card->card_dev, sizeof(struct fw_scs1x), in snd_oxfw_scs1x_add() 378 scs->fw_dev = fw_parent_device(oxfw in snd_oxfw_scs1x_add() [all...] |
/linux/sound/firewire/ |
H A D | Makefile | 11 obj-$(CONFIG_SND_OXFW) += oxfw/
|