10 years agoASoC: Remove DAI type information
Mark Brown [Mon, 24 Nov 2008 18:01:05 +0000]
ASoC: Remove DAI type information

DAI type information is only ever used within ASoC in order to special
case AC97 and for diagnostic purposes. Since modern CPUs and codecs
support multi function DAIs which can be configured for several modes
it is more trouble than it's worth to maintain anything other than a
flag identifying AC97 DAIs so remove the type field and replace it with
an ac97_control flag.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: TWL4030: Add helper function for output gain controls
Peter Ujfalusi [Mon, 24 Nov 2008 11:49:38 +0000]
ASoC: TWL4030: Add helper function for output gain controls

Some of the gain controls in TWL (mostly those which are associated with
the outputs) are implemented in an interesting way:
 0x0 : Power down (mute)
 0x1 : 6dB
 0x2 : 0 dB
 0x3 : -6 dB
Inverting not going to help with these.
Custom volsw and volsw_2r get/put functions to handle these gains.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: TWL4030: Add CGAIN volume control
Peter Ujfalusi [Mon, 24 Nov 2008 11:49:36 +0000]
ASoC: TWL4030: Add CGAIN volume control

Add CGAIN (Coarse gain control) to TWL4030 codec.
The range of the CGAIN is:
0 dB to 12 dB in 6 dB steps.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: TWL4030: Change the Master volume control to TLV
Peter Ujfalusi [Mon, 24 Nov 2008 11:49:35 +0000]
ASoC: TWL4030: Change the Master volume control to TLV

TWL4030 FGAIN volume control has a range:
-62 to 0 dB in 1 dB steps, 0 in the FGAIN means mute.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: TWL4030: Disable soft-volume
Peter Ujfalusi [Mon, 24 Nov 2008 06:25:45 +0000]
ASoC: TWL4030: Disable soft-volume

Keep Soft-volume disabled for now, since if it is enabled
the FGAIN volume controls are not working in the current
configuration:
CODEC_MODE:OPT_MODE = 1
OPTION:ARXR2_EN = 1
OPTION:ARXL2_EN = 1
OPTION:ARXR1_EN = 0
OPTION:ARXL1_VRX_EN = 0
RX_PATH_SEL:RXL1_SEL = 0x0 (or 0x1)
RX_PATH_SEL:RXR1_SEL = 0x0 (or 0x1)

After the patch, FGAIN volume control works.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Use supplied DAI for WM9713 rather than substream
Mark Brown [Mon, 24 Nov 2008 14:05:29 +0000]
ASoC: Use supplied DAI for WM9713 rather than substream

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoALSA: ASoC: Fix typo in snd_soc_card update documentation
Mark Brown [Fri, 21 Nov 2008 15:08:23 +0000]
ALSA: ASoC: Fix typo in snd_soc_card update documentation

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoASoC: Improve error reporting for AC97 reset failures
Mark Brown [Fri, 21 Nov 2008 14:28:49 +0000]
ASoC: Improve error reporting for AC97 reset failures

Print something a bit more verbose to help make errors a little more
obvious.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Staticise pxa2xx_pcm_ops
Mark Brown [Fri, 21 Nov 2008 14:05:48 +0000]
ASoC: Staticise pxa2xx_pcm_ops

It's not exported.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: OMAP: Fix preprocessor filled DAI name in McBSP DAI
Jarkko Nikula [Fri, 21 Nov 2008 12:31:33 +0000]
ASoC: OMAP: Fix preprocessor filled DAI name in McBSP DAI

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add Marvell Zylonite machine support
Mark Brown [Fri, 21 Nov 2008 14:01:41 +0000]
ASoC: Add Marvell Zylonite machine support

Implement support for the Marvell Zylonite PXA3xx reference platform,
supporting standard AC97 stereo and AUX interfaces together with the
auxiliary I2S interface of the WM9713.

The board has two options for the MCLK of the WM9713: either the standard
AC97 system clock can be used or the 13MHz CLK_POUT output of the PXA3xx
can be used, selected via SW15 on the board. Currently only the AC97
system clock is supported by this driver.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Merge snd_soc_ops into snd_soc_dai_ops
Mark Brown [Tue, 18 Nov 2008 22:11:38 +0000]
ASoC: Merge snd_soc_ops into snd_soc_dai_ops

Liam Girdwood's ASoC v2 work avoids having two different ops structures
for DAIs by merging the members of struct snd_soc_ops into struct
snd_soc_dai_ops, allowing per DAI configuration for everything.
Backport this change.

This paves the way for future work allowing any combination of DAIs to
be connected rather than having fixed purpose CODEC and CPU DAIs and
only allowing CODEC<->CPU interconnections.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Move DAI structure definitions into new soc-dai.h
Mark Brown [Wed, 23 Jul 2008 13:03:07 +0000]
ASoC: Move DAI structure definitions into new soc-dai.h

ASoC v2 factors most of the contents of soc.h out into separate headers,
including soc-dai.h for the DAI. Factor the existing DAI API out into
this file in order to prepare for backporting of the ASoC v2 DAI API.
Also backport some of Liam's improvements to the documentation.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: ssm2602: Update supported stream formats
Karl Beldan [Thu, 20 Nov 2008 14:39:31 +0000]
ASoC: ssm2602: Update supported stream formats

