]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
12 years agoMerge branch 'fix/misc' into for-next
Takashi Iwai [Mon, 19 Dec 2011 10:28:09 +0000 (11:28 +0100)]
Merge branch 'fix/misc' into for-next

12 years agoMerge branch 'topic/misc' into for-next
Takashi Iwai [Mon, 19 Dec 2011 10:28:04 +0000 (11:28 +0100)]
Merge branch 'topic/misc' into for-next

12 years agoALSA: atmel/ac97c: using software reset instead hardware reset if not available
Bo Shen [Mon, 19 Dec 2011 09:57:52 +0000 (17:57 +0800)]
ALSA: atmel/ac97c: using software reset instead hardware reset if not available

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoALSA: Add missing module parameters for als300 and cs5530 drivers
Takashi Iwai [Mon, 19 Dec 2011 09:32:48 +0000 (10:32 +0100)]
ALSA: Add missing module parameters for als300 and cs5530 drivers

These drviers defined only variables but didn't declare as module
parameters.  Also fix the enable variable to bool type.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoALSA: module_param: make bool parameters really bool
Rusty Russell [Thu, 15 Dec 2011 03:19:36 +0000 (13:49 +1030)]
ALSA: module_param: make bool parameters really bool

module_param(bool) used to counter-intuitively take an int.  In
fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy
trick.

It's time to remove the int/unsigned int option.  For this version
it'll simply give a warning, but it'll break next kernel version.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'topic/asoc' into for-next
Takashi Iwai [Fri, 16 Dec 2011 06:51:12 +0000 (07:51 +0100)]
Merge branch 'topic/asoc' into for-next

12 years agoASoC: Fix compile error in sound/soc/mid-x86/sst_platform.c
Joerg Roedel [Thu, 15 Dec 2011 17:24:54 +0000 (18:24 +0100)]
ASoC: Fix compile error in sound/soc/mid-x86/sst_platform.c

The variable ret_val is used but not declared. This causes
the following compile error:

sound/soc/mid-x86/sst_platform.c: In function ‘sst_platform_open’:
sound/soc/mid-x86/sst_platform.c:274:2: error: ‘ret_val’ undeclared (first use in this function)
sound/soc/mid-x86/sst_platform.c:274:2: note: each undeclared identifier is reported only once for each function it appears in
make[1]: *** [sound/soc/mid-x86/sst_platform.o] Error 1

Fix this.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'fix/asoc' into for-linus
Takashi Iwai [Thu, 15 Dec 2011 11:56:04 +0000 (12:56 +0100)]
Merge branch 'fix/asoc' into for-linus

12 years agoMerge branch 'fix/hda' into for-next
Takashi Iwai [Thu, 15 Dec 2011 11:55:56 +0000 (12:55 +0100)]
Merge branch 'fix/hda' into for-next

12 years agoALSA: HDA: Use LPIB Position fix for Intel SCH Poulsbo
David Henningsson [Wed, 14 Dec 2011 07:52:30 +0000 (15:52 +0800)]
ALSA: HDA: Use LPIB Position fix for Intel SCH Poulsbo

Several people with this chipset have reported inconsistent/sloppy
values for position reporting when the DMA position buffer is used,
and that setting position_fix=1 have fixed their problems.

BugLink: https://bugs.launchpad.net/bugs/825709
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Wed, 14 Dec 2011 08:32:02 +0000 (09:32 +0100)]
Merge branch 'topic/hda' into for-next

12 years agoALSA: hda - Check non-snoop in a single place
Takashi Iwai [Wed, 14 Dec 2011 08:27:04 +0000 (09:27 +0100)]
ALSA: hda - Check non-snoop in a single place

Merge the checks for VIA and ATI-HDMI into a single place for better
code-flow management.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoALSA: HDA: Add support for new AMD products
Andiry Xu [Wed, 14 Dec 2011 08:10:27 +0000 (16:10 +0800)]
ALSA: HDA: Add support for new AMD products

This patch adds HDMI audio support for new AMD products. As HW default
disable snoop, force non-snoop mode in HD audio driver.

Signed-off-by: Andiry Xu <andiry.xu@amd.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoALSA: hda: remove unused quirk for inverted mute led
Gustavo Maciel Dias Vieira [Sun, 4 Dec 2011 17:14:10 +0000 (15:14 -0200)]
ALSA: hda: remove unused quirk for inverted mute led

