Takashi Iwai
9442e691e4
[PATCH] maximum latency tracking: ALSA support
...
Add maximum latency tracking to the ALSA subsystem for PCM playback. In
ALSA, the playback application controls the buffer size and thus indirectly
the period of latency that it can deal with. This patch uses 75% of the
total available latency as threshold to announce to the latency subsystem;
While 75% is a crude heuristic it's a quite reasonable one; the remaining
25% can be used for all driver processing for the next samples which is
also proportional to the size of the buffer.
With ogg123 a latency setting of about 4msec was seen (at 44Khz), while
with the "play" command a much longer maximum tolerable latency was seen.
Other, more multimedia oriented players as well as games, will have a lot
smaller buffers to allow better synchronization and those will actually get
into the latency domains where there is impact on the power management
rules.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-01 00:39:19 -07:00
..
ac97_codec.h
[ALSA] Add experimental support of aggressive AC97 power-saving mode
2006-09-23 10:37:08 +02:00
ad1816a.h
[ALSA] Remove xxx_t typedefs: ISA AD1816A
2006-01-03 12:18:18 +01:00
ad1848.h
[ALSA] Add dB scale information to ad1848 driver
2006-09-23 10:43:28 +02:00
ainstr_fm.h
[ALSA] Remove xxx_t typedefs: Instrument layer
2006-01-03 12:17:54 +01:00
ainstr_gf1.h
[ALSA] Remove xxx_t typedefs: Instrument layer
2006-01-03 12:17:54 +01:00
ainstr_iw.h
[ALSA] Remove xxx_t typedefs: Instrument layer
2006-01-03 12:17:54 +01:00
ainstr_simple.h
[ALSA] Remove xxx_t typedefs: Instrument layer
2006-01-03 12:17:54 +01:00
ak4xxx-adda.h
[ALSA] ak4xxx - Remove bogus IPGA controls
2006-09-23 10:46:55 +02:00
ak4114.h
[ALSA] Remove xxx_t typedefs: I2C drivers
2006-01-03 12:18:09 +01:00
ak4117.h
[ALSA] Remove xxx_t typedefs: I2C drivers
2006-01-03 12:18:09 +01:00
ak4531_codec.h
[ALSA] semaphore -> mutex (PCI part)
2006-03-22 10:25:29 +01:00
asequencer.h
[ALSA] add more sequencer port type information bits
2006-06-22 21:33:18 +02:00
asound.h
[ALSA] Control API - more robust TLV implementation
2006-09-23 10:37:26 +02:00
asound_fm.h
[ALSA] Remove xxx_t typedefs: OPL3
2006-01-03 12:18:04 +01:00
asoundef.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
control.h
[ALSA] Remove unused tlv_rw field from struct snd_kcontrol
2006-09-23 10:37:49 +02:00
core.h
[ALSA] Add pcm_class attribute to PCM sysfs entry
2006-09-23 10:46:32 +02:00
cs46xx.h
[ALSA] Fix section mismatch errors in ALSA PCI drivers
2006-07-12 20:08:01 +02:00
cs46xx_dsp_scb_types.h
[ALSA] Remove xxx_t typedefs: PCI CS46xx
2006-01-03 12:18:45 +01:00
cs46xx_dsp_spos.h
[ALSA] Remove xxx_t typedefs: PCI CS46xx
2006-01-03 12:18:45 +01:00
cs46xx_dsp_task_types.h
[ALSA] Remove xxx_t typedefs: PCI CS46xx
2006-01-03 12:18:45 +01:00
cs4231.h
[ALSA] semaphore -> mutex (ISA part)
2006-03-22 10:25:03 +01:00
cs8403.h
[ALSA] Remove xxx_t typedefs: I2C drivers
2006-01-03 12:18:08 +01:00
cs8427.h
[ALSA] Remove xxx_t typedefs: I2C drivers
2006-01-03 12:18:08 +01:00
driver.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
emu10k1.h
[ALSA] snd-emu10k1: Implement dB gain infomation.
2006-09-23 10:38:32 +02:00
emu10k1_synth.h
[ALSA] Remove xxx_t typedefs: PCI emu10k1
2006-01-03 12:18:47 +01:00
emu8000.h
[ALSA] Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
2006-01-03 12:18:25 +01:00
emu8000_reg.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
emux_legacy.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
emux_synth.h
[ALSA] semaphore -> mutex (driver part)
2006-03-22 10:24:57 +01:00
es1688.h
[ALSA] Remove xxx_t typedefs: ISA ES1688
2006-01-03 12:18:23 +01:00
gus.h
[ALSA] semaphore -> mutex (ISA part)
2006-03-22 10:25:03 +01:00
hdsp.h
Fix integer types in <sound/hdsp.h> SNDRV_HDSP_IOCTL_GET_PEAK_RMS ioctl
2006-05-04 00:42:42 +01:00
hdspm.h
[ALSA] Remove xxx_t typedefs: PCI HDSP-MADI
2006-01-03 12:18:53 +01:00
hwdep.h
[ALSA] semaphore -> mutex (core part)
2006-03-22 10:24:50 +01:00
i2c.h
[ALSA] semaphore -> mutex (driver part)
2006-03-22 10:24:57 +01:00
info.h
[ALSA] Fix disconnection of proc interface
2006-09-23 10:36:48 +02:00
initval.h
[PATCH] irq-flags: sound: Use the new IRQF_ constants
2006-07-02 13:58:54 -07:00
Kbuild
[HEADERS] One line per header in Kbuild files to reduce conflicts
2006-09-19 12:43:58 +01:00
memalloc.h
[PATCH] gfp_t: sound
2005-10-28 08:16:50 -07:00
minors.h
[ALSA] dynamic minors (4/6): dynamic minor number allocation
2006-01-03 12:29:19 +01:00
mixer_oss.h
[ALSA] semaphore -> mutex (core part)
2006-03-22 10:24:50 +01:00
mpu401.h
[ALSA] Change an arugment of snd_mpu401_uart_new() to bit flags
2006-06-22 21:33:56 +02:00
opl3.h
[PATCH] sound: remove PC98-specific OPL3_HW_OPL3_PC98
2006-03-24 07:33:26 -08:00
opl4.h
[ALSA] Remove xxx_t typedefs: OPL4
2006-01-03 12:18:06 +01:00
pcm-indirect.h
[ALSA] Remove xxx_t typedefs: PCM
2006-01-03 12:17:43 +01:00
pcm.h
[PATCH] maximum latency tracking: ALSA support
2006-10-01 00:39:19 -07:00
pcm_oss.h
[ALSA] Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n
2006-04-27 21:10:42 +02:00
pcm_params.h
[ALSA] Move OSS-specific hw_params helper to snd-pcm-oss module
2006-06-22 21:33:05 +02:00
rawmidi.h
[ALSA] rawmidi: add get_port_info callback for sequencer information flags
2006-06-22 21:33:20 +02:00
sb.h
[ALSA] Add PM support to SB-support code
2006-01-03 12:28:03 +01:00
sb16_csp.h
[ALSA] semaphore -> mutex (ISA part)
2006-03-22 10:25:03 +01:00
seq_device.h
[ALSA] Remove xxx_t typedefs: Sequencer
2006-01-03 12:17:52 +01:00
seq_instr.h
[ALSA] semaphore -> mutex (core part)
2006-03-22 10:24:50 +01:00
seq_kernel.h
[ALSA] seq: set client name in snd_seq_create_kernel_client()
2006-01-03 12:30:49 +01:00
seq_midi_emul.h
[ALSA] Remove xxx_t typedefs: Sequencer
2006-01-03 12:17:52 +01:00
seq_midi_event.h
[ALSA] Remove xxx_t typedefs: Sequencer
2006-01-03 12:17:52 +01:00
seq_oss.h
[ALSA] Remove xxx_t typedefs: Sequencer OSS-emulation
2006-01-03 12:17:57 +01:00
seq_oss_legacy.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
seq_virmidi.h
[ALSA] Remove xxx_t typedefs: Sequencer
2006-01-03 12:17:52 +01:00
sfnt_info.h
[ALSA] Remove xxx_t typedefs: Emu-X synth
2006-01-03 12:18:14 +01:00
snd_wavefront.h
[ALSA] Remove xxx_t typedefs: ISA Wavefront
2006-01-03 12:18:30 +01:00
soundfont.h
[ALSA] semaphore -> mutex (driver part)
2006-03-22 10:24:57 +01:00
sscape_ioctl.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
tea575x-tuner.h
V4L/DVB (4210b): git-dvb: tea575x-tuner build fix
2006-06-25 02:05:25 -03:00
tea6330t.h
[ALSA] Remove xxx_t typedefs: I2C drivers
2006-01-03 12:18:08 +01:00
timer.h
[ALSA] Unregister device files at disconnection
2006-09-23 10:36:58 +02:00
tlv.h
[ALSA] Add definition of TLV dB range compound
2006-09-23 10:46:11 +02:00
trident.h
[ALSA] trident - Fix PM support
2006-01-03 12:27:37 +01:00
typedefs.h
[ALSA] Backward-compatibility typedefs
2006-01-03 12:18:00 +01:00
uda1341.h
[ALSA] Remove xxx_t typedefs: I2C drivers
2006-01-03 12:18:08 +01:00
util_mem.h
[ALSA] semaphore -> mutex (driver part)
2006-03-22 10:24:57 +01:00
version.h
[ALSA] version 1.0.12rc1
2006-06-22 21:35:11 +02:00
vx_core.h
[ALSA] Add dB scale information to vxpocket and vx222 drivers
2006-09-23 10:44:12 +02:00
wavefront.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
wavefront_fx.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ymfpci.h
[ALSA] ymfpci - make rear channel swap optional
2006-03-22 10:26:21 +01:00