Signed-off-by: Karl Beldan <karl.beldan@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: ssm2602: Fix priv substreams refs
Karl Beldan [Thu, 20 Nov 2008 14:39:27 +0000]
ASoC: ssm2602: Fix priv substreams refs

Clean up our record of the active streams in shutdown(), fixing
subsequent failures of snd_pcm_hw_constraints_complete after closure of
a stream.

NOTE:
- The ssm2602 allows pairs of non-matching PB/REC rates.
- This is a fix for less evil:
  The logic is flawed (e.g. the slave might startup before the
  master's rate and sample_bits are set).

Signed-off-by: Karl Beldan <karl.beldan@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add abbreviation to maintainers for searchability
Mark Brown [Wed, 19 Nov 2008 19:16:05 +0000]
ASoC: Add abbreviation to maintainers for searchability

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Rename snd_soc_card to snd_soc_machine
Mark Brown [Tue, 18 Nov 2008 20:50:34 +0000]
ASoC: Rename snd_soc_card to snd_soc_machine

One of the issues with the ASoC v1 API which has been addressed in the
ASoC v2 work that Liam Girdwood has done is that the ALSA card provided
by ASoC is distributed around the ASoC structures. For example, machine
wide data such as the struct snd_card are maintained as part of the
CODEC data structure, preventing the use of multiple codecs. This has
been addressed by refactoring the data structures so that all the data
for the ALSA card is contained in a single structure snd_soc_card which
replaces the existing snd_soc_machine and snd_soc_device.

Begin the process of backporting this by renaming struct snd_soc_machine
to struct snd_soc_card, better reflecting its function and bringing it
closer to standard ALSA terminology.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Convert blackfin machines to use DAI accessor functions
Mark Brown [Tue, 18 Nov 2008 22:17:49 +0000]
ASoC: Convert blackfin machines to use DAI accessor functions

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: s3c24xx_uda134x DAI accessor functions and static cleanup
Mark Brown [Tue, 18 Nov 2008 21:57:17 +0000]
ASoC: s3c24xx_uda134x DAI accessor functions and static cleanup

Missed these during review.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add support for omap2evm board
Arun KS [Wed, 19 Nov 2008 12:15:19 +0000]
ASoC: Add support for omap2evm board

This patch adds twl4030 audio support on omap2evm

Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add driver for the Lyrtech SFFSDR board
Hugo Villeneuve [Wed, 19 Nov 2008 06:37:32 +0000]
ASoC: Add driver for the Lyrtech SFFSDR board

The PCM3008 is used on the Lyrtech SFFSDR board, in conjunction with an
FPGA that generates the bit clock and the master clock

[Downgraded the rate debug print to pr_debug() in hw_params, converted
asm/gpio.h to linux/gpio.h -- broonie]

Signed-off-by: Hugo Villeneuve <hugo@hugovil.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add PCM3008 ALSA SoC driver
Hugo Villeneuve [Wed, 19 Nov 2008 06:37:31 +0000]
ASoC: Add PCM3008 ALSA SoC driver

The PCM3008 is a 16-bit stereo audio codec. It accepts
left-justified format for ADC, and right-justified format
for DAC. Independent power-down modes for ADC and DAC are
provided, as well as a digital de-emphasis filter (4 modes).

[Merged Makefile & Kconfig, changed asm/gpio.h to linux/gpio.h -- broonie]

Signed-off-by: Hugo Villeneuve <hugo@hugovil.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Remove unused snd_soc_machine_config declaration
Mark Brown [Tue, 18 Nov 2008 20:40:36 +0000]
ASoC: Remove unused snd_soc_machine_config declaration

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Move uda134x_codec.h to uda134x.h
Mark Brown [Tue, 18 Nov 2008 12:25:46 +0000]
ASoC: Move uda134x_codec.h to uda134x.h

For consistency with other ASoC codec drivers.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Blackfin: always set a default value for that GPIO range
Mike Frysinger [Tue, 18 Nov 2008 08:18:22 +0000]
ASoC: Blackfin: always set a default value for that GPIO range

Cc: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Blackfin: Simplify the MMAP_SUPPORT macros protected code
Bryan Wu [Tue, 18 Nov 2008 08:18:21 +0000]
ASoC: Blackfin: Simplify the MMAP_SUPPORT macros protected code

Cc: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Blackfin: do not force TWI bus for ssm2602 codec
Mike Frysinger [Tue, 18 Nov 2008 08:18:20 +0000]
ASoC: Blackfin: do not force TWI bus for ssm2602 codec

Cc: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Fix Blackfin AC97 DAI probe function return code
Michael Hennerich [Tue, 18 Nov 2008 08:18:19 +0000]
ASoC: Fix Blackfin AC97 DAI probe function return code

A probe function should have a clean return 0 path.

Cc: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Blackfin: Fix AD1980/1 build with MMAP support disabled
Cliff Cai [Tue, 18 Nov 2008 08:18:18 +0000]
ASoC: Blackfin: Fix AD1980/1 build with MMAP support disabled

clean up redudent code and correct building problem in non-mmap mode

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Blackfin: add multi-channel function support
Cliff Cai [Tue, 18 Nov 2008 08:18:17 +0000]
ASoC: Blackfin: add multi-channel function support

This patch provides a option for users to enable multi-channel function support
in Blackfin ASoC driver. Because Blackfin is without MMU, it is easy for us and
the user to enable this function at compiling stage not dynamically on the fly.

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: AD1980 codec: add multi-channel function support
Cliff Cai [Tue, 18 Nov 2008 08:18:16 +0000]
ASoC: AD1980 codec: add multi-channel function support

We added multi-channel function to this codec driver and Blackfin ASoC driver as well.
It was tested on Blackfin hardware.

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Blackfin: updates Kconfig for SPORT
Mike Frysinger [Tue, 18 Nov 2008 08:18:15 +0000]
ASoC: Blackfin: updates Kconfig for SPORT

tweak SPORT range for non-BF54x so we get proper behavior for BF52x parts

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: DaVinci: Fix audio stall when doing full duplex
Naresh Medisetty [Tue, 18 Nov 2008 05:31:03 +0000]
ASoC: DaVinci: Fix audio stall when doing full duplex

Fix concurrent capture/playback issue.
The issue is caused by re-initialization of control registers used specifically
for capture or playback in both capture and playback operations.

Signed-off-by: Steve Chen <schen@mvista.com>
Signed-off-by: Naresh Medisetty <naresh@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Build tlv320aic23 cleanly
Mark Brown [Mon, 17 Nov 2008 21:42:01 +0000]
ASoC: Build tlv320aic23 cleanly

Also merge down a couple of last minute style changes that got lost in the
shuffle.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Manage VMID mode for WM8990
Mark Brown [Mon, 17 Nov 2008 17:11:14 +0000]
ASoC: Manage VMID mode for WM8990

A small additional power saving can be achieved for the WM8990 by
maintaining VMID using a 2*250k divider when in standby mode.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Enable WM8990 ADC clocking workaround
Mark Brown [Mon, 17 Nov 2008 17:09:34 +0000]
ASoC: Enable WM8990 ADC clocking workaround

Enable a hardware workaround which avoids problems with the clocking of
the ADCs in certain configurations.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Allow writes to uncached registers in WM8990
Mark Brown [Mon, 17 Nov 2008 16:59:24 +0000]
ASoC: Allow writes to uncached registers in WM8990

Only fully documented registers are cached in the WM8990 but additional
registers exist.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Machine driver for for s3c24xx with uda134x
Christian Pellegrin [Sat, 15 Nov 2008 07:58:32 +0000]
ASoC: Machine driver for for s3c24xx with uda134x

Signed-off-by: Christian Pellegrin <chripell@fsfe.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: UDA134x codec driver
Christian Pellegrin [Sat, 15 Nov 2008 07:58:16 +0000]
ASoC: UDA134x codec driver

Signed-off-by: Christian Pellegrin <chripell@fsfe.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Fix for master playback/capture volume range for TWL4030 codec
Peter Ujfalusi [Fri, 14 Nov 2008 06:57:28 +0000]
ASoC: Fix for master playback/capture volume range for TWL4030 codec

FGAIN for playback is in range of 0-0x3f, while for capture GAIN it
is in the range of 0-0x1f.
The original value of 128 (0x7f) would modify the CGAIN also for
playback.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Acked-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add WM8728 codec driver
Mark Brown [Thu, 13 Nov 2008 14:33:14 +0000]
ASoC: Add WM8728 codec driver

The WM8728 is a high performance stereo DAC designed for applications
such as DVD, home theatre and digital TV.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Revert "ASoC: Add new parameter to s3c24xx_pcm_enqueue"
Mark Brown [Fri, 14 Nov 2008 14:40:46 +0000]
ASoC: Revert "ASoC: Add new parameter to s3c24xx_pcm_enqueue"

This reverts commit 8dc840f88d9c9f75f46d5dbe489242f8a114fab6.  Christian
Pellegrin <chripell@gmail.com> reported that on some systems the patch
caused DMA to fail which is much more serious than the original skipped
audio issue.  Further investigation by Dave shows that the behaviour
depends on the clock speed of the SoC - a better fix is neeeded.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: OMAP: Add more supported sample rates into McBSP DAI driver
Jarkko Nikula [Wed, 12 Nov 2008 15:05:51 +0000]
ASoC: OMAP: Add more supported sample rates into McBSP DAI driver

Originally it was put too tight limits to support only 44.1 kHz and 48 kHz
sample rates in McBSP DAI driver. Extend it now to 8 kHz - 96 kHz. With
96 kHz and 2*16 bits, bit clock is 3.072 MHz < 3.125 MHz (I2S max?).

Tested on Nokia N810 with TVL320AIC33 from rates 8 - 96 kHz and on Texas
Instruments Beagle with TWL4030 from rates 8 - 48 kHz.

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Acked-by: Steve Sakoman <steve@sakoman.com>
Acked-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Fix supported sample rates of TWL4030 audio codec
Jarkko Nikula [Wed, 12 Nov 2008 15:05:41 +0000]
ASoC: Fix supported sample rates of TWL4030 audio codec

TWL4030 currently supports rates between 8 kHz and 48 kHz and sets the codec
mode register accordingly in twl4030_hw_params. Expose this info so that
ASoC can match other rates than 44.1 kHz or 48 kHz as well.

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Acked-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: DaVinci: Audio: Fix swapping of channels at start of stereo playback
Naresh Medisetty [Wed, 12 Nov 2008 04:56:31 +0000]
ASoC: DaVinci: Audio: Fix swapping of channels at start of stereo playback

Fixes swapping of channels at start of stereo playback.

Channel swap can be observed while playing left-only or right-only audio data. The channel
swap is fixed by handling the XSYNCERR condition.

Signed-off-by: Naresh Medisetty <naresh@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add Right-Justified mode and Codec clock master to davinci-i2s
Hugo Villeneuve [Sat, 8 Nov 2008 18:26:09 +0000]
ASoC: Add Right-Justified mode and Codec clock master to davinci-i2s

The TI DVEVM board uses the SND_SOC_DAIFMT_CBM_CFM & I2S formats, but the
Lyrtech SFFSDR board uses the SND_SOC_DAIFMT_CBM_CFS & RIGHT-JUSTIFIED formats.

Signed-off-by: Hugo Villeneuve <hugo.villeneuve@lyrtech.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: s3c24xx 8 bit sound fix
Christian Pellegrin [Sat, 8 Nov 2008 07:44:16 +0000]
ASoC: s3c24xx 8 bit sound fix

fixes playing/recording of 8 bit audio files.

Generated on  20081108  against v2.6.27

Signed-off-by: Christian Pellegrin <chripell@fsfe.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: TLV320AIC23B Support more sample rates
Troy Kisky [Wed, 5 Nov 2008 18:53:28 +0000]
ASoC: TLV320AIC23B Support more sample rates

Add support for more sample rates, different crystals
and split playback/capture rates.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Acked-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoALSA: ASoC: TWL4030 codec - fix 256*Fs clock
Grazvydas Ignotas [Wed, 5 Nov 2008 21:51:05 +0000]
ALSA: ASoC: TWL4030 codec - fix 256*Fs clock

According to TRM, 256*Fs clock output should be enabled
when TWL4030 is in slave mode, not master.
This allows sound to work on OMAP3 Pandora, which uses
256*Fs clock.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Acked-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add new parameter to s3c24xx_pcm_enqueue
David Anders [Wed, 5 Nov 2008 15:39:47 +0000]
ASoC: Add new parameter to s3c24xx_pcm_enqueue

The S3C24xx dma does not allow more than one buffer to be enqueue prior to
the dma transfers starting. This patch adds an additional parameter to
s3c24xx_pcm_enqueue() to allow for passing an initial dma maximum load
value.

Signed-off-by: David Anders <danders at amltd.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Remove core version number
Mark Brown [Wed, 5 Nov 2008 11:13:21 +0000]
ASoC: Remove core version number

Rather than try to remember to keep the core version number updated
(which hasn't been happening) just remove it.  It was much more useful
when ASoC was out of tree.

Signed-off-by: Mark brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add Palm/PXA27x unified ASoC audio driver
Marek Vasut [Mon, 3 Nov 2008 12:02:12 +0000]
ASoC: Add Palm/PXA27x unified ASoC audio driver

this patch adds asoc audio driver for pxa27x based Palm PDAs. I tested it for
palmtx, t5 and ld, it should work with palmz72 as well (slapin, please test).
I sent it here some time ago, but now I got to fixing bugs in it. It should
be somehow mostly ok and ready for applying.

[Converted to use snd_soc_dapm_nc_pin() and bool Kconfig -- broonie]

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoALSA: ASoC - Remove unnecessary inclusion of linux/version.h
Takashi Iwai [Tue, 4 Nov 2008 17:06:23 +0000]
ALSA: ASoC - Remove unnecessary inclusion of linux/version.h

Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoALSA: ASoC codec: remove unused #include <version.h>
Huang Weiyi [Fri, 31 Oct 2008 14:50:00 +0000]
ALSA: ASoC codec: remove unused #include <version.h>

The file(s) below do not use LINUX_VERSION_CODE nor KERNEL_VERSION.
  sound/soc/codecs/ad73311.c

This patch removes the said #include <version.h>.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoALSA: SOC: Fix setting codec register with debugfs filesystem merge error
Troy Kisky [Mon, 3 Nov 2008 19:22:07 +0000]
ALSA: SOC: Fix setting codec register with debugfs filesystem merge error

Call device_create_file only once in snd_soc_dapm_sys_add function.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoMerge commit 'v2.6.28-rc2' into topic/asoc
Takashi Iwai [Fri, 31 Oct 2008 16:13:10 +0000]
Merge commit 'v2.6.28-rc2' into topic/asoc

10 years agoMerge branch 'topic/fix/asoc' into topic/asoc
Takashi Iwai [Fri, 31 Oct 2008 13:39:49 +0000]
Merge branch 'topic/fix/asoc' into topic/asoc

10 years agoASoC: Add audio support for the Atmel AT91SAM9G20ek board(uing wolfson 8731).
Sedji Gaouaou [Fri, 3 Oct 2008 14:58:58 +0000]
ASoC: Add audio support for the Atmel AT91SAM9G20ek board(uing wolfson 8731).

Add audio support for the Atmel AT91SAM9G20ek board(uing wolfson 8731).
It is based on the former eti_b1_wm8731.c file, using the atmel scc API.

Signed-off-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Merge AT91 and AVR32 support into a single atmel architecture
Sedji Gaouaou [Fri, 3 Oct 2008 14:57:50 +0000]
ASoC: Merge AT91 and AVR32 support into a single atmel architecture

The Ateml AT91 and AVR32 SoC share common IP for audio and can share the
same driver code using the atmel-ssc API provided for both architectures.
Do this, creating a new unified atmel ASoC architecture to replace the
previous at32 and at91 ones.

[This was contributed as a patch series for reviewability but has been
squashed down to a single commit to help preserve both the history and
bisectability.  A small bugfix from Jukka is included.]

Tested-by: Jukka Hynninen <ext-jukka.hynninen@vaisala.com>
Signed-off-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add support for Beagleboard
Steve Sakoman [Fri, 31 Oct 2008 04:55:24 +0000]
ASoC: Add support for Beagleboard

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add support for Gumstix Overo
Steve Sakoman [Fri, 31 Oct 2008 04:50:13 +0000]
ASoC: Add support for Gumstix Overo

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add support for TWL4030 audio codec
Steve Sakoman [Fri, 31 Oct 2008 04:35:26 +0000]
ASoC: Add support for TWL4030 audio codec

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoALSA: ASoC - restore removed variable declaration
Stephen Rothwell [Fri, 31 Oct 2008 03:41:06 +0000]
ALSA: ASoC - restore removed variable declaration

sound/soc/soc-dapm.c: In function 'snd_soc_dapm_sys_add':
sound/soc/soc-dapm.c:828: error: 'ret' undeclared (first use in this function)

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoALSA: ASoC - Fix a typo in Kconfig
Takashi Iwai [Thu, 30 Oct 2008 16:53:19 +0000]
ALSA: ASoC - Fix a typo in Kconfig

The last change to Kconfig ca53fb24dd21bff32c4b41b2be1035a1adfc0135
added a wrong item SND_SOC_AC97, which must be SND_SOC_AC97_CODEC.

Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoASoC: Disable automatic volume control in the CS4270 sound driver
Timur Tabi [Thu, 7 Aug 2008 16:22:32 +0000]
ASoC: Disable automatic volume control in the CS4270 sound driver

Disable the automatic volume control feature of the CS4270 audio codec.  This
feature, which is enabled by default, causes volume change commands to be
delayed.  Sometimes the volume change happens after playback is started.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Use finer grained dependencies in SND_SOC_ALL_CODECS
Mark Brown [Wed, 22 Oct 2008 21:41:11 +0000]
ASoC: Use finer grained dependencies in SND_SOC_ALL_CODECS

Move the bus dependencies in SND_SOC_ALL_CODECS into the individual
codec options rather than have them centrally. This allows the
inclusion of AC97 codecs when testing on platforms with AC97 support
and will also handle codecs on multi-function devices more gracefully.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Do a warm reset after cold when resetting the WM9713
Mark Brown [Tue, 28 Oct 2008 15:04:35 +0000]
ASoC: Do a warm reset after cold when resetting the WM9713

The WM9713 comes out of cold reset in low power mode so always requires
a warm reset to bring up the AC97 link after a cold reset.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Add PXA SSP support
Mark Brown [Wed, 30 Jul 2008 18:12:04 +0000]
ASoC: Add PXA SSP support

The SSP ports PXA series processors can be used to implement a variety of
audio interface formats. This patch implements support for I2S, DSP A and
DSP B modes on these ports.

This patch is based on the previous out of tree pxa2xx-ssp driver (which
was originally written by Liam Girdwood with updates from Philipp Zabel
and Nicola Perrino) and pxa3xx-ssp driver (originally written by Seth
Forsee based on the pxa2xx-ssp driver). Testing coverage is not complete
currently.

Tested-by: Daniel Ribeiro <drwyrm@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Remove DAPM restriction on mixer control name lengths
Mark Brown [Tue, 28 Oct 2008 13:02:31 +0000]
ASoC: Remove DAPM restriction on mixer control name lengths

As well as ensuring that UI-relevant parts of control names don't get
truncated in the DAPM code this avoids conflicts in long control names
that differ only at the end of a long string.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Convert core to use standard debug print macros
Mark Brown [Tue, 21 Oct 2008 20:45:08 +0000]
ASoC: Convert core to use standard debug print macros

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Fix handling of DAPM suspend work
Mark Brown [Tue, 14 Oct 2008 12:58:36 +0000]
ASoC: Fix handling of DAPM suspend work

Since we can query the playback stream power state directly we do not
need to infer if it is powered up from the timer being scheduled.  Doing
this avoids problems that previously existed with streams being
incorrectly determined to be powered up caused when the timer is
scheduled when streams are closed after being partially set up.

Reported-by: Nobin Mathew <nobin.mathew@gmail.com>
Reported-by: Jukka Hynninen <ext-jukka.hynninen@vaisala.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoASoC: Allow setting codec register with debugfs filesystem
Troy Kisky [Tue, 14 Oct 2008 00:42:14 +0000]
ASoC: Allow setting codec register with debugfs filesystem

i.e. echo 6 59 >/sys/kernel/debug/soc-audio.0/codec_reg
will set register 0x06 to a value of 0x59.
Also, pop_time debugfs interface setup is moved so that it
is setup in the same function as codec_reg

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

10 years agoALSA: ASoC: Fix WM9713 ALC Decay Time name
Mark Brown [Thu, 30 Oct 2008 12:37:10 +0000]
ALSA: ASoC: Fix WM9713 ALC Decay Time name

The control had an extra space at the end of the name.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoALSA: ASoC: Fix some minor errors in mpc5200 psc i2s driver
Jon Smirl [Thu, 30 Oct 2008 12:37:09 +0000]
ALSA: ASoC: Fix some minor errors in mpc5200 psc i2s driver

Fix missing unsigned for irqsave flags in psc i2s driver
Make attribute visiblity static
Collect all sysfs errors before checking status

[Word wrapped DEVICE_ATTR() lines for 80 columns -- broonie]

Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoALSA: ASoC: Fix mono controls after conversion to support full int masks
Mark Brown [Thu, 30 Oct 2008 12:37:08 +0000]
ALSA: ASoC: Fix mono controls after conversion to support full int masks

When ASoC was converted to support full int width masks SOC_SINGLE_VALUE()
omitted the assignment of rshift, causing the control operatins to report
some mono controls as stereo. This happened to work some of the time due
to a confusion between shift and min in snd_soc_info_volsw().

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoMerge branch 'topic/fix/asoc' into topic/asoc
Takashi Iwai [Tue, 28 Oct 2008 10:41:18 +0000]
Merge branch 'topic/fix/asoc' into topic/asoc

10 years agoALSA: ASoC: Blackfin: update SPORT0 port selector (v2)
Cliff Cai [Mon, 27 Oct 2008 09:09:25 +0000]
ALSA: ASoC: Blackfin: update SPORT0 port selector (v2)

- Setting the TFS pin selector for SPORT 0 based on whether the selected
  port id F or G. If the port is F then no conflict should exist for the
  TFS. When Port G is selected and EMAC then there is a conflict between
  the PHY interrupt line and TFS.  Current settings prevent the conflict
  by ignoring the TFS pin when Port G is selected. This allows both
  ssm2602 using Port G and EMAC concurrently.

 - some code cleanup

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

10 years agoMerge branch 'topic/asoc-next' into topic/asoc
Takashi Iwai [Mon, 27 Oct 2008 07:37:08 +0000]
Merge branch 'topic/asoc-next' into topic/asoc

10 years agoLinux 2.6.28-rc2
Linus Torvalds [Sun, 26 Oct 2008 19:13:29 +0000]
Linux 2.6.28-rc2

.. fix all the worst problems in -rc1

10 years agom68k: Disable Amiga serial console support if modular
Geert Uytterhoeven [Sun, 26 Oct 2008 18:51:14 +0000]
m68k: Disable Amiga serial console support if modular

If CONFIG_AMIGA_BUILTIN_SERIAL=m, I get the following warnings:

| drivers/char/amiserial.c: At top level:
| drivers/char/amiserial.c:2138: warning: data definition has no type or storage class
| drivers/char/amiserial.c:2138: warning: type defaults to 'int' in declaration of 'console_initcall'
| drivers/char/amiserial.c:2138: warning: parameter names (without types) in function declaration
| drivers/char/amiserial.c:2134: warning: 'amiserial_console_init' defined but not used

because console_initcall() is not defined (nor really sensible) in the
modular case.

So disable serial console support if the driver is modular.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoepoll: avoid double-inserts in case of EFAULT
Davide Libenzi [Fri, 17 Oct 2008 23:17:40 +0000]
epoll: avoid double-inserts in case of EFAULT

In commit f337b9c58332bdecde965b436e47ea4c94d30da0 ("epoll: drop
unnecessary test") Thomas found that there is an unnecessary (always
true) test in ep_send_events().  The callback never inserts into
->rdllink while the send loop is performed, and also does the
~EP_PRIVATE_BITS test.  Given we're holding the mutex during this time,
the conditions tested inside the loop are always true.

HOWEVER.

The test "!ep_is_linked(&epi->rdllink)" wasn't there because we insert
into ->rdllink, but because the send-events loop might terminate before
the whole list is scanned (-EFAULT).

In such cases, when the loop terminates early, and when a (leftover)
file received an event while we're performing the lockless loop, we need
such test to avoid to double insert the epoll items.  The list_splice()
done a few steps below, will correctly re-insert the ones that were left
on "txlist".

This should fix the kenrel.org bugzilla entry 11831.

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoselect: deal with math overflow from borderline valid userland data
Arjan van de Ven [Sat, 25 Oct 2008 19:41:41 +0000]
select: deal with math overflow from borderline valid userland data

Some userland apps seem to pass in a "0" for the seconds, and several
seconds worth of usecs to select().  The old kernels accepted this just
fine, so the new kernels must too.

However, due to the upscaling of the microseconds to nanoseconds we had
some cases where we got math overflow, and depending on the GCC version
(due to inlining decisions) that actually resulted in an -EINVAL return.

This patch fixes this by adding the excess microseconds to the seconds
field.

Also with thanks to Marcin Slusarz for spotting some implementation bugs
in the diagnostics patches.

Reported-by: Carlos R. Mafra <crmafra2@gmail.com>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agowireless: fix regression caused by regulatory config option
Arjan van de Ven [Sun, 26 Oct 2008 17:25:30 +0000]
wireless: fix regression caused by regulatory config option

The default for the regulatory compatibility option is wrong;
if you picked the default you ended up with a non-functional wifi
system (at least I did on Fedora 9 with iwl4965).
I don't think even the October 2008 releases of the various distros
has the new userland so clearly the default is wrong, and also
we can't just go about deleting this in 2.6.29...

Change the default to "y" and also adjust the config text a little to
reflect this.

This patch fixes regression #11859

With thanks to Johannes Berg for the diagnostics

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agocgroup: remove unused variable
Stephen Rothwell [Tue, 21 Oct 2008 05:11:20 +0000]
cgroup: remove unused variable

/scratch/sfr/next/kernel/cgroup.c: In function 'cgroup_tasks_start':
/scratch/sfr/next/kernel/cgroup.c:2107: warning: unused variable 'i'

Introduced in commit cc31edceee04a7b87f2be48f9489ebb72d264844 "cgroups:
convert tasks file to use a seq_file with shared pid array".

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoMerge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
Linus Torvalds [Sun, 26 Oct 2008 16:36:19 +0000]
Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
  hwmon: (abituguru3) enable DMI probing feature on AW9D-MAX
  hwmon: (abituguru3) Cosmetic whitespace fixes
  hwmon: (adt7473) Fix voltage conversion routines
  hwmon: (lm90) Add support for the LM99 16 degree offset
  hwmon: (lm90) Fix handling of hysteresis value
  hwmon-vid: Add support for AMD family 10h CPUs
  hwmon: (w83781d) Fix linking when built-in

10 years agor8169: revert "read MAC address from EEPROM on init"
Francois Romieu [Sun, 26 Oct 2008 16:02:49 +0000]
r8169: revert "read MAC address from EEPROM on init"

This reverts commit 7bf6bf4803df1adc927f585168d2135fb019c698.

The code has both a short existence and an increasing track of failures
despite some work to amend it for -rc1.  It is not just a matter of
reading the eeprom: sometimes the eeprom is read correctly, then the mac
address is not written correctly back into the mac registers.

Some chipsets seem to work reliably but it is not clear at this point if
the code can simply be made to work on a per-chipset basis and post -rc1
is not the place where I want to experiment these things.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoarm ide breakage
Al Viro [Sun, 26 Oct 2008 05:40:26 +0000]
arm ide breakage

a) semicolon before the function body is a bad idea
b) it's const struct foo, not struct const foo
c) incidentally, it's ecard_remove_driver(), not ecard_unregister_driver()
d) compiling is occasionally useful.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agofix allmodconfig breakage
Al Viro [Sun, 26 Oct 2008 05:12:34 +0000]
fix allmodconfig breakage