Commit b99a776d0b17ae0f3a54e86009887a00ac4889d0 removed all effects of
the STAC92HD83* model quirk "hp". However, it left the model selection
and documentation behind, confusing users with inverted mute
leds. Completely remove this quirk and its documentation.

Signed-off-by: Gustavo Maciel Dias Vieira <gustavo@sagui.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'fix/hda' into for-next
Takashi Iwai [Tue, 13 Dec 2011 13:51:44 +0000 (14:51 +0100)]
Merge branch 'fix/hda' into for-next

12 years agoALSA: hda: fix mute led polarity for HP laptops with buggy BIOS
Gustavo Maciel Dias Vieira [Tue, 13 Dec 2011 13:47:22 +0000 (11:47 -0200)]
ALSA: hda: fix mute led polarity for HP laptops with buggy BIOS

Some HP laptop models do not have a properly filled OEM string used
to set the gpio and polarity of the mute led. Make the mute led
configuration work for this case.

Signed-off-by: Gustavo Maciel Dias Vieira <gustavo@sagui.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Tue, 13 Dec 2011 09:57:39 +0000 (10:57 +0100)]
Merge branch 'topic/hda' into for-next

12 years agoALSA: hda - GPIO to control mute LED may be enabled on HP systems with no such HW
Vitaliy Kulikov [Mon, 12 Dec 2011 23:35:13 +0000 (17:35 -0600)]
ALSA: hda - GPIO to control mute LED may be enabled on HP systems with no such HW

This may lead to problems (like loss of sound) as GPIO pin may be used
for different function (SPDIF OUT, EAPD etc) on those systems. This patch
disables default mute LED GPIO configuration on all new codecs as all new
HP systems are expected to provide explicit mute LED configuration in SMBIOS.

Signed-off-by: Vitaliy Kulikov <Vitaliy.Kulikov@idt.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'topic/asoc' into for-next
Takashi Iwai [Tue, 13 Dec 2011 09:02:35 +0000 (10:02 +0100)]
Merge branch 'topic/asoc' into for-next

12 years agoASoC: Rename ALC5632 MICBIAS to common name convention.
Leon Romanovsky [Mon, 12 Dec 2011 19:43:45 +0000 (21:43 +0200)]
ASoC: Rename ALC5632 MICBIAS to common name convention.

Signed-off-by: Leon Romanovsky <leon@leon.nu>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'topic/cache' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Tue, 13 Dec 2011 05:26:25 +0000 (13:26 +0800)]
Merge branch 'topic/cache' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into for-3.3

12 years agoregmap: Move initialization of regcache related fields to regcache_init
Lars-Peter Clausen [Wed, 16 Nov 2011 15:28:16 +0000 (16:28 +0100)]
regmap: Move initialization of regcache related fields to regcache_init

Move the initialization regcache related fields of the regmap struct to
regcache_init. This allows us to keep regmap and regcache code better
separated.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Staticise alchemy_pcm_soc_platform
Axel Lin [Tue, 13 Dec 2011 02:15:40 +0000 (10:15 +0800)]
ASoC: Staticise alchemy_pcm_soc_platform

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Staticise au1xpsc_soc_platform
Axel Lin [Tue, 13 Dec 2011 02:14:30 +0000 (10:14 +0800)]
ASoC: Staticise au1xpsc_soc_platform

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Staticise rx51_aux_dev
Axel Lin [Tue, 13 Dec 2011 02:13:13 +0000 (10:13 +0800)]
ASoC: Staticise rx51_aux_dev

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove rbtree register cache
Mark Brown [Thu, 10 Nov 2011 17:39:40 +0000 (17:39 +0000)]
ASoC: Remove rbtree register cache

All users now use regmap directly so delete the ASoC version of the code.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove WM8994 register cache
Mark Brown [Tue, 25 Oct 2011 14:13:12 +0000 (16:13 +0200)]
ASoC: Remove WM8994 register cache

Now that the mfd is using the register map cache there's no need for the
CODEC driver to do any register cache management or any funny dances to
interact with the other drivers using the device so just remove the cache
initialisation and volatility information.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove ASoC-specific WM8994 I/O code
Mark Brown [Sun, 24 Jul 2011 11:49:52 +0000 (12:49 +0100)]
ASoC: Remove ASoC-specific WM8994 I/O code

Just go directly to the regmap API, saving code and making integration
that bit more direct.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'mfd/wm8994' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Mon, 12 Dec 2011 16:19:20 +0000 (00:19 +0800)]
Merge branch 'mfd/wm8994' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc into for-3.3

