OpenCloudOS-Kernel/sound/soc/codecs
Linus Torvalds 48a46752a9 sound fixes for 3.4-rc1
A collection of small fixes for 3.4-rc1, including
 - mic-recording regression fix for Realtek codec
 - clean-up of dmaengine parameter mess
 - WM8894 calibration tweak
 - minor fixes for asihpi and some bool module parms
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
 iQIcBAABAgAGBQJPdX6XAAoJEGwxgFQ9KSmkFMcP+wTpqgoQgfcb6IMCY9KVGstd
 Uy2LgocxKSwcIv7a+OTN4WTfCJBjf045jY+coKHRhO0ybMqLIyqqeLzyCShksKdB
 PQ8+T+deIgezkhWuNdr+e+h+v39lRHQOPLiDDzEbToKryGxmx2YVbGh9b/4/oJfK
 U7oXYbMZu1RBm4btUR5jfyfC8dKMPwB0/gRG6662hw/WqkNalQyXnPvJPhl+Ky+J
 fbC2sggPlSwz6IzUdX023B7zuzUexiY3CVqZrFFskMiAEwB4xDIJ+aroQYhRSO+f
 C93EB4f3gQ0zr65n07QFIHICUogLDKdbx9GLUdfrFwoWMeKamd0YZBZNTIUEzrtc
 OkrLU5IDKxB+smjGul0SvJV/EkwYYCIx4dASoCUBORHAtAmEYrbUnHR/ga5c+i0X
 YIB5mvurSCYNZesmSzLeET6F7zS1VHbaK9qopHDrivK/ZMe90Y06D/gWuhNySHOm
 lwo4vepDG5rlDQBxVhHQGI7J1JXHBC8KI/drSROBJKb3XLIt76Qf0nmyTfRyLAqa
 xF3axkB53uiAyK9YXY2hWcOPH2klNCat9y45fQ9Z4o2wU0t74lO2VuQJzsePGWKc
 MP6cGAQ75G86jPPbsOY650AS4Lu4t4ZRDal/5q/Y+c5gLqM6ZoHI7RMmpSVa8uUS
 LTrgwwBT/V87snKMwAKW
 =cW/4
 -----END PGP SIGNATURE-----

Merge tag 'sound-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "A collection of small fixes for 3.4-rc1, including
   - mic-recording regression fix for Realtek codec
   - clean-up of dmaengine parameter mess
   - WM8894 calibration tweak
   - minor fixes for asihpi and some bool module parms"

* tag 'sound-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ALSA: fix isa/opti9xx module param type
  sound: fix oss/msnd_pinnacle module param type
  ALSA: asihpi - fix return type of hpios_locked_mem_alloc()
  ASoC: dmaengine_pcm: use dmaengine cyclic wrapper
  ASoC: Add extra parameter to device_prep_dma_cyclic
  ALSA: hda/realtek - Fix ADC assignment with a shared HP/Mic pin
  ASoC: wm8994: Update WM8994 DCS calibration
2012-03-30 10:59:52 -07:00
..
88pm860x-codec.c ASoC: Convert 88pm860x-codec to devm_kzalloc() 2011-12-27 12:58:02 +00:00
88pm860x-codec.h ASoC: add 88pm860x codec driver 2010-08-18 18:03:09 +01:00
Kconfig ASoC: max9768: add driver for max9768 amplifier 2012-01-30 21:50:55 +00:00
Makefile ASoC: max9768: add driver for max9768 amplifier 2012-01-30 21:50:55 +00:00
ac97.c ASoC: Drop unused state parameter from CODEC suspend callback 2011-12-02 10:32:03 +00:00
ad193x.c ASoC: Convert ad193x to devm_kzalloc() 2011-12-28 17:22:40 +00:00
ad193x.h ASoC: ad193x: Use snd_soc_update_bits where appropriate 2011-11-28 18:57:52 +00:00
ad1836.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
ad1836.h ASoC: Fix wrong define for AD1836_ADC_WORD_OFFSET 2011-11-22 13:06:14 +00:00
ad1980.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
ad1980.h Merge branch 'for-2.6.36' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into for-2.6.37 2010-08-15 14:56:40 +01:00
ad73311.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
ad73311.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
adau1373.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
adau1373.h ASoC: Add ADAU1373 codec support 2011-08-17 00:53:54 +09:00
adau1701.c ASoC: Set idle_bias_off flag in snd_soc_codec_driver 2012-01-27 11:22:05 +00: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: ak4104: Convert to direct regmap API usage 2012-02-23 15:14:18 +00:00
ak4535.c ASoC: ak4535: Convert to direct regmap API usage 2012-02-16 23:04:45 -08:00
ak4535.h ASoC: ak4535: Convert to direct regmap API usage 2012-02-16 23:04:45 -08:00
ak4641.c ASoC: Fix return value of ak4641_pcm_set_dai_fmt() 2012-01-02 13:08:33 +00:00
ak4641.h ASoC: Asahi Kasei AK4641 codec driver 2011-05-19 14:10:45 -07:00
ak4642.c Merge branch 'topic/asoc' into for-linus 2012-03-18 18:22:37 +01:00
ak4671.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
ak4671.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
alc5623.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
alc5623.h ASoC: add support for alc562[123] codecs 2010-10-21 13:51:13 -07:00
alc5632.c ASoC: alc5632: Allow 8kHz stream support. 2012-02-11 23:02:48 +00:00
alc5632.h ASoC: alc5632: Refactored DAPM routes to add voice support 2012-02-11 23:02:47 +00:00
cq93vc.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
cs42l51.c ASoC: Convert cs42l51 to devm_kzalloc() 2012-01-02 12:28:11 +00:00
cs42l51.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
cs42l73.c ASoC: cs42l73: Fix Output [X|A|V]SP_SCLK Sourcing Mode setting for master mode 2012-02-01 10:42:24 +00:00
cs42l73.h ASoC: cs42l73: Unify the way to define bits of register 2011-11-22 13:02:09 +00:00
cs4270.c ASoC: Remove unnecessary -codec from cs4270 driver name 2012-02-28 12:35:20 +00:00
cs4271.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
cx20442.c ASoC: cx20442: add bias control over a platform provided regulator 2012-01-09 11:20:16 +00:00
cx20442.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
da7210.c ASoC: da7210: Remove extra registers from defaults list 2012-03-09 11:50:28 +00: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
jz4740.c ASoC: Convert jz4740 to devm_kzalloc() 2011-12-28 17:22:41 +00:00
l3.c
lm4857.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
max9768.c ASoC: max9768: Fix build and use new add control API. 2012-02-06 16:52:16 +00:00
max9850.c ASoC: Convert max9850 to devm_kzalloc() 2012-01-02 12:28:11 +00:00
max9850.h ASoC: Add MAX9850 codec driver 2011-03-11 12:01:44 +00:00
max9877.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
max9877.h
max98088.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00: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: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
max98095.h ASoC: Add EQ and filter to max98095 CODEC driver 2011-04-20 13:50:41 +01:00
pcm3008.c ASoC: Drop unused state parameter from CODEC suspend callback 2011-12-02 10:32:03 +00:00
pcm3008.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
rt5631.c ASoC: Convert rt5631 to devm_kzalloc() 2012-01-02 12:28:12 +00:00
rt5631.h ASoC: Add driver for rt5631 2011-09-21 15:52:23 +01:00
sgtl5000.c ASoC: sgtl5000: It's sgtl5000 not sgtl500 2012-01-23 10:16:31 +00: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 ASoC: sn95031: Add support for reading mic bias 2011-02-09 22:32:53 +00:00
spdif_transciever.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
ssm2602.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00: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: Optimize the array work to find rate_min and rate_max 2012-01-03 21:18:32 +00:00
sta32x.h ASoC: sta32x: preserve coefficient RAM 2011-11-14 21:32:12 +00:00
stac9766.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
stac9766.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
tlv320aic3x.c ASoC: tlv320aic3x: Remove even more unused code 2012-02-07 11:17:58 +00:00
tlv320aic3x.h ASoC: tlv320aic3x: remove unused code 2012-02-06 16:44:50 +00:00
tlv320aic23.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
tlv320aic23.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
tlv320aic26.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
tlv320aic26.h Fix common misspellings 2011-03-31 11:26:23 -03:00
tlv320aic32x4.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
tlv320aic32x4.h ASoC: Add TI tlv320aic32x4 codec support. 2011-03-04 18:21:08 +00:00
tlv320dac33.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
tlv320dac33.h ASoC: tlv320dac33: Update e-mail address 2011-05-11 16:12:35 +01:00
tpa6130a2.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
tpa6130a2.h ASoC: tpa6130a2: Update e-mail address 2011-05-11 16:12:45 +01:00
twl4030.c ASoC: twl4030: Debug code cleanup 2012-02-21 09:58:47 +00:00
twl6040.c This has been a very active release for ASoC, as well as the usual raft 2012-03-05 15:07:33 +01: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: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
uda134x.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
uda1380.c ASoC: Convert uda1380 to devm_kzalloc() 2011-12-27 12:58:02 +00:00
uda1380.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wl1273.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wl1273.h ASoC: WL1273 FM radio: Fix breakage with MFD API changes 2011-01-14 12:29:40 +00:00
wm1250-ev1.c ASoC: Convert wm1250-ev1 driver to use devm_kzalloc() 2011-11-27 16:03:59 +00:00
wm2000.c ASoC: wm2000: Fix use-after-free - don't release_firmware() twice on error 2012-01-24 11:34:19 +00:00
wm2000.h ASoC: Convert WM2000 into a standard CODEC driver 2011-12-03 21:35:21 +00:00
wm2200.c ASoC: Get correct revision id for wm2200 2012-02-15 18:18:56 -08:00
wm2200.h ASoC: wm2200: Add WM2200 CODEC driver 2012-01-26 16:07:55 +00:00
wm5100-tables.c ASoC: Remove WM5100 DSP memory windows from register default data 2011-11-21 18:11:43 +00:00
wm5100.c ASoC: wm5100: Implement DRC coefficient configuration 2012-02-21 19:34:50 +00:00
wm5100.h ASoC: Convert wm5100 to direct regmap API usage 2011-11-08 14:13:50 +00:00
wm8350.c ASoC: Convert WM8350 to table based DAPM and control init 2011-12-03 21:35:10 +00:00
wm8350.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8400.c ASoC: Convert WM8400 to table based DAPM and control init 2011-12-03 21:35:11 +00:00
wm8400.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8510.c ASoC: Convert WM8510 to table based DAPM and control init 2011-12-03 21:35:12 +00:00
wm8510.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8523.c ASoC: Drop unused state parameter from CODEC suspend callback 2011-12-02 10:32:03 +00:00
wm8523.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8580.c ASoC: Fix return value of wm8580_set_sysclk() 2012-01-02 13:08:40 +00:00
wm8580.h ASoC: Automatically calculate clock ratio for WM8580 2010-08-15 14:52:12 +01:00
wm8711.c ASoC: Convert WM8711 to table based control init 2011-12-03 21:35:17 +00:00
wm8711.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8727.c ASoC: Remove unused -codec from Wolfson device driver names 2011-12-03 21:35:01 +00:00
wm8728.c ASoC: Convert WM8728 to table based control init 2011-12-03 21:35:18 +00:00
wm8728.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8731.c ASoC: Convert WM8731 to direct regmap API usage 2012-01-24 11:43:18 +00:00
wm8731.h ASoC: Support non-crystal master clocks for WM8731 2010-08-18 16:52:56 +01:00
wm8737.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8737.h ASoC: Add initial WM8737 driver 2010-11-24 11:33:12 +00:00
wm8741.c ASoC: Convert WM8741 to table based DAPM and control init 2011-12-03 21:35:14 +00:00
wm8741.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8750.c ASoC: Convert WM8750 to table based DAPM and control init 2011-12-03 21:35:16 +00:00
wm8750.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8753.c ASoC: wm8753: fix initialization 2012-03-04 14:34:44 +00:00
wm8753.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8770.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8770.h ASoC: WM8770: Initial driver 2010-11-06 11:35:39 -04:00
wm8776.c ASoC: wm8776: Add WM8775 device ID to the WM8776 2012-02-21 09:13:59 +00:00
wm8776.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8782.c ASoC: Convert CODEC drivers to module_platform_driver 2011-11-28 11:33:29 +00:00
wm8804.c ASoC: Add missing regmap_init_i2c in wm8804_i2c_probe 2012-03-06 12:22:11 +00:00
wm8804.h ASoC: WM8804: Initial driver 2010-09-30 13:32:21 -07:00
wm8900.c ASoC: Convert WM8900 to table based DAPM and control init 2011-12-09 20:28:18 +08:00
wm8900.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8903.c ASoC: Fix return value of wm8903_gpio_direction_in() and wm8903_gpio_direction_out() 2012-01-02 13:08:39 +00:00
wm8903.h Merge branch 'for-2.6.38' into for-2.6.39 2011-02-22 10:38:13 -08:00
wm8904.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8904.h ASoC: Optimise performance of WM8904 ADC 128fs OSR mode 2012-01-20 13:58:26 +00:00
wm8940.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8940.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8955.c ASoC: Convert WM8955 to table based DAPM and control init 2012-01-20 13:58:25 +00:00
wm8955.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8958-dsp2.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8960.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8960.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8961.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8961.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8962.c Merge branch 'topic/asoc' into for-linus 2012-03-18 18:22:37 +01:00
wm8962.h ASoC: Compress WM8962 register access map 2010-10-11 03:52:04 -07:00
wm8971.c ASoC: Convert wm8971 to devm_kzalloc() 2012-01-20 13:58:21 +00:00
wm8971.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8974.c ASoC: Remove wm8974 private data 2012-01-20 13:58:22 +00:00
wm8974.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8978.c ASoC: Push wm8978 reset down into the I2C probe 2012-01-20 13:58:19 +00:00
wm8978.h ASoC: Convert wm8978 to direct regmap API usage 2012-01-20 13:58:19 +00:00
wm8983.c ASoC: wm8983: Remove useless snd_kcontrol 2012-01-20 13:58:29 +00: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 ASoC: WM8985: Initial driver 2010-09-15 16:11:24 +01:00
wm8988.c ASoC: wm8988: Remove unneded -codec from driver name 2012-02-13 11:38:22 -08:00
wm8988.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8990.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8990.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm8991.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8991.h ASoC: WM8991: Add initial WM8991 driver 2011-01-17 13:50:20 +00:00
wm8993.c ASoC: wm8993: Convert to module_i2c_driver() 2012-02-17 08:15:39 -08:00
wm8993.h ASoC: wm_hubs: Clamp inputs to VMID while we ramp 2012-02-11 23:11:21 +00:00
wm8994.c sound fixes for 3.4-rc1 2012-03-30 10:59:52 -07:00
wm8994.h ASoC: wm8994: Provide VMID mode control and fix default sequence 2012-03-19 19:08:17 +00:00
wm8995.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm8995.h ASoC: Remove WM8995 write sequencer bitfield definitions 2010-12-24 11:32:45 +00:00
wm8996.c ASoC: wm8996: Add 44.1kHz support 2012-03-14 20:37:29 +00:00
wm8996.h ASoC: Disable register synchronisation for low frequency WM8996 SYSCLK 2012-01-20 13:54:34 +00:00
wm9081.c ASoC: wm9081: Use idle_bias_off 2012-02-14 18:13:06 -08:00
wm9081.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm9090.c ASoC: Show device id in the debug message 2012-02-15 22:19:55 -08:00
wm9090.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm9705.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm9705.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm9712.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm9712.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm9713.c ASoC: core: Add support for DAI and machine kcontrols. 2012-02-04 12:40:11 +00:00
wm9713.h ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
wm_hubs.c ASoC: wm_hubs: Don't actively manage LINEOUT_VMID_BUF 2012-03-19 19:08:12 +00:00
wm_hubs.h ASoC: wm_hubs: Disable cache of the DC servo calibration for WM1811 2012-03-04 01:56:47 +00:00