If you use KCONFIG_ALLCONFIG (even with empty file) you get broken
allmodconfig/allyesconfig; CONFIG_MODULES gets turned off, with obvious
massive fallout.

Breakage had been introduced when conf_set_all_new_symbols() got used
for allmodconfig et.al.

What happens is that sym_calc_value(modules_sym) done in
conf_read_simple() sets SYMBOL_VALID on both modules_sym and MODULES.
When we get to conf_set_all_new_symbols(), we set sym->def[S_DEF_USER]
on everything, but it has no effect on sym->curr for the symbols that
already have SYMBOL_VALID - these are stuck.

Solution: use sym_clear_all_valid() in there.  Note that it makes
reevaluation of modules_sym redundant - sym_clear_all_valid() will do
that itself.

[ Fixes http://bugzilla.kernel.org/show_bug.cgi?id=11512, says Alexey ]

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agohwmon: (abituguru3) enable DMI probing feature on AW9D-MAX
Alistair John Strachan [Sun, 26 Oct 2008 16:04:40 +0000]
hwmon: (abituguru3) enable DMI probing feature on AW9D-MAX

Switch the AW9D-MAX over from port probing to the preferred DMI
probe method.

Signed-off-by: Alistair John Strachan <alistair@devzero.co.uk>
Tested-by: Justin Piszcz <jpiszcz@lucidpixels.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

10 years agohwmon: (abituguru3) Cosmetic whitespace fixes
Alistair John Strachan [Sun, 26 Oct 2008 16:04:40 +0000]
hwmon: (abituguru3) Cosmetic whitespace fixes

As the probable result of zealous copy/pasting, many supported boards
contain sensor names with trailing whitespace. Though this is not a
huge problem, it is inconsistent with other sensor names, and with
other similar hwmon drivers.

Additionally, the DMI nag message added in 2.6.27 was missing a
space between two sentence fragments -- might as well clean that up
too.

Doesn't alter any kernel text, just data.

Signed-off-by: Alistair John Strachan <alistair@devzero.co.uk>
Reported-by: Justin Piszcz <jpiszcz@lucidpixels.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

10 years agohwmon: (adt7473) Fix voltage conversion routines
Jean Delvare [Sun, 26 Oct 2008 16:04:40 +0000]
hwmon: (adt7473) Fix voltage conversion routines

Fix voltage conversion routines. Based on an earlier patch from
Paulius Zaleckas.

According to the datasheet voltage is scaled with resistors and
value 192 is nominal voltage. 0 is 0V.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Cc: Darrick J. Wong <djwong@us.ibm.com>

10 years agohwmon: (lm90) Add support for the LM99 16 degree offset
Jean Delvare [Sun, 26 Oct 2008 16:04:39 +0000]
hwmon: (lm90) Add support for the LM99 16 degree offset

The LM99 differs from the LM86, LM89 and LM90 in that it reports
remote temperatures (temp2) 16 degrees lower than they really are. So
far we have been cheating and handled this in userspace but it really
should be handled by the driver directly.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>

10 years agohwmon: (lm90) Fix handling of hysteresis value
Jean Delvare [Sun, 26 Oct 2008 16:04:39 +0000]
hwmon: (lm90) Fix handling of hysteresis value

There are several problems in the way the hysteresis value is handled
by the lm90 driver:

* In show_temphyst(), specific handling of the MAX6646 is missing, so
  the hysteresis is reported incorrectly if the critical temperature
  is over 127 degrees C.
* In set_temphyst(), the new hysteresis register value is written to
  the chip but data->temp_hyst isn't updated accordingly, so there is
  a short period of time (up to 2 seconds) where the old hystereris
  value will be returned while the new one is already active.
* In set_temphyst(), the critical temperature which is used as a base
  to compute the value of the hysteresis register lacks
  device-specific handling. As a result, the value of the hysteresis
  register might be incorrect for the ADT7461 and MAX6646 chips.

Fix these 3 bugs.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ben Hutchings <bhutchings@solarflare.com>
Cc: Nate Case <ncase@xes-inc.com>

10 years agohwmon-vid: Add support for AMD family 10h CPUs
Jean Delvare [Sun, 26 Oct 2008 16:04:39 +0000]
hwmon-vid: Add support for AMD family 10h CPUs

The AMD family 10h CPUs use the same VID decoding table as the family
0Fh CPUs.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Rudolf Marek <r.marek@assembler.cz>

10 years agohwmon: (w83781d) Fix linking when built-in
Geert Uytterhoeven [Sun, 26 Oct 2008 16:04:38 +0000]
hwmon: (w83781d) Fix linking when built-in

When w83781d is built-in, the final links fails with the following vague error
message:

`.exit.text' referenced in section `.init.text' of drivers/built-in.o: defined
in discarded section `.exit.text' of drivers/built-in.o

w83781d_isa_unregister() cannot be marked __exit, as it's also called from
sensors_w83781d_init(), which is marked __init.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

10 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Linus Torvalds [Sun, 26 Oct 2008 02:57:30 +0000]
Merge branch 'for_linus' of git://git./linux/kernel/git/tytso/ext4

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
  ext4: Fix duplicate entries returned from getdents() system call
  ext3: Fix duplicate entries returned from getdents() system call

10 years agoRevert "Call init_workqueues before pre smp initcalls."
Linus Torvalds [Sun, 26 Oct 2008 02:53:38 +0000]
Revert "Call init_workqueues before pre smp initcalls."

This reverts commit a802dd0eb5fc97a50cf1abb1f788a8f6cc5db635 by moving
the call to init_workqueues() back where it belongs - after SMP has been
initialized.

It also moves stop_machine_init() - which needs workqueues - to a later
phase using a core_initcall() instead of early_initcall().  That should
satisfy all ordering requirements, and was apparently the reason why
init_workqueues() was moved to be too early.

Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoext4: Fix duplicate entries returned from getdents() system call
Theodore Ts'o [Sat, 25 Oct 2008 15:39:08 +0000]
ext4: Fix duplicate entries returned from getdents() system call

Fix a regression caused by commit d0156417, "ext4: fix ext4_dx_readdir
hash collision handling", where deleting files in a large directory
(requiring more than one getdents system call), results in some
filenames being returned twice.  This was caused by a failure to
update info->curr_hash and info->curr_minor_hash, so that if the
directory had gotten modified since the last getdents() system call
(as would be the case if the user is running "rm -r" or "git clean"),
a directory entry would get returned twice to the userspace.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

This patch fixes the bug reported by Markus Trippelsdorf at:
http://bugzilla.kernel.org/show_bug.cgi?id=11844

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de>

10 years agoext3: Fix duplicate entries returned from getdents() system call
Theodore Ts'o [Sat, 25 Oct 2008 15:38:37 +0000]
ext3: Fix duplicate entries returned from getdents() system call

Fix a regression caused by commit 6a897cf4, "ext3: fix ext3_dx_readdir
hash collision handling", where deleting files in a large directory
(requiring more than one getdents system call), results in some
filenames being returned twice.  This was caused by a failure to
update info->curr_hash and info->curr_minor_hash, so that if the
directory had gotten modified since the last getdents() system call
(as would be the case if the user is running "rm -r" or "git clean"),
a directory entry would get returned twice to the userspace.

This patch fixes the bug reported by Markus Trippelsdorf at:
http://bugzilla.kernel.org/show_bug.cgi?id=11844

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de>

10 years agolibata: fix bug with non-ncq devices
Jens Axboe [Fri, 24 Oct 2008 07:22:42 +0000]
libata: fix bug with non-ncq devices

The recent commit 2fca5ccf97d2c28bcfce44f5b07d85e74e3cd18e ("libata:
switch to using block layer tagging support") to enable support for
block layer tagging in libata was broken for non-NCQ devices

The block layer initializes the tag field to -1 to detect invalid uses
of a tag, and if the libata devices does NOT support NCQ, we just used
that field to index the internal command list.  So we need to check for
-1 first and only use the tag field if it's valid.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Reported-by: Alexander Beregalov <a.beregalov@gmail.com>
Tested-by: Paul Mundt <lethal@linux-sh.org>
Tested-by: Dave Young <hidave.darkstar@gmail.com>
Tested-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>