12 years agomfd: Convert wm8994 to use generic regmap irq_chip
Mark Brown [Tue, 25 Oct 2011 08:19:04 +0000 (10:19 +0200)]
mfd: Convert wm8994 to use generic regmap irq_chip

Factor out the irq_chip implementation, substantially reducing the code
size for the driver.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agoMerge branch 'topic/irq' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Mon, 12 Dec 2011 16:12:48 +0000 (00:12 +0800)]
Merge branch 'topic/irq' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into wm8994-mfd

12 years agomfd: Mark WM1811 GPIO6 register volatile for later revisions
Mark Brown [Thu, 1 Dec 2011 13:55:49 +0000 (13:55 +0000)]
mfd: Mark WM1811 GPIO6 register volatile for later revisions

For later chip revisions the WM1811 GPIO6 register is always volatile so
store the device revision when initialising the driver and then check at
runtime if we're running on a newer device.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Add missing mutex.h inclusion to WM8994 core.h
Mark Brown [Thu, 1 Dec 2011 13:53:18 +0000 (13:53 +0000)]
mfd: Add missing mutex.h inclusion to WM8994 core.h

struct wm8994 includes a mutex so we need to include mutex.h before we
declare it. All current users rely on this being done implicitly.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Add WM1811A device ID to wm8994 driver
Mark Brown [Wed, 30 Nov 2011 20:16:42 +0000 (20:16 +0000)]
mfd: Add WM1811A device ID to wm8994 driver

The WM1811A is a variant of the WM1811 with pin configuration changes.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Correct revision display for WM1811 revision D
Mark Brown [Wed, 30 Nov 2011 16:51:04 +0000 (16:51 +0000)]
mfd: Correct revision display for WM1811 revision D

As WM1811 revision C was transparent to software the revision IDs for
subsequent revisions are one less than they would normally be. Correct
for this in log messages.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Constify WM8994 regulator_init_data
Mark Brown [Mon, 28 Nov 2011 18:48:14 +0000 (18:48 +0000)]
mfd: Constify WM8994 regulator_init_data

The driver has no need to modify the regulator_init_data so declare it
const to allow machine code to do so.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Initialise WM8994 register cache after reading chip ID registers
Mark Brown [Sat, 3 Dec 2011 17:10:32 +0000 (17:10 +0000)]
mfd: Initialise WM8994 register cache after reading chip ID registers

The different devices handled by the WM8994 can be distinguished using
their ID registers so we don't need to rely on the user having registered
the device correctly. Instead do the initial regmap setup with a minimal
configuration only supporting physical I/O and then configure the cache
once we have identified the device.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Enable register cache for wm8994 devices
Mark Brown [Tue, 25 Oct 2011 12:23:53 +0000 (14:23 +0200)]
mfd: Enable register cache for wm8994 devices

As part of this we provide information about the registers that exist in
the device to the regmap core, drop the small amount of cache that the
core had been using and let regmap do the sync.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agoMerge branch 'topic/cache' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Mon, 12 Dec 2011 16:10:45 +0000 (00:10 +0800)]
Merge branch 'topic/cache' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into HEAD

12 years agomfd: Add wm8994 register access and default information
Mark Brown [Fri, 19 Aug 2011 09:37:58 +0000 (18:37 +0900)]
mfd: Add wm8994 register access and default information

Describe the register map to the regmap core so that we can use its
diagnostic features and cache support.  This is split out from the patch
using it due to the size so that the actual code change is a bit clearer.

As the various devices are supersets of each other the access maps are
built up by layering the functions on top of each other, though the
interface for specifying the register defaults isn't currently amenable
to this.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Define some additional wm8994 registers
Mark Brown [Tue, 25 Oct 2011 13:44:12 +0000 (15:44 +0200)]
mfd: Define some additional wm8994 registers

Add a bunch of definitions for wm8994 registers that are not currently
used by software.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Don't hard code the reset value for WM8994 devices
Mark Brown [Tue, 25 Oct 2011 11:25:43 +0000 (13:25 +0200)]
mfd: Don't hard code the reset value for WM8994 devices

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Disable more pulls on WM8994
Mark Brown [Thu, 3 Nov 2011 13:20:38 +0000 (13:20 +0000)]
mfd: Disable more pulls on WM8994

Disable more pulls by default on WM8994 for a small current saving. Since
some designs do leave SPKMODE floating provide platform data to allow that
to be left enabled.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Convert wm8994 to devm_kzalloc()
Mark Brown [Tue, 25 Oct 2011 11:45:40 +0000 (13:45 +0200)]
mfd: Convert wm8994 to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Add basic device tree binding for wm8994
Mark Brown [Tue, 22 Nov 2011 18:22:29 +0000 (18:22 +0000)]
mfd: Add basic device tree binding for wm8994

Add a placeholder device tree binding for the wm8994 driver. At present
the binding is essentially null as none of the platform data is supported,
and at least some of that will depend on the pending regulator bindings.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Remove some unused functions in wm8894-irq
Mark Brown [Mon, 24 Oct 2011 13:05:19 +0000 (15:05 +0200)]
mfd: Remove some unused functions in wm8894-irq

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Oritz <sameo@linux.intel.com>
12 years agoMerge branch 'topic/misc' into for-next
Takashi Iwai [Mon, 12 Dec 2011 11:49:20 +0000 (12:49 +0100)]
Merge branch 'topic/misc' into for-next

12 years agoALSA: snd-usb: added VOX ToneLab ST midi handling
Sergiusz Urbaniak [Mon, 5 Dec 2011 19:27:46 +0000 (20:27 +0100)]
ALSA: snd-usb: added VOX ToneLab ST midi handling

Signed-off-by: Sergiusz Urbaniak <sergiusz.urbaniak@googlemail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Mon, 12 Dec 2011 11:48:16 +0000 (12:48 +0100)]
Merge branch 'topic/hda' into for-next

12 years agoALSA: HDA: Realtek: Take vmaster dac from multiout dac list
David Henningsson [Fri, 9 Dec 2011 10:27:42 +0000 (18:27 +0800)]
ALSA: HDA: Realtek: Take vmaster dac from multiout dac list

With the auto-parser we can choose the dac nid for vmaster from
the DACs we already know, instead of hard-coding it. This is more
future-proof and was actually wrong on one machine.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoASoC: Add missed MODULE_LICENSE("GPL") for imx-pcm-fiq
Axel Lin [Mon, 12 Dec 2011 08:01:15 +0000 (16:01 +0800)]
ASoC: Add missed MODULE_LICENSE("GPL") for imx-pcm-fiq

This driver can be built as module and the file header indicates that
the driver is published under the GPL.
Thus add MODULE_LICENSE("GPL") for it.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'fix/hda' into for-next
Takashi Iwai [Mon, 12 Dec 2011 09:56:33 +0000 (10:56 +0100)]
Merge branch 'fix/hda' into for-next

12 years agoALSA: HDA: Set position fix to LPIB for an Atom/Poulsbo based device
David Henningsson [Mon, 12 Dec 2011 06:01:17 +0000 (14:01 +0800)]
ALSA: HDA: Set position fix to LPIB for an Atom/Poulsbo based device

For the Asus 1101HA, reporting position by reading the DMA position
buffer map seems unstable and often wrong. The reporter says that
position_fix=LPIB works much better (although not 100%, but this is
probably due to other issues).

The controller chip is an Intel Poulsbo 8086:811b (rev 07) controller,
and complete alsa-info is available here:
https://launchpadlibrarian.net/86691768/alsa-info.txt.1TNwyE5Ea7

Cc: stable@kernel.org (3.0+)
BugLink: http://bugs.launchpad.net/bugs/825709
Tested-by: Stefano Lodi
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoASoC: Raise Speyside audio system clock rate to 512fs
Mark Brown [Sun, 11 Dec 2011 03:31:22 +0000 (11:31 +0800)]
ASoC: Raise Speyside audio system clock rate to 512fs

To support advanced system functionality for additional components; the
actively used clocks will remain the same for current components. Also
factor the rate out to a single #define while we're at it.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'for-3.2' into for-3.3
Mark Brown [Mon, 12 Dec 2011 04:59:06 +0000 (12:59 +0800)]
Merge branch 'for-3.2' into for-3.3

12 years agoASoC: Fix hx4700 error handling to free gpios if snd_soc_register_card fails
Axel Lin [Mon, 12 Dec 2011 03:26:00 +0000 (11:26 +0800)]
ASoC: Fix hx4700 error handling to free gpios if snd_soc_register_card fails

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: WM8958: correctly show firmware magic on mismatch
Jonathan Neuschäfer [Sun, 11 Dec 2011 18:15:49 +0000 (19:15 +0100)]
ASoC: WM8958: correctly show firmware magic on mismatch

Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'for-3.2' into for-3.3
Mark Brown [Sun, 11 Dec 2011 03:24:44 +0000 (11:24 +0800)]
Merge branch 'for-3.2' into for-3.3

