linux/sound/soc/codecs
Lars-Peter Clausen 86767b7d5b ASoC: Avoid recalculating the bitmask for SOC_ENUM controls
For ENUM controls the bitmask is calculated based on the number of items.
Currently this is done each time the control is accessed. And while the
performance impact of this should be negligible we can easily do better. The
roundup_pow_of_two macro performs the same calculation which is currently done
manually, but it is also possible to use this macro with compile time constants
and so it can be used to initialize static data. So we can use it to initialize
the mask field of a ENUM control during its declaration.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2012-09-18 22:51:23 -04:00
..
88pm860x-codec.c ASoC: Convert 88pm860x-codec to devm_kzalloc() 2011-12-27 12:58:02 +00:00
88pm860x-codec.h
ab8500-codec.c ASoC: Revert "ASoC: ab8500: Inform SoC Core that we have our own I/O arrangements" 2012-09-11 11:26:02 +08:00
ab8500-codec.h ASoC: codecs: Add AB8500 codec-driver 2012-06-11 13:19:02 +08:00
ac97.c ASoC: ac97: Remove empty remove() function 2012-06-03 13:06:39 +01:00
ad193x.c ASoC: ad193x: Use managed regmap init 2012-09-13 18:08:21 +08:00
ad193x.h ASoC: ad193x: Use snd_soc_update_bits where appropriate 2011-11-28 18:57:52 +00:00
ad1836.c ASoC: ad1836: Convert to direct regmap usage. 2012-09-13 18:08:21 +08:00
ad1836.h ASoC: Fix wrong define for AD1836_ADC_WORD_OFFSET 2011-11-22 13:06:14 +00:00
ad1980.c Revert "ASoC: AC97 doesn't use regmap by default" 2012-09-11 11:26:03 +08:00
ad1980.h
ad73311.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
ad73311.h
adau1373.c ASoC: adau1373: Use module_i2c_driver 2012-08-06 15:20:35 +01:00
adau1373.h ASoC: Add ADAU1373 codec support 2011-08-17 00:53:54 +09:00
adau1701.c ASoC: adau1701: Use module_i2c_driver 2012-08-06 15:20:33 +01:00
adau1701.h ASoC: Add ADAU1701 codec driver 2011-06-16 11:24:17 +01:00
adav80x.c ASoC: Drop unused state parameter from CODEC suspend callback 2011-12-02 10:32:03 +00:00
adav80x.h ASoC: Add ADAV80x codec driver 2011-06-28 17:11:20 +01:00
ads117x.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
ak4104.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
ak4535.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
ak4535.h ASoC: ak4535: Convert to direct regmap API usage 2012-02-16 23:04:45 -08:00
ak4641.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
ak4641.h ASoC: Asahi Kasei AK4641 codec driver 2011-05-19 14:10:45 -07:00
ak4642.c ASoC: ak4642: fixup: mute needs +1 step 2012-04-05 11:08:45 +01:00
ak4671.c ASoC: ak4671: Use module_i2c_driver 2012-08-06 15:20:33 +01:00
ak4671.h
alc5623.c ASoC: alc5623: Convert to module_i2c_driver() 2012-05-08 18:46:30 +01:00
alc5623.h
alc5632.c ASoC: alc5632: Convert to devm_regmap_init_i2c() 2012-05-08 18:46:31 +01:00
alc5632.h ASoC: alc5632: Refactored DAPM routes to add voice support 2012-02-11 23:02:47 +00:00
arizona.c ASoC: arizona: Clarify logging for FLL lock status interrupt 2012-09-12 22:01:37 +08:00
arizona.h ASoC: arizona: Implement OPCLK support 2012-08-09 19:34:28 +01:00
cq93vc.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
cs42l51.c ASoC: cs42l51: Use module_i2c_driver 2012-08-06 15:20:35 +01:00
cs42l51.h
cs42l52.c ASoC: cs42l52: Remove duplicate inclusion of slab.h header file 2012-08-07 15:09:25 +01:00
cs42l52.h ASoC: Add support for CS42L52 Codec 2012-04-30 23:36:20 +01:00
cs42l73.c ASoC: cs42l73: Convert to devm_regmap_init_i2c() 2012-06-05 11:03:35 +01:00
cs42l73.h ASoC: cs42l73: Unify the way to define bits of register 2011-11-22 13:02:09 +00:00
cs4270.c ASoC: cs4270: Convert to direct regmap API usage 2012-09-11 08:16:15 +08:00
cs4271.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
cx20442.c ASoC: cx20442: add bias control over a platform provided regulator 2012-01-09 11:20:16 +00:00
cx20442.h
da732x_reg.h ASoC: codecs: Add DA732x codec driver 2012-06-11 20:23:55 +08:00
da732x.c ASoC: da732x: Staticise non-exported symbol soc_codec_dev_da732x 2012-06-23 12:11:29 +01:00
da732x.h ASoC: codecs: Add DA732x codec driver 2012-06-11 20:23:55 +08:00
da7210.c ASoC: da7210: Minor improvements and a bugfix 2012-05-03 18:53:52 +01:00
dfbmcs320.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
dmic.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
isabelle.c ASoC: isabelle: Remove version.h header file inclusion 2012-08-03 23:03:55 +01:00
isabelle.h ASoC: Support TI Isabelle Audio driver 2012-06-05 10:42:57 +01:00
jz4740.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
Kconfig ASoC: wm0010: Add initial wm0010 DSP driver 2012-08-23 16:12:12 +01:00
l3.c
lm4857.c ASoC: lm4857: Use module_i2c_driver 2012-08-06 15:20:33 +01:00
lm49453.c ASoC: lm59453: Unconstify dai_driver 2012-06-05 11:34:35 +01:00
lm49453.h ASoC: Support TI LM49453 Audio driver 2012-04-01 11:35:41 +01:00
Makefile ASoC: wm0010: Add initial wm0010 DSP driver 2012-08-23 16:12:12 +01:00
max9768.c ASoC: max9768: Fix build and use new add control API. 2012-02-06 16:52:16 +00:00
max9850.c ASoC: max9850: Use module_i2c_driver 2012-08-06 15:20:33 +01:00
max9850.h
max9877.c ASoC: max9877: Use module_i2c_driver 2012-08-06 15:20:31 +01:00
max9877.h
max98088.c ASoC: max98088: Use module_i2c_driver 2012-08-06 15:20:34 +01:00
max98088.h ASoC: codecs: max98088: Added digital mute function in DAI1 and DAI2 2011-05-15 21:26:36 -07:00
max98095.c ASoC: max98095: Use module_i2c_driver 2012-08-06 15:20:35 +01:00
max98095.h ASoC: max98095: add jack detection 2012-04-01 11:28:24 +01:00
mc13783.c ASoC: Revert "ASoC: mc13783: Provide codec->control_data" 2012-09-11 11:26:02 +08:00
mc13783.h ASoC: Add mc13783 codec 2012-05-18 16:42:20 +01:00
ml26124.c ASoC: ml26124: Convert to devm_regmap_init_i2c 2012-06-13 17:27:27 +08:00
ml26124.h ASoC: Add LAPIS Semiconductor ML26124 driver 2012-04-01 11:28:28 +01:00
omap-hdmi.c ASoC: OMAP: HDMI: Introduce codec 2012-05-18 17:31:24 +01:00
pcm3008.c ASoC: Drop unused state parameter from CODEC suspend callback 2011-12-02 10:32:03 +00:00
pcm3008.h
rt5631.c ASoC: rt5631: Convert to direct regmap API usage 2012-05-09 12:54:07 +01:00
rt5631.h ASoC: Add driver for rt5631 2011-09-21 15:52:23 +01:00
sgtl5000.c ASoC: sgtl5000: enable VAG_POWER for LINE_IN 2012-07-31 16:40:08 +01:00
sgtl5000.h ASoC: sgtl5000: Fix define for SGTL5000_BIAS_R_MASK 2011-10-19 13:08:18 +01:00
sigmadsp.c ASoC: SigmaDSP: Add regmap support 2011-11-29 12:01:23 +00:00
sigmadsp.h ASoC: SigmaDSP: Add regmap support 2011-11-29 12:01:23 +00:00
sn95031.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
sn95031.h
spdif_receiver.c ASoC: spdif_receiver: Add support for spdif in Audio Codec 2012-06-28 13:15:10 +01:00
spdif_transciever.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
ssm2602.c ASoC: SSM2602: Convert to direct regmap API usage 2012-04-25 11:28:10 +01:00
ssm2602.h ASoC: ssm2602: Support setting the oscillator and the clock output state 2011-09-27 13:30:48 +01:00
sta32x.c ASoC: sta32x: Convert to regmap 2012-09-10 17:26:10 +08:00
sta32x.h ASoC: sta32x: preserve coefficient RAM 2011-11-14 21:32:12 +00:00
sta529.c ASoC: sta529: Staticise non-exported codec driver struct 2012-08-03 23:04:01 +01:00
stac9766.c Revert "ASoC: AC97 doesn't use regmap by default" 2012-09-11 11:26:03 +08:00
stac9766.h
tlv320aic3x.c ASoC: tlv320aic3x: Add device tree bindings 2012-08-27 10:25:58 -07:00
tlv320aic3x.h Merge branch 'for-3.5' into for-3.6 2012-07-23 10:45:07 +01:00
tlv320aic23.c Linux 3.4-rc7 2012-05-13 13:32:54 +01:00
tlv320aic23.h
tlv320aic26.c ASoC: tlv320aic26: Use module_spi_driver 2012-08-27 09:55:27 -07:00
tlv320aic26.h Fix common misspellings 2011-03-31 11:26:23 -03:00
tlv320aic32x4.c ASoC: tlv320aic32x4: Use module_i2c_driver 2012-08-06 15:20:30 +01:00
tlv320aic32x4.h
tlv320dac33.c ASoC: tlv320dac33: Use module_i2c_driver 2012-08-06 15:20:32 +01:00
tlv320dac33.h ASoC: tlv320dac33: Update e-mail address 2011-05-11 16:12:35 +01:00
tpa6130a2.c ASoC: tpa6130a2: Use module_i2c_driver 2012-08-06 15:20:36 +01:00
tpa6130a2.h ASoC: tpa6130a2: Update e-mail address 2011-05-11 16:12:45 +01:00
twl4030.c ASoC: Avoid recalculating the bitmask for SOC_ENUM controls 2012-09-18 22:51:23 -04:00
twl6040.c MFD bits for the 3.6 merge window. 2012-07-30 12:41:17 -07:00
twl6040.h ASoC: twl6040 - add method to query HS DC offset step size in mV 2012-01-20 13:58:26 +00:00
uda134x.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
uda134x.h
uda1380.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
uda1380.h
wl1273.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
wl1273.h
wm0010.c ASoC: wm0010: Fix warning, use format %zu for type size_t 2012-09-06 06:22:56 +08:00
wm1250-ev1.c ASoC: wm1250-ev1: Flag all supported rates in the DAI 2012-07-05 20:49:37 +01:00
wm2000.c ASoC: wm2000: Use module_i2c_driver 2012-08-06 15:20:34 +01:00
wm2000.h ASoC: Convert WM2000 into a standard CODEC driver 2011-12-03 21:35:21 +00:00
wm2200.c ASoC: dapm: Add flags to regulator supplies 2012-09-08 08:47:28 +08:00
wm2200.h ASoC: wm2200: Add WM2200 CODEC driver 2012-01-26 16:07:55 +00:00
wm5100-tables.c ASoC: codecs: Refresh copyrights for Wolfson drivers 2012-06-03 13:06:37 +01:00
wm5100.c ASoC: dapm: Add flags to regulator supplies 2012-09-08 08:47:28 +08:00
wm5100.h ASoC: Update regmap access for WM5100 DSP control registers 2012-04-23 18:52:31 +01:00
wm5102.c ASoC: dapm: Add flags to regulator supplies 2012-09-08 08:47:28 +08:00
wm5102.h ASoC: wm5102: Initial driver 2012-06-23 12:11:47 +01:00
wm5110.c ASoC: dapm: Add flags to regulator supplies 2012-09-08 08:47:28 +08:00
wm5110.h ASoC: wm5110: Add audio CODEC driver 2012-07-11 11:00:26 +01:00
wm8350.c ASoC: wm8350: Convert to direct regmap API usage 2012-06-03 13:33:53 +01:00
wm8350.h
wm8400.c ASoC: codecs: Refresh copyrights for Wolfson drivers 2012-06-03 13:06:37 +01:00
wm8400.h
wm8510.c ASoC: wm8510: Convert to direct regmap API usage 2012-09-12 14:09:05 +08:00
wm8510.h
wm8523.c ASoC: wm8523: Move device ID verification and reset to I2C probe 2012-09-10 17:25:47 +08:00
wm8523.h
wm8580.c ASoC: wm8580: Move regulator acquisition to I2C probe 2012-09-12 14:09:18 +08:00
wm8580.h
wm8711.c ASoC: wm8711: Convert to direct regmap API usage 2012-09-12 14:09:19 +08:00
wm8711.h
wm8727.c ASoC: Remove unused -codec from Wolfson device driver names 2011-12-03 21:35:01 +00:00
wm8728.c ASoC: wm8728: Convert to direct regmap API usage 2012-09-12 14:09:37 +08:00
wm8728.h
wm8731.c ASoC: codecs: Refresh copyrights for Wolfson drivers 2012-06-03 13:06:37 +01:00
wm8731.h
wm8737.c ASoC: wm8737: Convert to direct regmap API usage 2012-09-12 14:09:38 +08:00
wm8737.h
wm8741.c ASoC: wm8741: Convert to direct regmap API usage 2012-09-10 18:04:42 +08:00
wm8741.h
wm8750.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
wm8750.h
wm8753.c ASoC: codecs: Refresh copyrights for Wolfson drivers 2012-06-03 13:06:37 +01:00
wm8753.h
wm8770.c ASoC: wm8770: Use module_spi_driver 2012-08-27 09:55:28 -07:00
wm8770.h
wm8776.c ASoC: codecs: Refresh copyrights for Wolfson drivers 2012-06-03 13:06:37 +01:00
wm8776.h
wm8782.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
wm8804.c ASoC: codecs: Refresh copyrights for Wolfson drivers 2012-06-03 13:06:37 +01:00
wm8804.h
wm8900.c ASoC: wm8900: Fix typo of name to wm9700 2012-09-11 11:26:05 +08:00
wm8900.h
wm8903.c ASoC: wm8903: Use module_i2c_driver 2012-08-06 15:20:35 +01:00
wm8903.h
wm8904.c ASoC: wm8904: remove redundant code 2012-09-10 18:07:20 +08:00
wm8904.h ASoC: Optimise performance of WM8904 ADC 128fs OSR mode 2012-01-20 13:58:26 +00:00
wm8940.c ASoC: wm8940: Use module_i2c_driver 2012-08-06 15:20:34 +01:00
wm8940.h
wm8955.c ASoC: wm8955: Use module_i2c_driver 2012-08-06 15:20:34 +01:00
wm8955.h
wm8958-dsp2.c ASoC: wm_hubs: Move CODEC stored in private data into wm_hubs 2012-08-03 23:03:56 +01:00
wm8960.c ASoC: wm8960: add support for big-endian audio samples 2012-09-18 22:32:44 -04:00
wm8960.h
wm8961.c ASoC: wm8961: Use module_i2c_driver 2012-08-06 15:20:34 +01:00
wm8961.h
wm8962.c ASoC: wm8962: Don't duplicate bias level management in resume 2012-08-09 14:11:10 +01:00
wm8962.h
wm8971.c ASoC: wm8971: Use module_i2c_driver 2012-08-06 15:20:33 +01:00
wm8971.h
wm8974.c ASoC: wm8974: Use module_i2c_driver 2012-08-06 15:20:35 +01:00
wm8974.h
wm8978.c ASoC: wm8978: Use module_i2c_driver 2012-08-06 15:20:33 +01:00
wm8978.h ASoC: Convert wm8978 to direct regmap API usage 2012-01-20 13:58:19 +00:00
wm8983.c ASoC: wm8983: Convert to direct regmap API usage 2012-09-10 16:00:09 +08:00
wm8983.h ASoC: WM8983: Initial driver 2011-07-15 23:39:53 +09:00
wm8985.c ASoC: wm8985: Convert to direct regmap API usage 2012-01-21 21:15:42 +00:00
wm8985.h
wm8988.c ASoC: codecs: Remove rtd->codec usage from CODEC drivers 2012-04-04 15:59:12 +01:00
wm8988.h
wm8990.c ASoC: wm8990: Convert to devm_kzalloc() 2012-09-12 09:36:49 +08:00
wm8990.h
wm8991.c ASoC: wm8991: Convert to devm_kzalloc() 2012-09-12 09:36:50 +08:00
wm8991.h
wm8993.c ASoC: wm_hubs: Allow configuration of MICBIAS power up delay via pdata 2012-08-22 19:00:37 +01:00
wm8993.h ASoC: wm_hubs: Clamp inputs to VMID while we ramp 2012-02-11 23:11:21 +00:00
wm8994.c Merge branch 'asoc-omap' into for-3.7 2012-09-05 20:05:11 +08:00
wm8994.h ASoC: wm8994: Ensure we get a notification on startup for jackdet 2012-08-03 23:03:56 +01:00
wm8995.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8995.h
wm8996.c ASoC: dapm: Add flags to regulator supplies 2012-09-08 08:47:28 +08:00
wm8996.h ASoC: Disable register synchronisation for low frequency WM8996 SYSCLK 2012-01-20 13:54:34 +00:00
wm9081.c ASoC: codecs: Refresh copyrights for Wolfson drivers 2012-06-03 13:06:37 +01:00
wm9081.h
wm9090.c ASoC: wm9090: Use module_i2c_driver 2012-08-06 15:20:32 +01:00
wm9090.h
wm9705.c ASoC: wm9705: Fix build due to removal of 'runtime' definition 2012-04-11 11:43:19 +01:00
wm9705.h
wm9712.c Revert "ASoC: AC97 doesn't use regmap by default" 2012-09-11 11:26:03 +08:00
wm9712.h
wm9713.c Revert "ASoC: AC97 doesn't use regmap by default" 2012-09-11 11:26:03 +08:00
wm9713.h
wm_hubs.c ASoC: wm_hubs: Allow configuration of MICBIAS power up delay via pdata 2012-08-22 19:00:37 +01:00
wm_hubs.h ASoC: wm_hubs: Allow configuration of MICBIAS power up delay via pdata 2012-08-22 19:00:37 +01:00