24 Nov, 2010
1 commit
-
Current AP4 FSI set_rate function used bogus clock process
which didn't care enable/disable and clk->usecound.
To solve this issue, this patch also modify FSI driver to call
set_rate with enough options.
This patch modify it.Signed-off-by: Kuninori Morimoto
Signed-off-by: Paul Mundt
25 Oct, 2010
3 commits
-
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (365 commits)
ALSA: hda - Disable sticky PCM stream assignment for AD codecs
ALSA: usb - Creative USB X-Fi volume knob support
ALSA: ca0106: Use card specific dac id for mute controls.
ALSA: ca0106: Allow different sound cards to use different SPI channel mappings.
ALSA: ca0106: Create a nice spot for mapping channels to dacs.
ALSA: ca0106: Move enabling of front dac out of hardcoded setup sequence.
ALSA: ca0106: Pull out dac powering routine into separate function.
ALSA: ca0106 - add Sound Blaster 5.1vx info.
ASoC: tlv320dac33: Use usleep_range for delays
ALSA: usb-audio: add Novation Launchpad support
ALSA: hda - Add workarounds for CT-IBG controllers
ALSA: hda - Fix wrong TLV mute bit for STAC/IDT codecs
ASoC: tpa6130a2: Error handling for broken chip
ASoC: max98088: Staticise m98088_eq_band
ASoC: soc-core: Fix codec->name memory leak
ALSA: hda - Apply ideapad quirk to Acer laptops with Cxt5066
ALSA: hda - Add some workarounds for Creative IBG
ALSA: hda - Fix wrong SPDIF NID assignment for CA0110
ALSA: hda - Fix codec rename rules for ALC662-compatible codecs
ALSA: hda - Add alc_init_jacks() call to other codecs
... -
Conflicts:
arch/powerpc/platforms/85xx/p1022_ds.c
23 Oct, 2010
1 commit
-
This patch removes the old CONFIG_SYSFS_DEPRECATED_V2 config option,
but it keeps the logic around to handle block devices in the old manner
as some people like to run new kernel versions on old (pre 2007/2008)
distros.Signed-off-by: Kay Sievers
Cc: Jens Axboe
Cc: Stephen Hemminger
Cc: "Eric W. Biederman"
Cc: Alan Stern
Cc: "James E.J. Bottomley"
Cc: Andrew Morton
Cc: Alexey Kuznetsov
Cc: Randy Dunlap
Cc: Tejun Heo
Cc: "David S. Miller"
Cc: Jaroslav Kysela
Cc: Takashi Iwai
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: David Howells
Signed-off-by: Greg Kroah-Hartman
19 Oct, 2010
1 commit
-
This reverts commit f6765502f8daae3d237a394889276c8987f3e299 and adds
the missing include file.Signed-off-by: Peter Hsiang
Signed-off-by: Mark Brown
18 Oct, 2010
1 commit
-
CCR is defined in emu10k1, but SuperH is defined too.
If user use this driver with SuperH, it becomes a double definition.Signed-off-by: Nobuhiro Iwamatsu
Cc: Paul Mundt
Signed-off-by: Takashi Iwai
17 Oct, 2010
2 commits
-
Signed-off-by: Takashi Iwai
-
If we compile the ASoC code with PM disabled, we hit stuff like:
sound/soc/soc-dapm.c: In function 'snd_soc_dapm_suspend_check':
sound/soc/soc-dapm.c:440: warning: unused variable 'codec'So tweak the stub macro to avoid these issues.
Signed-off-by: Mike Frysinger
Signed-off-by: Takashi Iwai
13 Oct, 2010
1 commit
-
With generic AC97 ASoC glue driver (codec/ac97.c), we get following warning when
the device is registered (slightly stripped the backtrace):kobject (c5a863e8): tried to init an initialized object, something is seriously
wrong.
[] (unwind_backtrace+0x0/0xec)
[] (kobject_init+0x38/0x70)
[] (device_initialize+0x20/0x70)
[] (device_register+0xc/0x18)
[] (snd_soc_instantiate_cards+0x924/0xacc [snd_soc_core])
[] (snd_soc_register_platform+0x16c/0x198 [snd_soc_core])
[] (platform_drv_probe+0x18/0x1c)
[] (driver_probe_device+0xb0/0x16c)
[] (__driver_attach+0x5c/0x7c)
[] (bus_for_each_dev+0x48/0x78)
[] (bus_add_driver+0x98/0x214)
[] (driver_register+0xa4/0x130)
[] (do_one_initcall+0xd0/0x1a4)
[] (sys_init_module+0x12b0/0x1454)This happens because the generic AC97 glue driver creates its codec->ac97 via
calling snd_ac97_mixer(). snd_ac97_mixer() provides own version of
snd_device.register which handles the device registration when
snd_card_register() is called.To avoid registering the AC97 device twice, we add a new flag to the
snd_soc_codec: ac97_created which tells whether the AC97 device was created by
SoC subsystem.Signed-off-by: Mika Westerberg
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
08 Oct, 2010
1 commit
-
Rather than block the workqueue by sleeping to do the debounce use delayed
work to implement the debounce time. This should also means that we extend
the debounce time on each new bounce, potentially allowing shorter debounce
times for clean insertions.Signed-off-by: Mark Brown
Acked-by: Jarkko Nikula
Acked-by: Liam Girdwood
03 Oct, 2010
1 commit
-
The WM8962 features five GPIOs, add support for controlling their output
state via gpiolib.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
01 Oct, 2010
1 commit
-
Add the widget for MICBIAS power control and allow configuration of the
microphone bias setup via the platform data for the WM8962. When
microphone status signals are brought out to GPIO this should be
sufficient to enable microphone detection.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
29 Sep, 2010
1 commit
-
Provide an initial hookup for interrupts on the WM8962. Currently we simply
report error status via log messages if an IRQ is provided for the device.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
07 Sep, 2010
1 commit
-
Some devices have more flexible microphone detection and can detect
a wider range of buttons.Signed-off-by: Mark Brown
Signed-off-by: Takashi Iwai
06 Sep, 2010
1 commit
-
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
31 Aug, 2010
2 commits
-
Signed-off-by: Kuninori Morimoto
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
Swapping the bias level enumeration is only meant to help debugging. It is
easier if number 0 means bias off and bigger number means bigger bias level.Signed-off-by: Jarkko Nikula
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
18 Aug, 2010
2 commits
-
The current code in pcm_lib.c do all checks using only the position
in the ring buffer. Unfortunately, where the interrupts gets delayed or
merged into one, we need another timing source to check when the
buffer size boundary overlaps to avoid the wrong updating of the
ring buffer pointers.This code uses jiffies to check the right time window without any
performance impact.Signed-off-by: Jaroslav Kysela
Signed-off-by: Takashi Iwai -
With some hardware combinations, the PCM interrupts are acknowledged
before the period boundary from the emu10k1 chip. The midlevel PCM code
gets confused and the playback stream is interrupted.It seems that the interrupt processing shift by 2 samples is enough
to fix this issue. This default value does not harm other,
non-affected hardware.More information: Kernel bugzilla bug#16300
[A copmile warning fixed by tiwai]
Signed-off-by: Jaroslav Kysela
Cc:
Signed-off-by: Takashi Iwai
17 Aug, 2010
1 commit
-
Fairly simple conflicts, the most serious ones are the i.MX ones which I
suspect now need another rename.Conflicts:
arch/arm/mach-mx2/clock_imx27.c
arch/arm/mach-mx2/devices.c
arch/arm/mach-omap2/board-rx51-peripherals.c
arch/arm/mach-omap2/board-zoom2.c
sound/soc/fsl/mpc5200_dma.c
sound/soc/fsl/mpc5200_dma.h
sound/soc/fsl/mpc8610_hpcd.c
sound/soc/pxa/spitz.c
15 Aug, 2010
1 commit
-
unifdef-y and header-y has same semantic.
So there is no need to have both.Drop the unifdef-y variant and sort all lines again
Signed-off-by: Sam Ravnborg
12 Aug, 2010
2 commits
-
…l/git/lrg/asoc-2.6 into for-2.6.37
-
This patch extends the ASoC API to allow sound cards to have more than one
CODEC and more than one platform DMA controller. This is achieved by dividing
some current ASoC structures that contain both driver data and device data into
structures that only either contain device data or driver data. i.e.struct snd_soc_codec ---> struct snd_soc_codec (device data)
+-> struct snd_soc_codec_driver (driver data)struct snd_soc_platform ---> struct snd_soc_platform (device data)
+-> struct snd_soc_platform_driver (driver data)struct snd_soc_dai ---> struct snd_soc_dai (device data)
+-> struct snd_soc_dai_driver (driver data)struct snd_soc_device ---> deleted
This now allows ASoC to be more tightly aligned with the Linux driver model and
also means that every ASoC codec, platform and (platform) DAI is a kernel
device. ASoC component private data is now stored as device private data.The ASoC sound card struct snd_soc_card has also been updated to store lists
of it's components rather than a pointer to a codec and platform. The PCM
runtime struct soc_pcm_runtime now has pointers to all its components.This patch adds DAPM support for ASoC multi-component and removes struct
snd_soc_socdev from DAPM core. All DAPM calls are now made on a card, codec
or runtime PCM level basis rather than using snd_soc_socdev.Other notable multi-component changes:-
* Stream operations now de-reference less structures.
* close_delayed work() now runs on a DAI basis rather than looping all DAIs
in a card.
* PM suspend()/resume() operations can now handle N CODECs and Platforms
per sound card.
* Added soc_bind_dai_link() to bind the component devices to the sound card.
* Added soc_dai_link_probe() and soc_dai_link_remove() to probe and remove
DAI link components.
* sysfs entries can now be registered per component per card.
* snd_soc_new_pcms() functionailty rolled into dai_link_probe().
* snd_soc_register_codec() now does all the codec list and mutex init.This patch changes the probe() and remove() of the CODEC drivers as follows:-
o Make CODEC driver a platform driver
o Moved all struct snd_soc_codec list, mutex, etc initialiasation to core.
o Removed all static codec pointers (drivers now support > 1 codec dev)
o snd_soc_register_pcms() now done by core.
o snd_soc_register_dai() folded into snd_soc_register_codec().CS4270 portions:
Acked-by: Timur TabiSome TLV320aic23 and Cirrus platform fixes.
Signed-off-by: Ryan MallonTI CODEC and OMAP fixes
Signed-off-by: Peter Ujfalusi
Signed-off-by: Janusz Krzysztofik
Signed-off-by: Jarkko NikulaSamsung platform and misc fixes :-
Signed-off-by: Chanwoo Choi
Signed-off-by: Joonyoung Shim
Signed-off-by: Kyungmin Park
Reviewed-by: Jassi Brar
Signed-off-by: Seungwhan YounMPC8610 and PPC fixes.
Signed-off-by: Timur Tabii.MX fixes and some core fixes.
Signed-off-by: Sascha HauerJ4740 platform fixes:-
Signed-off-by: Lars-Peter ClausenCC: Tony Lindgren
CC: Nicolas Ferre
CC: Kevin Hilman
CC: Sascha Hauer
CC: Atsushi Nemoto
CC: Kuninori Morimoto
CC: Daniel Gloeckner
CC: Manuel Lauss
CC: Mike Frysinger
CC: Arnaud Patard
CC: Wan ZongShunAcked-by: Mark Brown
Signed-off-by: Liam Girdwood
08 Aug, 2010
1 commit
-
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (214 commits)
ALSA: hda - Add pin-fix for HP dc5750
ALSA: als4000: Fix potentially invalid DMA mode setup
ALSA: als4000: enable burst mode
ALSA: hda - Fix initial capsrc selection in patch_alc269()
ASoC: TWL4030: Capture route runtime DAPM ordering fix
ALSA: hda - Add PC-beep whitelist for an Intel board
ALSA: hda - More relax for pending period handling
ALSA: hda - Define AC_FMT_* constants
ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs
ALSA: hda - Add support for HDMI HBR passthrough
ALSA: hda - Set Stream Type in Stream Format according to AES0
ALSA: hda - Fix Thinkpad X300 so SPDIF is not exposed
ALSA: hda - FIX to not expose SPDIF on Thinkpad X301, since it does not have the ability to use SPDIF
ASoC: wm9081: fix resource reclaim in wm9081_register error path
ASoC: wm8978: fix a memory leak if a wm8978_register fail
ASoC: wm8974: fix a memory leak if another WM8974 is registered
ASoC: wm8961: fix resource reclaim in wm8961_register error path
ASoC: wm8955: fix resource reclaim in wm8955_register error path
ASoC: wm8940: fix a memory leak if wm8940_register return error
ASoC: wm8904: fix resource reclaim in wm8904_register error path
...
05 Aug, 2010
2 commits
-
The WM8962 is a low power, high performance stereo CODEC designed for
portable digital audio applications.This initial driver release supports the key audio paths of the WM8962.
Extended functionality, such as microphone detection, digital microphones
and the advanced DSP signal enhancements provided by the device are not
yet supported.Signed-off-by: Mark Brown
02 Aug, 2010
1 commit
-
…soc-2.6 into topic/asoc
30 Jul, 2010
1 commit
-
Signed-off-by: Kuninori Morimoto
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
29 Jul, 2010
2 commits
-
Platform parameter to enable automatic FIFO configuration when
the codec is in Mode1 or Mode7 FIFO mode.
When this mode is selected, the controls for changing
nSample (in Mode1), and UTHR (in Mode7) are not added.
The driver configures the FIFO configuration based on
the stream's period size in a way, that every burst will
read period size of data from the host.
In Mode7 we need to use a formula, which gives close enough
aproximation for the burst length from the host point
of view.Signed-off-by: Peter Ujfalusi
Acked-by: Mark Brown
Signed-off-by: Liam Girdwood -
Replace the hardwired latency definition with platform data
parameter, and simplify the nSample parameter calculation.Signed-off-by: Peter Ujfalusi
Acked-by: Mark Brown
Signed-off-by: Liam Girdwood
19 Jul, 2010
1 commit
-
All current users of pm_qos_add_request() have the ability to supply
the memory required by the pm_qos routines, so make them do this and
eliminate the kmalloc() with pm_qos_add_request(). This has the
double benefit of making the call never fail and allowing it to be
called from atomic context.Signed-off-by: James Bottomley
Signed-off-by: mark gross
Signed-off-by: Rafael J. Wysocki
18 Jul, 2010
1 commit
-
Specified ID is necessary, when some codecs are used with FSI.
Signed-off-by: Kuninori Morimoto
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
13 Jul, 2010
2 commits
-
This patch add hw_params to snd_soc_dai_ops,
because board specific set_rate is needed
when FSI was used as master mode.This patch remove fsi_clk_ctrl from fsi_dai_startup,
because clock should be disabled before set_rate.Signed-off-by: Kuninori Morimoto
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
There is no necessity that each bit in this area has the meaning.
This patch modify it to sequence numberSigned-off-by: Kuninori Morimoto
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
05 Jul, 2010
1 commit
28 Jun, 2010
1 commit
-
When using poll() to wait for the next period -- or avail_min samples --
one gets a consistent delay for each system call that is usually just a
little short of the selected period time. However, When using
snd_pcm_read/write(), one gets a jittery delay that alternates between
less than a millisecond and approximately two period times. This is
caused by snd_pcm_lib_{read,write}1() transferring any available samples
to the user's buffer and adjusting the application pointer prior to
sleeping to the end of the current period. When the next period
interrupt occurs, there is then less than avail_min samples remaining to
be transferred in the period, so we end up sleeping until a second
period occurs.This is solved by using runtime->twake as the number of samples needed
for a wakeup in addition to selecting the proper wait queue to wake in
snd_pcm_update_state(). This requires twake to be non-zero when used
by snd_pcm_lib_{read,write}1() even if avail_min is zero.Signed-off-by: Dave Dillow
Signed-off-by: Jaroslav Kysela
25 Jun, 2010
1 commit
-
This change wipes out a hardcoded macro, which enables codec bias
level control. Now is_powered_on_standby value shall be used instead.Signed-off-by: Vladimir Zapolskiy
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
31 May, 2010
2 commits
-
Some systems codecs need to configure some registers before and after
powering down some of their part. As a convenience add a macro for that.Signed-off-by: Arnaud Patard
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown