Merge tag 'asoc-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound...
authorTakashi Iwai <tiwai@suse.de>
Mon, 5 Mar 2012 14:07:33 +0000 (15:07 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 5 Mar 2012 14:07:33 +0000 (15:07 +0100)
This has been a very active release for ASoC, as well as the usual raft
of bugfixes and driver updates there's quite a few framework enhancements.
Most are either small or are laying the groundwork for user visible
features (especially dynamic PCM), the most directly visible change is
the dmaengine library.  There's also a bunch of regmap API enhancements
pulled into the tree so that either the framework or drivers can take
advantage of the new features.

Changes include:

- Support for widgets not associated with a CODEC, an important part of
  the dynamic PCM framework.

- A library factoring out the common code shared by dmaengine based DMA
  drivers contributed by Lars-Peter Clausen.  This will save a lot of
  code and make it much easier to deploy enhancements to dmaengine.

- Support for binary controls, used for providing runtime configuration
  of algorithm coefficients.

- A new DAPM widget type for regulator supplies allowing drivers for
  devices that can power down unused supplies while active to do without
  any per-driver code.

- DAPM widgets for DAIs, initially giving a speed boost for playback
  startup and shutdown and also the basis for CODEC<->CODEC DAI link
  support.

- Support for specifying the number of significant bits on audio
  interfaces, useful for allowing applications to know how much effort to
  put into generating data for a larger sample format.

- Conversion of the FSI driver used on some SH processors to DMAEngine.

- New CODEC drivers for Maxim MAX9768 and Wolfson Microelectronics WM2200.

1  2 
arch/arm/mach-omap2/board-4430sdp.c
arch/arm/mach-omap2/board-omap4panda.c
sound/soc/codecs/twl6040.c

Simple merge
index eada955014af6f258c5b697710821e3af8ddc32d,28fc271f70316510b5268c2a212adcac3718fce1..1af564b0487ee1e5428d98f562a9a1562793ade7
@@@ -516,22 -479,12 +522,26 @@@ void omap4_panda_display_init(void
                omap_hdmi_init(OMAP_HDMI_SDA_SCL_EXTERNAL_PULLUP);
        else
                omap_hdmi_init(0);
+       omap_mux_init_gpio(HDMI_GPIO_LS_OE, OMAP_PIN_OUTPUT);
+       omap_mux_init_gpio(HDMI_GPIO_CT_CP_HPD, OMAP_PIN_OUTPUT);
+       omap_mux_init_gpio(HDMI_GPIO_HPD, OMAP_PIN_INPUT_PULLDOWN);
  }
  
 +static void omap4_panda_init_rev(void)
 +{
 +      if (cpu_is_omap4430()) {
 +              /* PandaBoard 4430 */
 +              /* ASoC audio configuration */
 +              panda_abe_audio_data.card_name = "PandaBoard";
 +              panda_abe_audio_data.has_hsmic = 1;
 +      } else {
 +              /* PandaBoard ES */
 +              /* ASoC audio configuration */
 +              panda_abe_audio_data.card_name = "PandaBoardES";
 +      }
 +}
 +
  static void __init omap4_panda_init(void)
  {
        int package = OMAP_PACKAGE_CBS;
                package = OMAP_PACKAGE_CBL;
        omap4_mux_init(board_mux, NULL, package);
  
-       if (wl12xx_set_platform_data(&omap_panda_wlan_data))
-               pr_err("error setting wl12xx data\n");
+       ret = wl12xx_set_platform_data(&omap_panda_wlan_data);
+       if (ret)
+               pr_err("error setting wl12xx data: %d\n", ret);
  
 +      omap4_panda_init_rev();
        omap4_panda_i2c_init();
        platform_add_devices(panda_devices, ARRAY_SIZE(panda_devices));
        platform_device_register(&omap_vwlan_device);
Simple merge