13 Nov, 2012
1 commit
-
Separate patches from Marek Szyprowski :
Commit e9da6e9905e639b0 ("ARM: dma-mapping: remove custom consistent dma
region") replaced custom consistent memory handling, so setting
consistent dma memory size is not longer required. This patch series
cleans sub-architecture platform code to remove all calls to the
obsolated init_consistent_dma_size() function and finally removes the
init_consistent_dma_size() stub itself.* cleanups/dma:
ARM: at91: remove obsoleted init_consistent_dma_size()
ARM: u300: remove obsoleted init_consistent_dma_size()
ARM: dma-mapping: remove init_consistent_dma_size() stub
ARM: shmobile: remove obsoleted init_consistent_dma_size()
ARM: davinci: remove obsoleted init_consistent_dma_size()
ARM: samsung: remove obsoleted init_consistent_dma_size()Signed-off-by: Arnd Bergmann
08 Nov, 2012
5 commits
-
There are uncovered cases whether the card refcount introduced by the
commit a0830dbd isn't properly increased or decreased:
- OSS PCM and mixer success paths
- When lookup function gets NULLThis patch fixes these places.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=50251
Cc:
Signed-off-by: Takashi Iwai -
Signed-off-by: Kailang Yang
Cc:
Signed-off-by: Takashi Iwai -
alc269_toggle_power_output() was only use in ALC269VB. I rename it to
alc269vb_toggle_power_output().Signed-off-by: Kailang Yang
Cc:
Signed-off-by: Takashi Iwai -
There are bug reports of a crash with USB-audio devices when PCM
prepare is performed immediately after the stream is stopped via
trigger callback. It turned out that the problem is that we don't
wait until all URBs are killed.This patch adds a new function to synchronize the pending stop
operation on an endpoint, and calls in the prepare callback for
avoiding the crash above.Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=49181
Reported-and-tested-by: Artem S. Tashkinov
Cc: [v3.6]
Signed-off-by: Takashi Iwai -
The RayDAT reports the sync status of its inputs in consecutive bit
positions, so all we do in hdspm_s1_sync_check is to iterate over idx:status = hdspm_read(hdspm, HDSPM_RD_STATUS_1);
lock = (status & (0x1<<private_value:
HDSPM_SYNC_CHECK("WC SyncCheck", 0),
HDSPM_SYNC_CHECK("AES SyncCheck", 1),
HDSPM_SYNC_CHECK("SPDIF SyncCheck", 2),
HDSPM_SYNC_CHECK("ADAT1 SyncCheck", 3),
HDSPM_SYNC_CHECK("ADAT2 SyncCheck", 4),
HDSPM_SYNC_CHECK("ADAT3 SyncCheck", 5),
HDSPM_SYNC_CHECK("ADAT4 SyncCheck", 6),
HDSPM_SYNC_CHECK("TCO SyncCheck", 7),
HDSPM_SYNC_CHECK("SYNC IN SyncCheck", 8),The patch corrects the indicated sync flags by passing the proper index
value to hdspm_s1_sync_check().Signed-off-by: Adrian Knoth
Signed-off-by: Takashi Iwai
07 Nov, 2012
3 commits
-
To parse properly the subwoofer outputs on ASUS G75 laptop with VT1802
codec, correct the default configurations of speaker pins 0x24 and
0x33.Reported-by: Massimo Del Fedele
Signed-off-by: Takashi Iwai -
VT1802 codec provides the invalid connection lists of NID 0x24 and
0x33 containing the routes to a non-exist widget 0x3e. This confuses
the auto-parser. Fix it up in the driver by overriding these
connections.Reported-by: Massimo Del Fedele
Cc:
Signed-off-by: Takashi Iwai -
In via_auto_fill_adc_nids(), the parser tries to fill dac_nids[] at
the point of the current line-out (i). When no valid path is found
for this output, this results in dac = 0, thus it creates a hole in
dac_nids[]. This confuses is_empty_dac() and trims the detected DAC
in later reference.This patch fixes the bug by appending DAC properly to dac_nids[] in
via_auto_fill_adc_nids().Reported-by: Massimo Del Fedele
Cc:
Signed-off-by: Takashi Iwai
06 Nov, 2012
1 commit
-
From Michal Simek:
* 'arm-next' of git://git.xilinx.com/linux-xlnx:
zynq: move static peripheral mappings
zynq: remove use of CLKDEV_LOOKUP
zynq: use pl310 device tree bindings
zynq: use GIC device tree bindings
+ Linux 3.7-rc3
05 Nov, 2012
5 commits
-
Several bug reports suggest that the forcibly resetting IEC958 status
bits is required for AD codecs to get the SPDIF output working
properly after changing streams.Original fix credit to Javeed Shaikh.
BugLink: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/359361
Reported-by: Robin Kreis
Cc:
Signed-off-by: Takashi Iwai -
Add generic ESS vendor ID to pm_whitelist. This should fix suspend on
all Maestro-2 and Maestro-2E based PCI cards.
Tested on Terratec DMX and SF64-PCE2.Signed-off-by: Ondrej Zary
Signed-off-by: Takashi Iwai -
Mark structures that won't change const.
Signed-off-by: Daniel J Blueman
Signed-off-by: Takashi Iwai -
Correctly enable the digital microphones with the right bits in the
right coeffecient registers on Cirrus CS4206/7 codecs. It also
prevents misconfiguring ADC1/2.This fixes the digital mic on the Macbook Pro 10,1/Retina.
Based-on-patch-by: Alexander Stein
Signed-off-by: Daniel J Blueman
Cc:
Signed-off-by: Takashi Iwai -
Signed-off-by: Alexander Stein
Cc:
Signed-off-by: Takashi Iwai
04 Nov, 2012
2 commits
-
The audio chipset used in Teradici's Tera2 host cards is the same as that in
the 1200 host cards. This patch allows ALSA to recognize the Tera2 cards.Signed-off-by: Lars R. Damerow
Signed-off-by: Takashi Iwai -
Correct spelling typo in debug messages within drivers/sound
Signed-off-by: Masanari Iida
Signed-off-by: Takashi Iwai
31 Oct, 2012
1 commit
-
The rate isn't restored properly after resume since it's only set up
in hw_params, and not in prepare callback. For fixing it, put the
corresponding call to resume callback as well.Reported-and-tested-by: Ondrej Zary
Signed-off-by: Takashi Iwai
30 Oct, 2012
6 commits
-
When disconnect callback is called, each component should wake up
sleepers and check card->shutdown flag for avoiding the endless sleep
blocking the proper resource release.Cc:
Signed-off-by: Takashi Iwai -
For more strict protection for wild disconnections, a refcount is
introduced to the card instance, and let it up/down when an object is
referred via snd_lookup_*() in the open ops.The free-after-last-close check is also changed to check this refcount
instead of the empty list, too.Reported-by: Matthieu CASTET
Cc:
Signed-off-by: Takashi Iwai -
Similar like the previous commit, cover with chip->shutdown_rwsem
and chip->shutdown checks.Reported-by: Matthieu CASTET
Cc:
Signed-off-by: Takashi Iwai -
Replace mutex with rwsem for codec->shutdown protection so that
concurrent accesses are allowed.Also add the protection to snd_usb_autosuspend() and
snd_usb_autoresume(), too.Reported-by: Matthieu CASTET
Cc:
Signed-off-by: Takashi Iwai -
Close some races at disconnection of a USB audio device by adding the
chip->shutdown_mutex and chip->shutdown check at appropriate places.The spots to put bandaids are:
- PCM prepare, hw_params and hw_free
- where the usb device is accessed for communication or get speed, in
mixer.c and others; the device speed is now cached in subs->speed
instead of accessing to chip->devThe accesses in PCM open and close don't need the mutex protection
because these are already handled in the core PCM disconnection code.The autosuspend/autoresume codes are still uncovered by this patch
because of possible mutex deadlocks. They'll be covered by the
upcoming change to rwsem.Also the mixer codes are untouched, too. These will be fixed in
another patch, too.Reported-by: Matthieu CASTET
Cc:
Signed-off-by: Takashi Iwai -
Fix races at PCM disconnection:
- while a PCM device is being opened or closed
- while the PCM state is being changed without lock in prepare,
hw_params, hw_free opsReported-by: Matthieu CASTET
Cc:
Signed-off-by: Takashi Iwai
28 Oct, 2012
3 commits
-
ASoC: Fixes for v3.7
Clean up some fallout from the OMAP header reorganisation and a minor
fix for DMIC which has no practical effect but is neater. -
We should really use "fck" when asking for the functional clock and not
"dmic_fck".
This way we can ensure that multiple dmic modules can exist in the system.Signed-off-by: Peter Ujfalusi
Signed-off-by: Mark Brown -
Also drop the includes that are no longer needed and just
cause problems for the ARM common zImage.Acked-by: Peter Ujfalusi
Signed-off-by: Tim Gardner
[tony@atomide.com: updated to drop unneeded headers]
Signed-off-by: Tony Lindgren
Signed-off-by: Mark Brown
26 Oct, 2012
3 commits
-
The BIOS on HP dv5 doesn't have the DMI string to guide the setup of
mute led GPIO and polarity. Associate this laptop with the hp-inv-led
model.Signed-off-by: Gustavo Maciel Dias Vieira
Tested-by: Vinícius Angiolucci
Signed-off-by: Takashi Iwai -
ASoC: Fixes for v3.7
A couple of driver fixes, one that improves the interoperability of
WM8994 with controllers that are sensitive to extra BCLK cycles and some
build break fixes for ux500.
24 Oct, 2012
1 commit
-
Rather than always assuming the maximum possible BCLK rate will be
required generate BCLKs for stereo if either one or two channels is
enabled. In order to support this we also need to ensure that only
the relevant channels are enabled.Signed-off-by: Mark Brown
22 Oct, 2012
1 commit
-
Signed-off-by: Denis Kirjanov
Signed-off-by: Takashi Iwai
21 Oct, 2012
2 commits
-
snd_miro_probe is a static function that is only called twice in the file
that defines it. At each call site, its argument is freed using
snd_card_free. Thus, there is no need for snd_miro_probe to call
snd_card_free on its argument on any of its error exit paths.Because snd_card_free both reads the fields of its argument and kfrees its
argments, the results of the second snd_card_free should be unpredictable.A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)//
@r@
identifier f,free,a;
parameter list[n] ps;
type T;
expression e;
@@f(ps,T a,...) {
... when any
when != a = e
if(...) { ... free(a); ... return ...; }
... when any
}@@
identifier r.f,r.free;
expression x,a;
expression list[r.n] xs;
@@* x = f(xs,a,...);
if (...) { ... free(a); ... return ...; }
//Signed-off-by: Julia Lawall
Signed-off-by: Takashi Iwai -
By some reason, Toshiba laptop doesn't like the EAPD turned up for the
headphone pin. Add a fix up code to force to turn down EAPD for NID
0x15.Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=569991
Cc:
Signed-off-by: Takashi Iwai
20 Oct, 2012
6 commits
-
checkpatch.pl discourages the use of spaces at the beginning of lines.
Some of the CTL_ELEM defines were not properly indented.This patch replaces the leading spaces by tabs. No functionality is
changed, the commit is purely cosmetic.Signed-off-by: Adrian Knoth
Signed-off-by: Takashi Iwai -
Signed-off-by: Adrian Knoth
Signed-off-by: Takashi Iwai -
According to the documentation, AES32 cards use a different bit position
for reporting the sync_in status.Signed-off-by: Adrian Knoth
Signed-off-by: Takashi Iwai -
In contrast to AES32, MADI uses the first status register to report the
sync_in status.Signed-off-by: Adrian Knoth
Signed-off-by: Takashi Iwai -
MADI and MADIface used to report the autosync_sample_rate. This
functionality was lost in commit
0dca1793063c28dde8f6c49c9c72203fe5cb6efc, this commit now adds it back.Signed-off-by: Adrian Knoth
Signed-off-by: Takashi Iwai -
Missing breaks lead to a fall-through, thus causing the wrong
autosync_sample_rate to be reported.Signed-off-by: Adrian Knoth
Signed-off-by: Takashi Iwai