efw 72 sound/firewire/fireworks/fireworks.c get_hardware_info(struct snd_efw *efw) efw 74 sound/firewire/fireworks/fireworks.c struct fw_device *fw_dev = fw_parent_device(efw->unit); efw 83 sound/firewire/fireworks/fireworks.c err = snd_efw_command_get_hwinfo(efw, hwinfo); efw 91 sound/firewire/fireworks/fireworks.c efw->firmware_version = hwinfo->arm_version; efw 93 sound/firewire/fireworks/fireworks.c strcpy(efw->card->driver, "Fireworks"); efw 94 sound/firewire/fireworks/fireworks.c strcpy(efw->card->shortname, hwinfo->model_name); efw 95 sound/firewire/fireworks/fireworks.c strcpy(efw->card->mixername, hwinfo->model_name); efw 96 sound/firewire/fireworks/fireworks.c snprintf(efw->card->longname, sizeof(efw->card->longname), efw 100 sound/firewire/fireworks/fireworks.c dev_name(&efw->unit->device), 100 << fw_dev->max_speed); efw 103 sound/firewire/fireworks/fireworks.c efw->resp_addr_changable = true; efw 105 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate = 0; efw 108 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_22050; efw 111 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_32000; efw 114 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_44100; efw 117 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_48000; efw 120 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_88200; efw 123 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_96000; efw 126 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_176400; efw 129 sound/firewire/fireworks/fireworks.c efw->supported_sampling_rate |= SNDRV_PCM_RATE_192000; efw 137 sound/firewire/fireworks/fireworks.c efw->midi_out_ports = hwinfo->midi_out_ports; efw 138 sound/firewire/fireworks/fireworks.c efw->midi_in_ports = hwinfo->midi_in_ports; efw 149 sound/firewire/fireworks/fireworks.c efw->pcm_capture_channels[0] = hwinfo->amdtp_tx_pcm_channels; efw 150 sound/firewire/fireworks/fireworks.c efw->pcm_capture_channels[1] = hwinfo->amdtp_tx_pcm_channels_2x; efw 151 sound/firewire/fireworks/fireworks.c efw->pcm_capture_channels[2] = hwinfo->amdtp_tx_pcm_channels_4x; efw 152 sound/firewire/fireworks/fireworks.c efw->pcm_playback_channels[0] = hwinfo->amdtp_rx_pcm_channels; efw 153 sound/firewire/fireworks/fireworks.c efw->pcm_playback_channels[1] = hwinfo->amdtp_rx_pcm_channels_2x; efw 154 sound/firewire/fireworks/fireworks.c efw->pcm_playback_channels[2] = hwinfo->amdtp_rx_pcm_channels_4x; efw 162 sound/firewire/fireworks/fireworks.c efw->phys_in = hwinfo->phys_in; efw 163 sound/firewire/fireworks/fireworks.c efw->phys_out = hwinfo->phys_out; efw 164 sound/firewire/fireworks/fireworks.c efw->phys_in_grp_count = hwinfo->phys_in_grp_count; efw 165 sound/firewire/fireworks/fireworks.c efw->phys_out_grp_count = hwinfo->phys_out_grp_count; efw 166 sound/firewire/fireworks/fireworks.c memcpy(&efw->phys_in_grps, hwinfo->phys_in_grps, efw 168 sound/firewire/fireworks/fireworks.c memcpy(&efw->phys_out_grps, hwinfo->phys_out_grps, efw 173 sound/firewire/fireworks/fireworks.c efw->is_af9 = true; efw 180 sound/firewire/fireworks/fireworks.c efw->is_fireworks3 = true; efw 189 sound/firewire/fireworks/fireworks.c struct snd_efw *efw = card->private_data; efw 192 sound/firewire/fireworks/fireworks.c clear_bit(efw->card_index, devices_used); efw 195 sound/firewire/fireworks/fireworks.c snd_efw_stream_destroy_duplex(efw); efw 196 sound/firewire/fireworks/fireworks.c snd_efw_transaction_remove_instance(efw); efw 202 sound/firewire/fireworks/fireworks.c struct snd_efw *efw = container_of(work, struct snd_efw, dwork.work); efw 206 sound/firewire/fireworks/fireworks.c if (efw->registered) efw 220 sound/firewire/fireworks/fireworks.c err = snd_card_new(&efw->unit->device, index[card_index], efw 221 sound/firewire/fireworks/fireworks.c id[card_index], THIS_MODULE, 0, &efw->card); efw 229 sound/firewire/fireworks/fireworks.c efw->card->private_free = efw_card_free; efw 230 sound/firewire/fireworks/fireworks.c efw->card->private_data = efw; efw 235 sound/firewire/fireworks/fireworks.c efw->resp_buf = devm_kzalloc(&efw->card->card_dev, efw 237 sound/firewire/fireworks/fireworks.c if (!efw->resp_buf) { efw 241 sound/firewire/fireworks/fireworks.c efw->pull_ptr = efw->push_ptr = efw->resp_buf; efw 242 sound/firewire/fireworks/fireworks.c snd_efw_transaction_add_instance(efw); efw 244 sound/firewire/fireworks/fireworks.c err = get_hardware_info(efw); efw 248 sound/firewire/fireworks/fireworks.c err = snd_efw_stream_init_duplex(efw); efw 252 sound/firewire/fireworks/fireworks.c snd_efw_proc_init(efw); efw 254 sound/firewire/fireworks/fireworks.c if (efw->midi_out_ports || efw->midi_in_ports) { efw 255 sound/firewire/fireworks/fireworks.c err = snd_efw_create_midi_devices(efw); efw 260 sound/firewire/fireworks/fireworks.c err = snd_efw_create_pcm_devices(efw); efw 264 sound/firewire/fireworks/fireworks.c err = snd_efw_create_hwdep_device(efw); efw 268 sound/firewire/fireworks/fireworks.c err = snd_card_register(efw->card); efw 272 sound/firewire/fireworks/fireworks.c efw->registered = true; efw 276 sound/firewire/fireworks/fireworks.c snd_card_free(efw->card); efw 277 sound/firewire/fireworks/fireworks.c dev_info(&efw->unit->device, efw 284 sound/firewire/fireworks/fireworks.c struct snd_efw *efw; efw 286 sound/firewire/fireworks/fireworks.c efw = devm_kzalloc(&unit->device, sizeof(struct snd_efw), GFP_KERNEL); efw 287 sound/firewire/fireworks/fireworks.c if (efw == NULL) efw 289 sound/firewire/fireworks/fireworks.c efw->unit = fw_unit_get(unit); efw 290 sound/firewire/fireworks/fireworks.c dev_set_drvdata(&unit->device, efw); efw 292 sound/firewire/fireworks/fireworks.c mutex_init(&efw->mutex); efw 293 sound/firewire/fireworks/fireworks.c spin_lock_init(&efw->lock); efw 294 sound/firewire/fireworks/fireworks.c init_waitqueue_head(&efw->hwdep_wait); efw 297 sound/firewire/fireworks/fireworks.c INIT_DEFERRABLE_WORK(&efw->dwork, do_registration); efw 298 sound/firewire/fireworks/fireworks.c snd_fw_schedule_registration(unit, &efw->dwork); efw 305 sound/firewire/fireworks/fireworks.c struct snd_efw *efw = dev_get_drvdata(&unit->device); efw 308 sound/firewire/fireworks/fireworks.c if (!efw->registered) efw 309 sound/firewire/fireworks/fireworks.c snd_fw_schedule_registration(unit, &efw->dwork); efw 311 sound/firewire/fireworks/fireworks.c snd_efw_transaction_bus_reset(efw->unit); efw 317 sound/firewire/fireworks/fireworks.c if (efw->registered) { efw 318 sound/firewire/fireworks/fireworks.c mutex_lock(&efw->mutex); efw 319 sound/firewire/fireworks/fireworks.c snd_efw_stream_update_duplex(efw); efw 320 sound/firewire/fireworks/fireworks.c mutex_unlock(&efw->mutex); efw 326 sound/firewire/fireworks/fireworks.c struct snd_efw *efw = dev_get_drvdata(&unit->device); efw 333 sound/firewire/fireworks/fireworks.c cancel_delayed_work_sync(&efw->dwork); efw 335 sound/firewire/fireworks/fireworks.c if (efw->registered) { efw 337 sound/firewire/fireworks/fireworks.c snd_card_free(efw->card); efw 340 sound/firewire/fireworks/fireworks.c mutex_destroy(&efw->mutex); efw 341 sound/firewire/fireworks/fireworks.c fw_unit_put(efw->unit); efw 122 sound/firewire/fireworks/fireworks.h void snd_efw_transaction_add_instance(struct snd_efw *efw); efw 123 sound/firewire/fireworks/fireworks.h void snd_efw_transaction_remove_instance(struct snd_efw *efw); efw 195 sound/firewire/fireworks/fireworks.h int snd_efw_command_set_resp_addr(struct snd_efw *efw, efw 197 sound/firewire/fireworks/fireworks.h int snd_efw_command_set_tx_mode(struct snd_efw *efw, efw 199 sound/firewire/fireworks/fireworks.h int snd_efw_command_get_hwinfo(struct snd_efw *efw, efw 201 sound/firewire/fireworks/fireworks.h int snd_efw_command_get_phys_meters(struct snd_efw *efw, efw 204 sound/firewire/fireworks/fireworks.h int snd_efw_command_get_clock_source(struct snd_efw *efw, efw 206 sound/firewire/fireworks/fireworks.h int snd_efw_command_get_sampling_rate(struct snd_efw *efw, unsigned int *rate); efw 207 sound/firewire/fireworks/fireworks.h int snd_efw_command_set_sampling_rate(struct snd_efw *efw, unsigned int rate); efw 209 sound/firewire/fireworks/fireworks.h int snd_efw_stream_init_duplex(struct snd_efw *efw); efw 210 sound/firewire/fireworks/fireworks.h int snd_efw_stream_reserve_duplex(struct snd_efw *efw, unsigned int rate); efw 211 sound/firewire/fireworks/fireworks.h int snd_efw_stream_start_duplex(struct snd_efw *efw); efw 212 sound/firewire/fireworks/fireworks.h void snd_efw_stream_stop_duplex(struct snd_efw *efw); efw 213 sound/firewire/fireworks/fireworks.h void snd_efw_stream_update_duplex(struct snd_efw *efw); efw 214 sound/firewire/fireworks/fireworks.h void snd_efw_stream_destroy_duplex(struct snd_efw *efw); efw 215 sound/firewire/fireworks/fireworks.h void snd_efw_stream_lock_changed(struct snd_efw *efw); efw 216 sound/firewire/fireworks/fireworks.h int snd_efw_stream_lock_try(struct snd_efw *efw); efw 217 sound/firewire/fireworks/fireworks.h void snd_efw_stream_lock_release(struct snd_efw *efw); efw 219 sound/firewire/fireworks/fireworks.h void snd_efw_proc_init(struct snd_efw *efw); efw 221 sound/firewire/fireworks/fireworks.h int snd_efw_create_midi_devices(struct snd_efw *efw); efw 223 sound/firewire/fireworks/fireworks.h int snd_efw_create_pcm_devices(struct snd_efw *efw); efw 226 sound/firewire/fireworks/fireworks.h int snd_efw_create_hwdep_device(struct snd_efw *efw); efw 101 sound/firewire/fireworks/fireworks_command.c efw_transaction(struct snd_efw *efw, unsigned int category, efw 122 sound/firewire/fireworks/fireworks_command.c spin_lock(&efw->lock); efw 123 sound/firewire/fireworks/fireworks_command.c if ((efw->seqnum < KERNEL_SEQNUM_MIN) || efw 124 sound/firewire/fireworks/fireworks_command.c (efw->seqnum >= KERNEL_SEQNUM_MAX - 2)) efw 125 sound/firewire/fireworks/fireworks_command.c efw->seqnum = KERNEL_SEQNUM_MIN; efw 127 sound/firewire/fireworks/fireworks_command.c efw->seqnum += 2; efw 128 sound/firewire/fireworks/fireworks_command.c seqnum = efw->seqnum; efw 129 sound/firewire/fireworks/fireworks_command.c spin_unlock(&efw->lock); efw 144 sound/firewire/fireworks/fireworks_command.c err = snd_efw_transaction_run(efw->unit, buf, cmd_bytes, efw 154 sound/firewire/fireworks/fireworks_command.c dev_err(&efw->unit->device, "EFW command failed [%u/%u]: %s\n", efw 181 sound/firewire/fireworks/fireworks_command.c int snd_efw_command_set_resp_addr(struct snd_efw *efw, efw 189 sound/firewire/fireworks/fireworks_command.c if (!efw->resp_addr_changable) efw 192 sound/firewire/fireworks/fireworks_command.c return efw_transaction(efw, EFC_CAT_HWCTL, efw 202 sound/firewire/fireworks/fireworks_command.c int snd_efw_command_set_tx_mode(struct snd_efw *efw, efw 206 sound/firewire/fireworks/fireworks_command.c return efw_transaction(efw, EFC_CAT_TRANSPORT, efw 211 sound/firewire/fireworks/fireworks_command.c int snd_efw_command_get_hwinfo(struct snd_efw *efw, efw 216 sound/firewire/fireworks/fireworks_command.c err = efw_transaction(efw, EFC_CAT_HWINFO, efw 255 sound/firewire/fireworks/fireworks_command.c int snd_efw_command_get_phys_meters(struct snd_efw *efw, efw 263 sound/firewire/fireworks/fireworks_command.c err = efw_transaction(efw, EFC_CAT_HWINFO, efw 274 sound/firewire/fireworks/fireworks_command.c command_get_clock(struct snd_efw *efw, struct efc_clock *clock) efw 278 sound/firewire/fireworks/fireworks_command.c err = efw_transaction(efw, EFC_CAT_HWCTL, efw 293 sound/firewire/fireworks/fireworks_command.c command_set_clock(struct snd_efw *efw, efw 306 sound/firewire/fireworks/fireworks_command.c err = command_get_clock(efw, &clock); efw 325 sound/firewire/fireworks/fireworks_command.c err = efw_transaction(efw, EFC_CAT_HWCTL, efw 342 sound/firewire/fireworks/fireworks_command.c int snd_efw_command_get_clock_source(struct snd_efw *efw, efw 348 sound/firewire/fireworks/fireworks_command.c err = command_get_clock(efw, &clock); efw 355 sound/firewire/fireworks/fireworks_command.c int snd_efw_command_get_sampling_rate(struct snd_efw *efw, unsigned int *rate) efw 360 sound/firewire/fireworks/fireworks_command.c err = command_get_clock(efw, &clock); efw 367 sound/firewire/fireworks/fireworks_command.c int snd_efw_command_set_sampling_rate(struct snd_efw *efw, unsigned int rate) efw 369 sound/firewire/fireworks/fireworks_command.c return command_set_clock(efw, UINT_MAX, rate); efw 22 sound/firewire/fireworks/fireworks_hwdep.c hwdep_read_resp_buf(struct snd_efw *efw, char __user *buf, long remained, efw 41 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 48 sound/firewire/fireworks/fireworks_hwdep.c pull_ptr = efw->pull_ptr; efw 50 sound/firewire/fireworks/fireworks_hwdep.c while (efw->push_ptr != pull_ptr) { efw 61 sound/firewire/fireworks/fireworks_hwdep.c (unsigned int)(pull_ptr - efw->resp_buf); efw 64 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 69 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 72 sound/firewire/fireworks/fireworks_hwdep.c if (pull_ptr >= efw->resp_buf + snd_efw_resp_buf_size) efw 90 sound/firewire/fireworks/fireworks_hwdep.c efw->pull_ptr = pull_ptr; efw 92 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 98 sound/firewire/fireworks/fireworks_hwdep.c hwdep_read_locked(struct snd_efw *efw, char __user *buf, long count, efw 105 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 107 sound/firewire/fireworks/fireworks_hwdep.c event.lock_status.status = (efw->dev_lock_count > 0); efw 108 sound/firewire/fireworks/fireworks_hwdep.c efw->dev_lock_changed = false; efw 110 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 124 sound/firewire/fireworks/fireworks_hwdep.c struct snd_efw *efw = hwdep->private_data; efw 129 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 131 sound/firewire/fireworks/fireworks_hwdep.c dev_lock_changed = efw->dev_lock_changed; efw 132 sound/firewire/fireworks/fireworks_hwdep.c queued = efw->push_ptr != efw->pull_ptr; efw 135 sound/firewire/fireworks/fireworks_hwdep.c prepare_to_wait(&efw->hwdep_wait, &wait, TASK_INTERRUPTIBLE); efw 136 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 138 sound/firewire/fireworks/fireworks_hwdep.c finish_wait(&efw->hwdep_wait, &wait); efw 141 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 142 sound/firewire/fireworks/fireworks_hwdep.c dev_lock_changed = efw->dev_lock_changed; efw 143 sound/firewire/fireworks/fireworks_hwdep.c queued = efw->push_ptr != efw->pull_ptr; efw 146 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 149 sound/firewire/fireworks/fireworks_hwdep.c count = hwdep_read_locked(efw, buf, count, offset); efw 151 sound/firewire/fireworks/fireworks_hwdep.c count = hwdep_read_resp_buf(efw, buf, count, offset); efw 160 sound/firewire/fireworks/fireworks_hwdep.c struct snd_efw *efw = hwdep->private_data; efw 179 sound/firewire/fireworks/fireworks_hwdep.c if (snd_efw_transaction_cmd(efw->unit, buf, count) < 0) efw 189 sound/firewire/fireworks/fireworks_hwdep.c struct snd_efw *efw = hwdep->private_data; efw 192 sound/firewire/fireworks/fireworks_hwdep.c poll_wait(file, &efw->hwdep_wait, wait); efw 194 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 195 sound/firewire/fireworks/fireworks_hwdep.c if (efw->dev_lock_changed || efw->pull_ptr != efw->push_ptr) efw 199 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 205 sound/firewire/fireworks/fireworks_hwdep.c hwdep_get_info(struct snd_efw *efw, void __user *arg) efw 207 sound/firewire/fireworks/fireworks_hwdep.c struct fw_device *dev = fw_parent_device(efw->unit); efw 225 sound/firewire/fireworks/fireworks_hwdep.c hwdep_lock(struct snd_efw *efw) efw 229 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 231 sound/firewire/fireworks/fireworks_hwdep.c if (efw->dev_lock_count == 0) { efw 232 sound/firewire/fireworks/fireworks_hwdep.c efw->dev_lock_count = -1; efw 238 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 244 sound/firewire/fireworks/fireworks_hwdep.c hwdep_unlock(struct snd_efw *efw) efw 248 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 250 sound/firewire/fireworks/fireworks_hwdep.c if (efw->dev_lock_count == -1) { efw 251 sound/firewire/fireworks/fireworks_hwdep.c efw->dev_lock_count = 0; efw 257 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 265 sound/firewire/fireworks/fireworks_hwdep.c struct snd_efw *efw = hwdep->private_data; efw 267 sound/firewire/fireworks/fireworks_hwdep.c spin_lock_irq(&efw->lock); efw 268 sound/firewire/fireworks/fireworks_hwdep.c if (efw->dev_lock_count == -1) efw 269 sound/firewire/fireworks/fireworks_hwdep.c efw->dev_lock_count = 0; efw 270 sound/firewire/fireworks/fireworks_hwdep.c spin_unlock_irq(&efw->lock); efw 279 sound/firewire/fireworks/fireworks_hwdep.c struct snd_efw *efw = hwdep->private_data; efw 283 sound/firewire/fireworks/fireworks_hwdep.c return hwdep_get_info(efw, (void __user *)arg); efw 285 sound/firewire/fireworks/fireworks_hwdep.c return hwdep_lock(efw); efw 287 sound/firewire/fireworks/fireworks_hwdep.c return hwdep_unlock(efw); efw 305 sound/firewire/fireworks/fireworks_hwdep.c int snd_efw_create_hwdep_device(struct snd_efw *efw) efw 318 sound/firewire/fireworks/fireworks_hwdep.c err = snd_hwdep_new(efw->card, "Fireworks", 0, &hwdep); efw 324 sound/firewire/fireworks/fireworks_hwdep.c hwdep->private_data = efw; efw 12 sound/firewire/fireworks/fireworks_midi.c struct snd_efw *efw = substream->rmidi->private_data; efw 15 sound/firewire/fireworks/fireworks_midi.c err = snd_efw_stream_lock_try(efw); efw 19 sound/firewire/fireworks/fireworks_midi.c mutex_lock(&efw->mutex); efw 20 sound/firewire/fireworks/fireworks_midi.c err = snd_efw_stream_reserve_duplex(efw, 0); efw 22 sound/firewire/fireworks/fireworks_midi.c ++efw->substreams_counter; efw 23 sound/firewire/fireworks/fireworks_midi.c err = snd_efw_stream_start_duplex(efw); efw 25 sound/firewire/fireworks/fireworks_midi.c --efw->substreams_counter; efw 27 sound/firewire/fireworks/fireworks_midi.c mutex_unlock(&efw->mutex); efw 29 sound/firewire/fireworks/fireworks_midi.c snd_efw_stream_lock_release(efw); efw 36 sound/firewire/fireworks/fireworks_midi.c struct snd_efw *efw = substream->rmidi->private_data; efw 38 sound/firewire/fireworks/fireworks_midi.c mutex_lock(&efw->mutex); efw 39 sound/firewire/fireworks/fireworks_midi.c --efw->substreams_counter; efw 40 sound/firewire/fireworks/fireworks_midi.c snd_efw_stream_stop_duplex(efw); efw 41 sound/firewire/fireworks/fireworks_midi.c mutex_unlock(&efw->mutex); efw 43 sound/firewire/fireworks/fireworks_midi.c snd_efw_stream_lock_release(efw); efw 49 sound/firewire/fireworks/fireworks_midi.c struct snd_efw *efw = substrm->rmidi->private_data; efw 52 sound/firewire/fireworks/fireworks_midi.c spin_lock_irqsave(&efw->lock, flags); efw 55 sound/firewire/fireworks/fireworks_midi.c amdtp_am824_midi_trigger(&efw->tx_stream, efw 58 sound/firewire/fireworks/fireworks_midi.c amdtp_am824_midi_trigger(&efw->tx_stream, efw 61 sound/firewire/fireworks/fireworks_midi.c spin_unlock_irqrestore(&efw->lock, flags); efw 66 sound/firewire/fireworks/fireworks_midi.c struct snd_efw *efw = substrm->rmidi->private_data; efw 69 sound/firewire/fireworks/fireworks_midi.c spin_lock_irqsave(&efw->lock, flags); efw 72 sound/firewire/fireworks/fireworks_midi.c amdtp_am824_midi_trigger(&efw->rx_stream, efw 75 sound/firewire/fireworks/fireworks_midi.c amdtp_am824_midi_trigger(&efw->rx_stream, efw 78 sound/firewire/fireworks/fireworks_midi.c spin_unlock_irqrestore(&efw->lock, flags); efw 81 sound/firewire/fireworks/fireworks_midi.c static void set_midi_substream_names(struct snd_efw *efw, efw 88 sound/firewire/fireworks/fireworks_midi.c "%s MIDI %d", efw->card->shortname, subs->number + 1); efw 92 sound/firewire/fireworks/fireworks_midi.c int snd_efw_create_midi_devices(struct snd_efw *efw) efw 109 sound/firewire/fireworks/fireworks_midi.c err = snd_rawmidi_new(efw->card, efw->card->driver, 0, efw 110 sound/firewire/fireworks/fireworks_midi.c efw->midi_out_ports, efw->midi_in_ports, efw 116 sound/firewire/fireworks/fireworks_midi.c "%s MIDI", efw->card->shortname); efw 117 sound/firewire/fireworks/fireworks_midi.c rmidi->private_data = efw; efw 119 sound/firewire/fireworks/fireworks_midi.c if (efw->midi_in_ports > 0) { efw 127 sound/firewire/fireworks/fireworks_midi.c set_midi_substream_names(efw, str); efw 130 sound/firewire/fireworks/fireworks_midi.c if (efw->midi_out_ports > 0) { efw 138 sound/firewire/fireworks/fireworks_midi.c set_midi_substream_names(efw, str); efw 141 sound/firewire/fireworks/fireworks_midi.c if ((efw->midi_out_ports > 0) && (efw->midi_in_ports > 0)) efw 132 sound/firewire/fireworks/fireworks_pcm.c pcm_init_hw_params(struct snd_efw *efw, efw 142 sound/firewire/fireworks/fireworks_pcm.c s = &efw->tx_stream; efw 143 sound/firewire/fireworks/fireworks_pcm.c pcm_channels = efw->pcm_capture_channels; efw 146 sound/firewire/fireworks/fireworks_pcm.c s = &efw->rx_stream; efw 147 sound/firewire/fireworks/fireworks_pcm.c pcm_channels = efw->pcm_playback_channels; efw 151 sound/firewire/fireworks/fireworks_pcm.c runtime->hw.rates = efw->supported_sampling_rate, efw 175 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 180 sound/firewire/fireworks/fireworks_pcm.c err = snd_efw_stream_lock_try(efw); efw 184 sound/firewire/fireworks/fireworks_pcm.c err = pcm_init_hw_params(efw, substream); efw 188 sound/firewire/fireworks/fireworks_pcm.c err = snd_efw_command_get_clock_source(efw, &clock_source); efw 197 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_running(&efw->tx_stream) || efw 198 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_running(&efw->rx_stream)) { efw 199 sound/firewire/fireworks/fireworks_pcm.c err = snd_efw_command_get_sampling_rate(efw, &sampling_rate); efw 210 sound/firewire/fireworks/fireworks_pcm.c snd_efw_stream_lock_release(efw); efw 216 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 217 sound/firewire/fireworks/fireworks_pcm.c snd_efw_stream_lock_release(efw); efw 224 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 235 sound/firewire/fireworks/fireworks_pcm.c mutex_lock(&efw->mutex); efw 236 sound/firewire/fireworks/fireworks_pcm.c err = snd_efw_stream_reserve_duplex(efw, rate); efw 238 sound/firewire/fireworks/fireworks_pcm.c ++efw->substreams_counter; efw 239 sound/firewire/fireworks/fireworks_pcm.c mutex_unlock(&efw->mutex); efw 247 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 249 sound/firewire/fireworks/fireworks_pcm.c mutex_lock(&efw->mutex); efw 252 sound/firewire/fireworks/fireworks_pcm.c --efw->substreams_counter; efw 254 sound/firewire/fireworks/fireworks_pcm.c snd_efw_stream_stop_duplex(efw); efw 256 sound/firewire/fireworks/fireworks_pcm.c mutex_unlock(&efw->mutex); efw 263 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 266 sound/firewire/fireworks/fireworks_pcm.c err = snd_efw_stream_start_duplex(efw); efw 268 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_prepare(&efw->tx_stream); efw 274 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 277 sound/firewire/fireworks/fireworks_pcm.c err = snd_efw_stream_start_duplex(efw); efw 279 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_prepare(&efw->rx_stream); efw 286 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 290 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_trigger(&efw->tx_stream, substream); efw 293 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_trigger(&efw->tx_stream, NULL); efw 303 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 307 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_trigger(&efw->rx_stream, substream); efw 310 sound/firewire/fireworks/fireworks_pcm.c amdtp_stream_pcm_trigger(&efw->rx_stream, NULL); efw 321 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = sbstrm->private_data; efw 322 sound/firewire/fireworks/fireworks_pcm.c return amdtp_stream_pcm_pointer(&efw->tx_stream); efw 326 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = sbstrm->private_data; efw 327 sound/firewire/fireworks/fireworks_pcm.c return amdtp_stream_pcm_pointer(&efw->rx_stream); efw 332 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 334 sound/firewire/fireworks/fireworks_pcm.c return amdtp_stream_pcm_ack(&efw->tx_stream); efw 339 sound/firewire/fireworks/fireworks_pcm.c struct snd_efw *efw = substream->private_data; efw 341 sound/firewire/fireworks/fireworks_pcm.c return amdtp_stream_pcm_ack(&efw->rx_stream); efw 344 sound/firewire/fireworks/fireworks_pcm.c int snd_efw_create_pcm_devices(struct snd_efw *efw) efw 373 sound/firewire/fireworks/fireworks_pcm.c err = snd_pcm_new(efw->card, efw->card->driver, 0, 1, 1, &pcm); efw 377 sound/firewire/fireworks/fireworks_pcm.c pcm->private_data = efw; efw 378 sound/firewire/fireworks/fireworks_pcm.c snprintf(pcm->name, sizeof(pcm->name), "%s PCM", efw->card->shortname); efw 30 sound/firewire/fireworks/fireworks_proc.c struct snd_efw *efw = entry->private_data; efw 38 sound/firewire/fireworks/fireworks_proc.c if (snd_efw_command_get_hwinfo(efw, hwinfo) < 0) efw 107 sound/firewire/fireworks/fireworks_proc.c struct snd_efw *efw = entry->private_data; efw 111 sound/firewire/fireworks/fireworks_proc.c if (snd_efw_command_get_clock_source(efw, &clock_source) < 0) efw 114 sound/firewire/fireworks/fireworks_proc.c if (snd_efw_command_get_sampling_rate(efw, &sampling_rate) < 0) efw 130 sound/firewire/fireworks/fireworks_proc.c struct snd_efw *efw = entry->private_data; efw 138 sound/firewire/fireworks/fireworks_proc.c (efw->phys_in + efw->phys_out) * sizeof(u32); efw 143 sound/firewire/fireworks/fireworks_proc.c err = snd_efw_command_get_phys_meters(efw, meters, size); efw 150 sound/firewire/fireworks/fireworks_proc.c max = min(efw->phys_out, meters->out_meters); efw 153 sound/firewire/fireworks/fireworks_proc.c for (g = 0; g < efw->phys_out_grp_count; g++) { efw 154 sound/firewire/fireworks/fireworks_proc.c name = get_phys_name(&efw->phys_out_grps[g], false); efw 155 sound/firewire/fireworks/fireworks_proc.c for (c = 0; c < efw->phys_out_grps[g].count; c++) { efw 163 sound/firewire/fireworks/fireworks_proc.c max = min(efw->phys_in, meters->in_meters); efw 166 sound/firewire/fireworks/fireworks_proc.c for (g = 0; g < efw->phys_in_grp_count; g++) { efw 167 sound/firewire/fireworks/fireworks_proc.c name = get_phys_name(&efw->phys_in_grps[g], true); efw 168 sound/firewire/fireworks/fireworks_proc.c for (c = 0; c < efw->phys_in_grps[g].count; c++) efw 181 sound/firewire/fireworks/fireworks_proc.c struct snd_efw *efw = entry->private_data; efw 184 sound/firewire/fireworks/fireworks_proc.c if (efw->pull_ptr > efw->push_ptr) efw 186 sound/firewire/fireworks/fireworks_proc.c (unsigned int)(efw->pull_ptr - efw->push_ptr); efw 188 sound/firewire/fireworks/fireworks_proc.c consumed = (unsigned int)(efw->push_ptr - efw->pull_ptr); efw 195 sound/firewire/fireworks/fireworks_proc.c add_node(struct snd_efw *efw, struct snd_info_entry *root, const char *name, efw 200 sound/firewire/fireworks/fireworks_proc.c entry = snd_info_create_card_entry(efw->card, name, root); efw 202 sound/firewire/fireworks/fireworks_proc.c snd_info_set_text_ops(entry, efw, op); efw 205 sound/firewire/fireworks/fireworks_proc.c void snd_efw_proc_init(struct snd_efw *efw) efw 213 sound/firewire/fireworks/fireworks_proc.c root = snd_info_create_card_entry(efw->card, "firewire", efw 214 sound/firewire/fireworks/fireworks_proc.c efw->card->proc_root); efw 219 sound/firewire/fireworks/fireworks_proc.c add_node(efw, root, "clock", proc_read_clock); efw 220 sound/firewire/fireworks/fireworks_proc.c add_node(efw, root, "firmware", proc_read_hwinfo); efw 221 sound/firewire/fireworks/fireworks_proc.c add_node(efw, root, "meters", proc_read_phys_meters); efw 222 sound/firewire/fireworks/fireworks_proc.c add_node(efw, root, "queues", proc_read_queues_state); efw 11 sound/firewire/fireworks/fireworks_stream.c static int init_stream(struct snd_efw *efw, struct amdtp_stream *stream) efw 18 sound/firewire/fireworks/fireworks_stream.c if (stream == &efw->tx_stream) { efw 19 sound/firewire/fireworks/fireworks_stream.c conn = &efw->out_conn; efw 23 sound/firewire/fireworks/fireworks_stream.c conn = &efw->in_conn; efw 28 sound/firewire/fireworks/fireworks_stream.c err = cmp_connection_init(conn, efw->unit, c_dir, 0); efw 32 sound/firewire/fireworks/fireworks_stream.c err = amdtp_am824_init(stream, efw->unit, s_dir, CIP_BLOCKING); efw 39 sound/firewire/fireworks/fireworks_stream.c if (stream == &efw->tx_stream) { efw 41 sound/firewire/fireworks/fireworks_stream.c efw->tx_stream.flags |= CIP_EMPTY_WITH_TAG0; efw 43 sound/firewire/fireworks/fireworks_stream.c efw->tx_stream.flags |= CIP_DBC_IS_END_EVENT; efw 45 sound/firewire/fireworks/fireworks_stream.c efw->tx_stream.flags |= CIP_SKIP_DBC_ZERO_CHECK; efw 48 sound/firewire/fireworks/fireworks_stream.c if (efw->is_fireworks3 && efw 49 sound/firewire/fireworks/fireworks_stream.c (efw->firmware_version == 0x5070000 || efw 50 sound/firewire/fireworks/fireworks_stream.c efw->firmware_version == 0x5070300 || efw 51 sound/firewire/fireworks/fireworks_stream.c efw->firmware_version == 0x5080000)) efw 52 sound/firewire/fireworks/fireworks_stream.c efw->tx_stream.flags |= CIP_UNALIGHED_DBC; efw 54 sound/firewire/fireworks/fireworks_stream.c if (efw->is_af9) efw 55 sound/firewire/fireworks/fireworks_stream.c efw->tx_stream.flags |= CIP_WRONG_DBS; efw 57 sound/firewire/fireworks/fireworks_stream.c if (efw->firmware_version == 0x5050000) efw 58 sound/firewire/fireworks/fireworks_stream.c efw->tx_stream.ctx_data.tx.dbc_interval = 8; efw 64 sound/firewire/fireworks/fireworks_stream.c static int start_stream(struct snd_efw *efw, struct amdtp_stream *stream, efw 70 sound/firewire/fireworks/fireworks_stream.c if (stream == &efw->tx_stream) efw 71 sound/firewire/fireworks/fireworks_stream.c conn = &efw->out_conn; efw 73 sound/firewire/fireworks/fireworks_stream.c conn = &efw->in_conn; efw 81 sound/firewire/fireworks/fireworks_stream.c err = amdtp_domain_add_stream(&efw->domain, stream, efw 93 sound/firewire/fireworks/fireworks_stream.c static void destroy_stream(struct snd_efw *efw, struct amdtp_stream *stream) efw 97 sound/firewire/fireworks/fireworks_stream.c if (stream == &efw->tx_stream) efw 98 sound/firewire/fireworks/fireworks_stream.c cmp_connection_destroy(&efw->out_conn); efw 100 sound/firewire/fireworks/fireworks_stream.c cmp_connection_destroy(&efw->in_conn); efw 104 sound/firewire/fireworks/fireworks_stream.c check_connection_used_by_others(struct snd_efw *efw, struct amdtp_stream *s) efw 110 sound/firewire/fireworks/fireworks_stream.c if (s == &efw->tx_stream) efw 111 sound/firewire/fireworks/fireworks_stream.c conn = &efw->out_conn; efw 113 sound/firewire/fireworks/fireworks_stream.c conn = &efw->in_conn; efw 117 sound/firewire/fireworks/fireworks_stream.c dev_err(&efw->unit->device, efw 127 sound/firewire/fireworks/fireworks_stream.c int snd_efw_stream_init_duplex(struct snd_efw *efw) efw 131 sound/firewire/fireworks/fireworks_stream.c err = init_stream(efw, &efw->tx_stream); efw 135 sound/firewire/fireworks/fireworks_stream.c err = init_stream(efw, &efw->rx_stream); efw 137 sound/firewire/fireworks/fireworks_stream.c destroy_stream(efw, &efw->tx_stream); efw 141 sound/firewire/fireworks/fireworks_stream.c err = amdtp_domain_init(&efw->domain); efw 143 sound/firewire/fireworks/fireworks_stream.c destroy_stream(efw, &efw->tx_stream); efw 144 sound/firewire/fireworks/fireworks_stream.c destroy_stream(efw, &efw->rx_stream); efw 149 sound/firewire/fireworks/fireworks_stream.c err = snd_efw_command_set_tx_mode(efw, SND_EFW_TRANSPORT_MODE_IEC61883); efw 151 sound/firewire/fireworks/fireworks_stream.c destroy_stream(efw, &efw->tx_stream); efw 152 sound/firewire/fireworks/fireworks_stream.c destroy_stream(efw, &efw->rx_stream); efw 158 sound/firewire/fireworks/fireworks_stream.c static int keep_resources(struct snd_efw *efw, struct amdtp_stream *stream, efw 166 sound/firewire/fireworks/fireworks_stream.c if (stream == &efw->tx_stream) { efw 167 sound/firewire/fireworks/fireworks_stream.c pcm_channels = efw->pcm_capture_channels[mode]; efw 168 sound/firewire/fireworks/fireworks_stream.c midi_ports = efw->midi_out_ports; efw 169 sound/firewire/fireworks/fireworks_stream.c conn = &efw->out_conn; efw 171 sound/firewire/fireworks/fireworks_stream.c pcm_channels = efw->pcm_playback_channels[mode]; efw 172 sound/firewire/fireworks/fireworks_stream.c midi_ports = efw->midi_in_ports; efw 173 sound/firewire/fireworks/fireworks_stream.c conn = &efw->in_conn; efw 184 sound/firewire/fireworks/fireworks_stream.c int snd_efw_stream_reserve_duplex(struct snd_efw *efw, unsigned int rate) efw 191 sound/firewire/fireworks/fireworks_stream.c err = check_connection_used_by_others(efw, &efw->rx_stream); efw 196 sound/firewire/fireworks/fireworks_stream.c err = snd_efw_command_get_sampling_rate(efw, &curr_rate); efw 202 sound/firewire/fireworks/fireworks_stream.c amdtp_domain_stop(&efw->domain); efw 204 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->out_conn); efw 205 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->in_conn); efw 207 sound/firewire/fireworks/fireworks_stream.c cmp_connection_release(&efw->out_conn); efw 208 sound/firewire/fireworks/fireworks_stream.c cmp_connection_release(&efw->in_conn); efw 211 sound/firewire/fireworks/fireworks_stream.c if (efw->substreams_counter == 0 || rate != curr_rate) { efw 214 sound/firewire/fireworks/fireworks_stream.c err = snd_efw_command_set_sampling_rate(efw, rate); efw 222 sound/firewire/fireworks/fireworks_stream.c err = keep_resources(efw, &efw->tx_stream, rate, mode); efw 226 sound/firewire/fireworks/fireworks_stream.c err = keep_resources(efw, &efw->rx_stream, rate, mode); efw 228 sound/firewire/fireworks/fireworks_stream.c cmp_connection_release(&efw->in_conn); efw 236 sound/firewire/fireworks/fireworks_stream.c int snd_efw_stream_start_duplex(struct snd_efw *efw) efw 242 sound/firewire/fireworks/fireworks_stream.c if (efw->substreams_counter == 0) efw 245 sound/firewire/fireworks/fireworks_stream.c if (amdtp_streaming_error(&efw->rx_stream) || efw 246 sound/firewire/fireworks/fireworks_stream.c amdtp_streaming_error(&efw->tx_stream)) { efw 247 sound/firewire/fireworks/fireworks_stream.c amdtp_domain_stop(&efw->domain); efw 248 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->out_conn); efw 249 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->in_conn); efw 252 sound/firewire/fireworks/fireworks_stream.c err = snd_efw_command_get_sampling_rate(efw, &rate); efw 256 sound/firewire/fireworks/fireworks_stream.c if (!amdtp_stream_running(&efw->rx_stream)) { efw 257 sound/firewire/fireworks/fireworks_stream.c err = start_stream(efw, &efw->rx_stream, rate); efw 261 sound/firewire/fireworks/fireworks_stream.c err = start_stream(efw, &efw->tx_stream, rate); efw 265 sound/firewire/fireworks/fireworks_stream.c err = amdtp_domain_start(&efw->domain); efw 270 sound/firewire/fireworks/fireworks_stream.c if (!amdtp_stream_wait_callback(&efw->rx_stream, efw 272 sound/firewire/fireworks/fireworks_stream.c !amdtp_stream_wait_callback(&efw->tx_stream, efw 281 sound/firewire/fireworks/fireworks_stream.c amdtp_domain_stop(&efw->domain); efw 283 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->out_conn); efw 284 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->in_conn); efw 289 sound/firewire/fireworks/fireworks_stream.c void snd_efw_stream_stop_duplex(struct snd_efw *efw) efw 291 sound/firewire/fireworks/fireworks_stream.c if (efw->substreams_counter == 0) { efw 292 sound/firewire/fireworks/fireworks_stream.c amdtp_domain_stop(&efw->domain); efw 294 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->out_conn); efw 295 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->in_conn); efw 297 sound/firewire/fireworks/fireworks_stream.c cmp_connection_release(&efw->out_conn); efw 298 sound/firewire/fireworks/fireworks_stream.c cmp_connection_release(&efw->in_conn); efw 302 sound/firewire/fireworks/fireworks_stream.c void snd_efw_stream_update_duplex(struct snd_efw *efw) efw 304 sound/firewire/fireworks/fireworks_stream.c amdtp_domain_stop(&efw->domain); efw 306 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->out_conn); efw 307 sound/firewire/fireworks/fireworks_stream.c cmp_connection_break(&efw->in_conn); efw 309 sound/firewire/fireworks/fireworks_stream.c amdtp_stream_pcm_abort(&efw->rx_stream); efw 310 sound/firewire/fireworks/fireworks_stream.c amdtp_stream_pcm_abort(&efw->tx_stream); efw 313 sound/firewire/fireworks/fireworks_stream.c void snd_efw_stream_destroy_duplex(struct snd_efw *efw) efw 315 sound/firewire/fireworks/fireworks_stream.c amdtp_domain_destroy(&efw->domain); efw 317 sound/firewire/fireworks/fireworks_stream.c destroy_stream(efw, &efw->rx_stream); efw 318 sound/firewire/fireworks/fireworks_stream.c destroy_stream(efw, &efw->tx_stream); efw 321 sound/firewire/fireworks/fireworks_stream.c void snd_efw_stream_lock_changed(struct snd_efw *efw) efw 323 sound/firewire/fireworks/fireworks_stream.c efw->dev_lock_changed = true; efw 324 sound/firewire/fireworks/fireworks_stream.c wake_up(&efw->hwdep_wait); efw 327 sound/firewire/fireworks/fireworks_stream.c int snd_efw_stream_lock_try(struct snd_efw *efw) efw 331 sound/firewire/fireworks/fireworks_stream.c spin_lock_irq(&efw->lock); efw 334 sound/firewire/fireworks/fireworks_stream.c if (efw->dev_lock_count < 0) { efw 340 sound/firewire/fireworks/fireworks_stream.c if (efw->dev_lock_count++ == 0) efw 341 sound/firewire/fireworks/fireworks_stream.c snd_efw_stream_lock_changed(efw); efw 344 sound/firewire/fireworks/fireworks_stream.c spin_unlock_irq(&efw->lock); efw 348 sound/firewire/fireworks/fireworks_stream.c void snd_efw_stream_lock_release(struct snd_efw *efw) efw 350 sound/firewire/fireworks/fireworks_stream.c spin_lock_irq(&efw->lock); efw 352 sound/firewire/fireworks/fireworks_stream.c if (WARN_ON(efw->dev_lock_count <= 0)) efw 354 sound/firewire/fireworks/fireworks_stream.c if (--efw->dev_lock_count == 0) efw 355 sound/firewire/fireworks/fireworks_stream.c snd_efw_stream_lock_changed(efw); efw 357 sound/firewire/fireworks/fireworks_stream.c spin_unlock_irq(&efw->lock); efw 118 sound/firewire/fireworks/fireworks_transaction.c copy_resp_to_buf(struct snd_efw *efw, void *data, size_t length, int *rcode) efw 126 sound/firewire/fireworks/fireworks_transaction.c spin_lock_irq(&efw->lock); efw 128 sound/firewire/fireworks/fireworks_transaction.c if (efw->push_ptr < efw->pull_ptr) efw 129 sound/firewire/fireworks/fireworks_transaction.c capacity = (unsigned int)(efw->pull_ptr - efw->push_ptr); efw 132 sound/firewire/fireworks/fireworks_transaction.c (unsigned int)(efw->push_ptr - efw->pull_ptr); efw 143 sound/firewire/fireworks/fireworks_transaction.c (unsigned int)(efw->push_ptr - efw->resp_buf); efw 146 sound/firewire/fireworks/fireworks_transaction.c memcpy(efw->push_ptr, data, till_end); efw 148 sound/firewire/fireworks/fireworks_transaction.c efw->push_ptr += till_end; efw 149 sound/firewire/fireworks/fireworks_transaction.c if (efw->push_ptr >= efw->resp_buf + snd_efw_resp_buf_size) efw 150 sound/firewire/fireworks/fireworks_transaction.c efw->push_ptr -= snd_efw_resp_buf_size; efw 157 sound/firewire/fireworks/fireworks_transaction.c wake_up(&efw->hwdep_wait); efw 161 sound/firewire/fireworks/fireworks_transaction.c spin_unlock_irq(&efw->lock); efw 169 sound/firewire/fireworks/fireworks_transaction.c struct snd_efw *efw; efw 175 sound/firewire/fireworks/fireworks_transaction.c efw = instances[i]; efw 176 sound/firewire/fireworks/fireworks_transaction.c if (efw == NULL) efw 178 sound/firewire/fireworks/fireworks_transaction.c device = fw_parent_device(efw->unit); efw 191 sound/firewire/fireworks/fireworks_transaction.c copy_resp_to_buf(efw, data, length, rcode); efw 258 sound/firewire/fireworks/fireworks_transaction.c void snd_efw_transaction_add_instance(struct snd_efw *efw) efw 267 sound/firewire/fireworks/fireworks_transaction.c instances[i] = efw; efw 274 sound/firewire/fireworks/fireworks_transaction.c void snd_efw_transaction_remove_instance(struct snd_efw *efw) efw 281 sound/firewire/fireworks/fireworks_transaction.c if (instances[i] != efw)