mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 18:39:59 +00:00
![Dimitris Papastamos](/assets/img/avatar_default.png)
This patch adds support for LZO compression when storing the register cache. The initial register defaults cache is marked as __devinitconst and the only change required for a driver to use LZO compression is to set the compress_type member in codec->driver to SND_SOC_LZO_COMPRESSION. For a typical device whose register map would normally occupy 25kB or 50kB by using the LZO compression technique, one can get down to ~5-7kB. There might be a performance penalty associated with each individual read/write due to decompressing/compressing the underlying cache, however that should not be noticeable. These memory benefits depend on whether the target architecture can get rid of the memory occupied by the original register defaults cache which is marked as __devinitconst. Nevertheless there will be some memory gain even if the target architecture can't get rid of the original register map, this should be around ~30-32kB instead of 50kB. Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
50 lines
1.3 KiB
Text
50 lines
1.3 KiB
Text
#
|
|
# SoC audio configuration
|
|
#
|
|
|
|
menuconfig SND_SOC
|
|
tristate "ALSA for SoC audio support"
|
|
select LZO_COMPRESS
|
|
select LZO_DECOMPRESS
|
|
select SND_PCM
|
|
select AC97_BUS if SND_SOC_AC97_BUS
|
|
select SND_JACK if INPUT=y || INPUT=SND
|
|
---help---
|
|
|
|
If you want ASoC support, you should say Y here and also to the
|
|
specific driver for your SoC platform below.
|
|
|
|
ASoC provides power efficient ALSA support for embedded battery powered
|
|
SoC based systems like PDA's, Phones and Personal Media Players.
|
|
|
|
This ASoC audio support can also be built as a module. If so, the module
|
|
will be called snd-soc-core.
|
|
|
|
if SND_SOC
|
|
|
|
config SND_SOC_AC97_BUS
|
|
bool
|
|
|
|
# All the supported SoCs
|
|
source "sound/soc/atmel/Kconfig"
|
|
source "sound/soc/au1x/Kconfig"
|
|
source "sound/soc/blackfin/Kconfig"
|
|
source "sound/soc/davinci/Kconfig"
|
|
source "sound/soc/ep93xx/Kconfig"
|
|
source "sound/soc/fsl/Kconfig"
|
|
source "sound/soc/imx/Kconfig"
|
|
source "sound/soc/jz4740/Kconfig"
|
|
source "sound/soc/nuc900/Kconfig"
|
|
source "sound/soc/omap/Kconfig"
|
|
source "sound/soc/kirkwood/Kconfig"
|
|
source "sound/soc/pxa/Kconfig"
|
|
source "sound/soc/s3c24xx/Kconfig"
|
|
source "sound/soc/s6000/Kconfig"
|
|
source "sound/soc/sh/Kconfig"
|
|
source "sound/soc/txx9/Kconfig"
|
|
|
|
# Supported codecs
|
|
source "sound/soc/codecs/Kconfig"
|
|
|
|
endif # SND_SOC
|
|
|