Conflicts:
sound/soc/mxs/mxs-pcm.c

12 years agoASoC: Fix an obvious copy paste error in an error message
Lothar Waßmann [Fri, 9 Dec 2011 13:16:29 +0000 (14:16 +0100)]
ASoC: Fix an obvious copy paste error in an error message

The message was obviously copied from soc_init_codec_debugfs()

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: mxs: Add appropriate MODULE_ALIAS()
Lothar Waßmann [Fri, 9 Dec 2011 13:38:12 +0000 (14:38 +0100)]
ASoC: mxs: Add appropriate MODULE_ALIAS()

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: mxs: Add missing MODULE_LICENSE("GPL")
Lothar Waßmann [Fri, 9 Dec 2011 13:38:11 +0000 (14:38 +0100)]
ASoC: mxs: Add missing MODULE_LICENSE("GPL")

The sound driver refuses to load as module, because of the missing
MODULE_LICENSE("GPL").
The file header indicates that the driver is indeed published under
the GPL.

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'for-3.2' into for-3.3
Mark Brown [Sat, 10 Dec 2011 19:01:33 +0000 (03:01 +0800)]
Merge branch 'for-3.2' into for-3.3

12 years agoASoC: Fix WM8996 24.576MHz clock operation
Mark Brown [Sat, 10 Dec 2011 12:38:32 +0000 (20:38 +0800)]
ASoC: Fix WM8996 24.576MHz clock operation

Record the clock after the divider as that is what all SYSCLK users see.
Without this the other clock configuration in the device comes out at
half rate.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@kernel.org
12 years agoASoC: Convert wm8770 to devm_kzalloc()
Mark Brown [Thu, 8 Dec 2011 08:24:16 +0000 (16:24 +0800)]
ASoC: Convert wm8770 to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Fix comments for disabling amplifier and PGA
Axel Lin [Fri, 9 Dec 2011 10:43:20 +0000 (18:43 +0800)]
ASoC: Fix comments for disabling amplifier and PGA

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert WM8900 to table based DAPM and control init
Mark Brown [Thu, 8 Dec 2011 08:53:47 +0000 (16:53 +0800)]
ASoC: Convert WM8900 to table based DAPM and control init

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert WM8804 to table based control init
Mark Brown [Thu, 8 Dec 2011 08:52:19 +0000 (16:52 +0800)]
ASoC: Convert WM8804 to table based control init

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Make WM8770 SPI usage unconditional
Mark Brown [Thu, 8 Dec 2011 08:46:59 +0000 (16:46 +0800)]
ASoC: Make WM8770 SPI usage unconditional

The device only supports SPI.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert WM8776 to devm_kzalloc()
Mark Brown [Thu, 8 Dec 2011 08:45:22 +0000 (16:45 +0800)]
ASoC: Convert WM8776 to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Refactor some conditions and loop in soc_bind_dai_link()
Stephen Warren [Wed, 7 Dec 2011 20:58:27 +0000 (13:58 -0700)]
ASoC: Refactor some conditions and loop in soc_bind_dai_link()

Transform some loops from:

for_each(x) {
    if (f(x)) {
        work_on(x);
    }
}

to new structure:

for_each(x) {
    if (!f(x))
        continue;

    work_on(x);
}

This will allow future modification of f(x) with less impact to the code.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Tegra: Move DAS configuration into DAS driver
Stephen Warren [Wed, 7 Dec 2011 20:58:29 +0000 (13:58 -0700)]
ASoC: Tegra: Move DAS configuration into DAS driver

Move DAS routing setup into the DAS driver itself. This removes the need
to duplicate this in each machine driver, of which we'll soon have three.

An added advantage is that the machine drivers no longer call the Tegra20-
specific DAS functions by name, so the machine driver no longer needs to
be split up into Tegra20 and Tegra30 versions.

If individual machine drivers need a different routing setup to this
default, they can still call the DAS functions to set that up.

Long-term, DAS will be a codec driver, and user-space will be able to
control its routing, possibly within constraints that the machine driver
sets up. Configuring the DAS routing from the DAS driver is a very slight
move in that direction.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: wm8960: Use snd_soc_update_bits for read-modify-write
Axel Lin [Thu, 8 Dec 2011 03:09:15 +0000 (11:09 +0800)]
ASoC: wm8960: Use snd_soc_update_bits for read-modify-write

Use snd_soc_update_bits for read-modify-write register access instead of
open-coding it using snd_soc_read and snd_soc_write

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Rely on core enabling the wm8994 with runtime PM
Mark Brown [Mon, 5 Dec 2011 15:17:36 +0000 (15:17 +0000)]
ASoC: Rely on core enabling the wm8994 with runtime PM

No need to do this in the driver now.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Take a pm_runtime reference on DAPM devices that are enabled
Mark Brown [Mon, 5 Dec 2011 15:17:06 +0000 (15:17 +0000)]
ASoC: Take a pm_runtime reference on DAPM devices that are enabled

As for PCMs take a runtime power management reference to devices that are
in a non-off bias, avoiding the need to do this in individual drivers.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use core pm_runtime callbacks for omap-mcpdm
Mark Brown [Sat, 3 Dec 2011 20:20:47 +0000 (20:20 +0000)]
ASoC: Use core pm_runtime callbacks for omap-mcpdm

Now that the core holds a pm_runtime reference to the device while the
link is active there is no need for the driver to do so.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
12 years agoASoC: Use core pm_runtime callbacks for omap-dmic
Mark Brown [Sat, 3 Dec 2011 20:20:02 +0000 (20:20 +0000)]
ASoC: Use core pm_runtime callbacks for omap-dmic

Now that the core holds a pm_runtime reference to the device while the
link is active there is no need for the driver to do so.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
12 years agoASoC: Hold runtime PM references to components of active DAIs
Mark Brown [Sat, 3 Dec 2011 20:14:31 +0000 (20:14 +0000)]
ASoC: Hold runtime PM references to components of active DAIs

Every device that implements runtime power management for DAIs is doing
it in pretty much the same way: in the startup callback they take a
runtime PM reference and then in the shutdown callback they release that
reference, keeping the device active while the DAI is active. Given the
frequency with which this is done and the obviousness of the need to keep
the device active in this period factor the code out into the core, taking
references on the device for each CPU DAI, CODEC DAI and DMA device in the
core.

As runtime PM is reference counted this shouldn't interfere with any
other reference holding by the drivers, and since (in common with the
existing implementations) we don't check for errors on enabling it
shouldn't matter if the device actually has runtime PM enabled or not.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
12 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Wed, 7 Dec 2011 16:34:50 +0000 (17:34 +0100)]
Merge branch 'topic/hda' into for-next

12 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Wed, 7 Dec 2011 16:33:09 +0000 (17:33 +0100)]
Merge branch 'fix/hda' into topic/hda

Conflicts:
sound/pci/hda/patch_realtek.c

12 years agoALSA: hda/realtek - Fix lost speaker volume controls
Takashi Iwai [Wed, 7 Dec 2011 16:20:30 +0000 (17:20 +0100)]
ALSA: hda/realtek - Fix lost speaker volume controls

When there are the same or more number of HP pins are available, HP pins
are used as the primary outputs instead of the speaker pins.  But, in
some cases (especially with ALC663 & co), some DACs are available only
with a later pin and it's assigned to a speaker, and since the driver
parses the pins from the lower NID, such a DAC was skipped eventually
without assignments.  This resulted in a regression, the missing speaker
volume control in the new parser.

As a workaround for this, now the driver retries the pin->DAC mapping
again after restoring the speaker-pins as primary.  This is still an ad
hoc fix, but it works so far for most of Realtek codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoALSA: hda/realtek - Create "Bass Speaker" for two speaker pins
Takashi Iwai [Wed, 7 Dec 2011 16:14:20 +0000 (17:14 +0100)]
ALSA: hda/realtek - Create "Bass Speaker" for two speaker pins

On systems with two speaker pins, the secondary speaker pin is mostly
assigned to a bass speaker instead of a surround.  Thus it makes more
sense to rename the control properly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoALSA: hda/realtek - Don't create extra controls with channel suffix
Takashi Iwai [Wed, 7 Dec 2011 15:55:19 +0000 (16:55 +0100)]
ALSA: hda/realtek - Don't create extra controls with channel suffix

The multiple headphone or speaker pins are usually provided to
output the same stream unlike line-out jacks (which are supposed
to be multi-channel surrounds).  Thus giving a mixer name like
"Headphone Surround" is rather confusing.  Instead, when multiple
headphone volumes are available, use index with the same "Headphone"
name.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'for-3.2' into for-3.3
Mark Brown [Wed, 7 Dec 2011 16:15:39 +0000 (00:15 +0800)]
Merge branch 'for-3.2' into for-3.3

12 years agoASoC: Convert e800_wm9712 to use gpio_request_one()
Axel Lin [Wed, 7 Dec 2011 02:03:12 +0000 (10:03 +0800)]
ASoC: Convert e800_wm9712 to use gpio_request_one()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Fix error handling in e800_init to free gpios
Axel Lin [Wed, 7 Dec 2011 02:01:30 +0000 (10:01 +0800)]
ASoC: Fix error handling in e800_init to free gpios

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert e750_wm9705 to use gpio_request_one()
Axel Lin [Wed, 7 Dec 2011 02:04:07 +0000 (10:04 +0800)]
ASoC: Convert e750_wm9705 to use gpio_request_one()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Fix a typo in s3c24xx_simtec_tlv320aic23 driver
Axel Lin [Wed, 7 Dec 2011 10:04:10 +0000 (18:04 +0800)]
ASoC: Fix a typo in s3c24xx_simtec_tlv320aic23 driver

Fix a typo introduced by commit e00c3f55
"ASoC: Convert Samsung directory to module_platform_driver".

This fixes the build error:
  CC      sound/soc/samsung/s3c24xx_simtec_tlv320aic23.o
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c: In function 'simtec_audio_tlv320aic32_driver_init':
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c:105: error: 'simtec_audio_tlv320aic32_driver' undeclared (first use in this function)
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c:105: error: (Each undeclared identifier is reported only once
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c:105: error: for each function it appears in.)
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c: In function 'simtec_audio_tlv320aic32_driver_exit':
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c:105: error: 'simtec_audio_tlv320aic32_driver' undeclared (first use in this function)
make[3]: *** [sound/soc/samsung/s3c24xx_simtec_tlv320aic23.o] Error 1
make[2]: *** [sound/soc/samsung] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2

I think we had better naming it with *driver, thus I change
it to simtec_audio_tlv320aic23_driver.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Include linux/module.h for smdk2443_wm9710
Axel Lin [Wed, 7 Dec 2011 09:52:19 +0000 (17:52 +0800)]
ASoC: Include linux/module.h for smdk2443_wm9710

Include linux/module.h to fix below build error:
  CC      sound/soc/samsung/smdk2443_wm9710.o
sound/soc/samsung/smdk2443_wm9710.c:64: error: expected declaration specifiers or '...' before string constant
sound/soc/samsung/smdk2443_wm9710.c:64: warning: data definition has no type or storage class
sound/soc/samsung/smdk2443_wm9710.c:64: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR'
sound/soc/samsung/smdk2443_wm9710.c:64: warning: function declaration isn't a prototype
sound/soc/samsung/smdk2443_wm9710.c:65: error: expected declaration specifiers or '...' before string constant
sound/soc/samsung/smdk2443_wm9710.c:65: warning: data definition has no type or storage class
sound/soc/samsung/smdk2443_wm9710.c:65: warning: type defaults to 'int' in declaration of 'MODULE_DESCRIPTION'
sound/soc/samsung/smdk2443_wm9710.c:65: warning: function declaration isn't a prototype
sound/soc/samsung/smdk2443_wm9710.c:66: error: expected declaration specifiers or '...' before string constant
sound/soc/samsung/smdk2443_wm9710.c:66: warning: data definition has no type or storage class
sound/soc/samsung/smdk2443_wm9710.c:66: warning: type defaults to 'int' in declaration of 'MODULE_LICENSE'
sound/soc/samsung/smdk2443_wm9710.c:66: warning: function declaration isn't a prototype
make[3]: *** [sound/soc/samsung/smdk2443_wm9710.o] Error 1
make[2]: *** [sound/soc/samsung] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Fix a typo in jive_wm8750
Axel Lin [Wed, 7 Dec 2011 09:44:47 +0000 (17:44 +0800)]
ASoC: Fix a typo in jive_wm8750

Fix a typo in jive_wm8750 that introduces below build error.
Also removes an unused err variable.

  CC      sound/soc/samsung/jive_wm8750.o
