android_kernel_xiaomi_sm8350/include/sound
Takashi Iwai 51e9f2e665 ALSA: Allocate larger pages in sgbuf
Most hardwares have limited buffer-descriptor table length.  This
also restricts the max buffer size of the sound driver.
For example, snd-hda-intel has 1MB buffer size limit, and this is
because it can have at most 256 BDL entries.  For supporting larger
buffers, we need to allocate larger pages even for sg-buffers.

This patch changes the sgbuf allocation code to try to allocate
larger pages first.  At each head of the allocated pages, the
number of allocated pages is stored in the lowest bits of the
corresponding entry of the table addr field.  This change isn't
visible as long as the driver uses snd_sgbuf_get_addr() helper.

Also, the patch adds a new function, snd_pcm_sgbuf_get_chunk_size().
This returns the size of the chunk on continuous pages starting at
the given position offset.  If the chunk reaches to a non-continuous
page, it returns the size to the boundary.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-08-25 09:57:38 +02:00
..
ac97_codec.h
ad1816a.h
ad1843.h ALSA: ALSA driver for SGI O2 audio board 2008-07-14 09:01:02 +02:00
ad1848.h ALSA: wss_lib: use wss detection code instead of ad1848 one 2008-08-06 15:40:02 +02:00
ak4xxx-adda.h
ak4114.h
ak4117.h
ak4531_codec.h
asequencer.h
asound_fm.h
asound.h ALSA: Add USB US122L driver 2008-08-01 13:37:12 +02:00
asoundef.h ALSA: IEC958 definition for consumer status channel update 2008-08-01 13:13:13 +02:00
control.h ALSA: make snd_ctl_elem_read() and snd_ctl_elem_write() static 2008-06-13 16:48:49 +02:00
core.h ALSA: Clean up snd_BUG() 2008-08-13 11:46:43 +02:00
cs46xx_dsp_scb_types.h
cs46xx_dsp_spos.h
cs46xx_dsp_task_types.h
cs46xx.h
cs4231-regs.h ALSA: opti93x: add support for Opti93x codec in cs4231-lib 2008-06-13 16:47:33 +02:00
cs8403.h
cs8427.h
driver.h
emu10k1_synth.h
emu10k1.h [ALSA] emu10k1 - Fix inverted Analog/Digital mixer switch on Audigy2 2008-06-02 11:45:53 +02:00
emu8000_reg.h
emu8000.h
emux_legacy.h
emux_synth.h
es1688.h
gus.h
hda_hwdep.h
hdsp.h
hdspm.h
hwdep.h
i2c.h
info.h
initval.h
jack.h ALSA: Add jack reporting API 2008-07-29 21:32:03 +02:00
Kbuild
memalloc.h ALSA: Allocate larger pages in sgbuf 2008-08-25 09:57:38 +02:00
minors.h ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE 2008-08-01 13:37:15 +02:00
mixer_oss.h
mpu401.h
opl3.h
opl4.h
pcm_oss.h
pcm_params.h
pcm-indirect.h
pcm.h ALSA: Allocate larger pages in sgbuf 2008-08-25 09:57:38 +02:00
pt2258.h
rawmidi.h
sb16_csp.h
sb.h
seq_device.h
seq_kernel.h ALSA: remove CONFIG_KMOD from sound 2008-07-10 09:32:58 +02:00
seq_midi_emul.h
seq_midi_event.h
seq_oss_legacy.h
seq_oss.h
seq_virmidi.h
sfnt_info.h
snd_wavefront.h ALSA: wss_lib: rename cs4231.h into wss.h 2008-08-06 15:39:47 +02:00
soc-dapm.h ALSA: ASoC: Export dapm_reg_event() fully 2008-07-29 16:00:33 +02:00
soc-of-simple.h ALSA: ASoC: Make OpenFirmware helper include file conditional 2008-07-29 21:32:22 +02:00
soc.h ALSA: ASoC: convert use of uint to unsigned int 2008-07-29 21:32:29 +02:00
soundfont.h
sscape_ioctl.h
tea575x-tuner.h
tea6330t.h
timer.h
tlv.h
trident.h
uda1341.h [ALSA] remove CVS keywords 2008-05-27 15:56:20 +02:00
util_mem.h
version.h ALSA: release v1.0.18rc1 2008-08-15 13:33:10 +02:00
vx_core.h ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
wavefront.h
wss.h ALSA: wss_lib: use wss pcm code instead of ad1848 one 2008-08-06 15:39:56 +02:00
ymfpci.h