Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

sound/isa/gus/gus_reset.c snd_gf1_clear_voices() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
BUF_SIZE 0 gus s32min-(-1),1-s32max
BUF_SIZE 0 gus s32min-(-1),1-s32max
BUF_SIZE 0 gus->gf1.res_port1 (-1),64
BUF_SIZE 0 gus->gf1.res_port2 (-1),64
CAPPED_DATA 1 voice 1
DATA_SOURCE 0 gus $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 gus->gf1.rom_memory 0-u32max
HOST_DATA 0 gus->revision 0-15
UNITS 0 gus unit_byte
LOCK2 irq
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &runtime->buffer_mutex
HALF_LOCKED2 0 &gus->voice_alloc
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_reset.c snd_gf1_smart_stop_voice() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
PARAM_VALUE 0 gus->gf1.timer1->hw.flags 1-2,5,17,24
PARAM_VALUE 0 gus->gf1.timer1->hw.ticks 0-1000000000
PARAM_VALUE 0 gus->gf1.timer2->hw.flags 1-2,5,17,24
PARAM_VALUE 0 gus->gf1.timer2->hw.ticks 0-1000000000
PARAM_VALUE 0 gus->gf1.voices 4096-ptr_max
PARAM_VALUE 0 gus->pcm_cap_substream->runtime->audio_tstamp_report.accuracy 0,42
PARAM_VALUE 0 gus->pcm_cap_substream->runtime->audio_tstamp_report.actual_type 0-2,5
PARAM_VALUE 0 gus->pcm_cap_substream->runtime->fasync->poll s32min-s32max
PARAM_VALUE 0 gus->pcm_cap_substream->runtime->fasync->signal s32min-s32max
PARAM_VALUE 1 voice 0-31
DATA_SOURCE 0 gus $0
DATA_SOURCE 1 voice $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 gus->midi_substream_input->runtime->hw_ptr 0-6442450939[c]
HOST_DATA 0 *gus->midi_substream_input->runtime->buffer 0-255
LOCK2 irq
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_reset.c snd_gf1_stop_voice() -> snd_gf1_select_voice()

Type Parameter Key Value
DATA_SOURCE 0 gus $0
DATA_SOURCE 1 voice $1
NOCHECK_CALL
LOCK2 irq
LOCK2 0 &gus->reg_lock
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_reset.c snd_gf1_stop_voices() -> snd_gf1_select_voice()

Type Parameter Key Value
BUF_SIZE 0 gus s32min-(-1),1-s32max
BUF_SIZE 0 gus s32min-(-1),1-s32max
BUF_SIZE 0 gus->gf1.res_port1 (-1),64
BUF_SIZE 0 gus->gf1.res_port2 (-1),64
CAPPED_DATA 1 voice 1
DATA_SOURCE 0 gus $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 gus unit_byte
LOCK2 irq
LOCK2 0 &gus->reg_lock
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_interrupt_volume() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
PARAM_VALUE 0 gus->gf1.voices 4096-ptr_max
DATA_SOURCE 0 gus $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 gus->midi_substream_input->runtime->hw_ptr 0-6442450939[c]
HOST_DATA 0 *gus->midi_substream_input->runtime->buffer 0-255
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_interrupt_volume() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
PARAM_VALUE 0 gus->active_voice_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 gus->gf1.voices 4096-ptr_max
DATA_SOURCE 0 gus $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 gus->midi_substream_input->runtime->hw_ptr 0-6442450939[c]
HOST_DATA 0 *gus->midi_substream_input->runtime->buffer 0-255
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_interrupt_wave() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus->gf1.voices 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 gus->midi_substream_input->runtime->hw_ptr 0-6442450939[c]
HOST_DATA 0 *gus->midi_substream_input->runtime->buffer 0-255
UNITS 0 gus unit_byte
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_interrupt_wave() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
PARAM_VALUE 0 gus->active_voice_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 gus->gf1.voices 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 gus->midi_substream_input->runtime->hw_ptr 0-6442450939[c]
HOST_DATA 0 *gus->midi_substream_input->runtime->buffer 0-255
UNITS 0 gus unit_byte
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_interrupt_wave() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
PARAM_VALUE 0 gus->active_voice_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 gus->gf1.enh_mode 0
PARAM_VALUE 0 gus->gf1.voices 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 gus->midi_substream_input->runtime->hw_ptr 0-6442450939[c]
HOST_DATA 0 *gus->midi_substream_input->runtime->buffer 0-255
UNITS 0 gus unit_byte
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_playback_pointer() -> snd_gf1_select_voice()

Type Parameter Key Value
BUF_SIZE 0 gus s32min-(-2),1-s32max
BUF_SIZE 0 gus s32min-(-2),1-s32max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 gus unit_byte
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &atimer->lock
HALF_LOCKED2 irq
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_trigger_up() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 gus unit_byte
LOCK2 irq
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &substream->runtime->buffer_mutex
HALF_LOCKED2 &substream->self_group.lock
HALF_LOCKED2 &substream->self_group.mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_trigger_up() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 gus unit_byte
LOCK2 irq
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &substream->runtime->buffer_mutex
HALF_LOCKED2 &substream->self_group.lock
HALF_LOCKED2 &substream->self_group.mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_trigger_up() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
PARAM_VALUE 0 gus->gf1.enh_mode 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 gus unit_byte
LOCK2 irq
LOCK2 0 &gus->reg_lock
HALF_LOCKED2 &substream->runtime->buffer_mutex
HALF_LOCKED2 &substream->self_group.lock
HALF_LOCKED2 &substream->self_group.mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct snd_gus_card)->reg_lock

sound/isa/gus/gus_pcm.c snd_gf1_pcm_volume_put() -> snd_gf1_select_voice()

Type Parameter Key Value
PARAM_VALUE 0 gus 4096-ptr_max
PARAM_VALUE 0 gus->gf1.pcm_volume_level_left1 0-127
PARAM_VALUE 0 gus->gf1.pcm_volume_level_right1 0-127
PARAM_VALUE 0 gus->gf1.voices 4096-ptr_max
BUF_SIZE 0 gus (-1),72,104,256,376,448,2728
BUF_SIZE 0 gus (-1),72,104,256,376,448,2728
CAPPED_DATA 0 gus->gf1.pcm_volume_level_left1 1
CAPPED_DATA 0 gus->gf1.pcm_volume_level_right1 1
BIT_INFO 0 gus->gf1.pcm_volume_level_left 0x0,0xfff0
BIT_INFO 0 gus->gf1.pcm_volume_level_right 0x0,0xfff0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 gus unit_byte
LOCK2 irq
LOCK2 0 &gus->reg_lock
LOCK2 0 &gus->voice_alloc
HALF_LOCKED2 &card->controls_rwsem
HALF_LOCKED2 &card->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct snd_gus_card)->reg_lock
TYPE_LOCK (struct snd_gus_card)->voice_alloc