sound/soc/samsung/jive_wm8750.c: In function 'jive_wm8750_init':
sound/soc/samsung/jive_wm8750.c:104: warning: unused variable 'err'
sound/soc/samsung/jive_wm8750.c: At top level:
sound/soc/samsung/jive_wm8750.c:134: error: unknown field 'dapm_widgtets' specified in initializer
sound/soc/samsung/jive_wm8750.c:134: warning: initialization from incompatible pointer type
make[3]: *** [sound/soc/samsung/jive_wm8750.o] Error 1
make[2]: *** [sound/soc/samsung] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert Samsung I2S driver to devm_kzalloc()
Mark Brown [Sat, 3 Dec 2011 20:30:37 +0000 (20:30 +0000)]
ASoC: Convert Samsung I2S driver to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Sangbeom Kim <sbkim73@samsung.com>
12 years agoASoC: WM8903: Add of_match_table
Stephen Warren [Tue, 6 Dec 2011 21:15:41 +0000 (14:15 -0700)]
ASoC: WM8903: Add of_match_table

This allows the device to be matched against the device tree using the
compatible flag directly, as is standard, rather than falling back to
matching .id_table against the non-vendor portion of the first compatible
property value.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'topic/misc' into for-next
Takashi Iwai [Tue, 6 Dec 2011 12:27:43 +0000 (13:27 +0100)]
Merge branch 'topic/misc' into for-next

12 years agoALSA: asihp: Use kcalloc instead of kzalloc to allocate array
Thomas Meyer [Tue, 29 Nov 2011 21:08:00 +0000 (22:08 +0100)]
ALSA: asihp: Use kcalloc instead of kzalloc to allocate array

The advantage of kcalloc is, that will prevent integer overflows which could
result from the multiplication of number of elements and size and it is also
a bit nicer to read.

The semantic patch that makes this change is available
in https://lkml.org/lkml/2011/11/25/107

Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoALSA: ctxf: Use kcalloc instead of kzalloc to allocate array
Thomas Meyer [Tue, 29 Nov 2011 21:08:00 +0000 (22:08 +0100)]
ALSA: ctxf: Use kcalloc instead of kzalloc to allocate array

The advantage of kcalloc is, that will prevent integer overflows which could
result from the multiplication of number of elements and size and it is also
a bit nicer to read.

The semantic patch that makes this change is available
in https://lkml.org/lkml/2011/11/25/107

Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'topic/asoc' into for-next
Takashi Iwai [Tue, 6 Dec 2011 12:23:40 +0000 (13:23 +0100)]
Merge branch 'topic/asoc' into for-next

12 years agoMerge branch 'for-linus' into for-next
Takashi Iwai [Tue, 6 Dec 2011 12:23:34 +0000 (13:23 +0100)]
Merge branch 'for-linus' into for-next

12 years agoMerge branch 'fix/asoc' into for-linus
Takashi Iwai [Tue, 6 Dec 2011 12:22:28 +0000 (13:22 +0100)]
Merge branch 'fix/asoc' into for-linus

12 years agoALSA: hda - Fix remaining VREF mute-LED NID check in post-3.1 changes
Takashi Iwai [Tue, 6 Dec 2011 12:17:23 +0000 (13:17 +0100)]
ALSA: hda - Fix remaining VREF mute-LED NID check in post-3.1 changes

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoMerge branch 'fix/hda-idt-fix' into fix/hda
Takashi Iwai [Tue, 6 Dec 2011 12:19:25 +0000 (13:19 +0100)]
Merge branch 'fix/hda-idt-fix' into fix/hda

12 years agoALSA: hda - Fix GPIO LED setup for IDT 92HD75 codecs
Takashi Iwai [Sun, 4 Dec 2011 12:44:06 +0000 (13:44 +0100)]
ALSA: hda - Fix GPIO LED setup for IDT 92HD75 codecs

Some HP laptops with IDT 92HD75 codecs may use a GPIO > 4 for the mute
LED, but currently the driver doesn't check this properly, and confuses
the mute LED behavior.  This ended up with the silent output  on some
HP laptops due to  having another GPIO used as external amp control.

This patch fixes the problem by checking the max GPIO count and
comparing with the given value from DMI entry instead of magic fixed
value 4 and 8, and adding a new field to indicate the VREF mute-LED
behavior.

Reported-and-tested-by: Vitaliy Kulikov <Vitaliy.Kulikov@idt.com>
Cc: <stable@kernel.org> [v3.1]
Signed-off-by: Takashi Iwai <tiwai@suse.de>