29 Oct, 2014
1 commit
-
CMI8888 shows the stuttering playback when the snooping is disabled
on the audio buffer. Meanwhile, we've got reports that CORB/RIRB
doesn't work in the snooped mode. So, as a compromise, disable the
snoop only for CORB/RIRB and enable the snoop for the stream buffers.The resultant patch became a bit ugly, unfortunately, but we still can
live with it.Reported-and-tested-by: Geoffrey McRae
Cc: # 3.17+
Signed-off-by: Takashi Iwai
27 Oct, 2014
2 commits
-
It is lite version of AIO machine(0x0626).
The audio layout of this machine was similar with SSID 0x0626.
The audio was same as commit ad8ff99e6beb8708b0bdefd9d5658324e90200f0.Signed-off-by: Kailang Yang
Signed-off-by: Takashi Iwai -
Precedence of & and >> is not the same and is not left to right.
shift has higher precedence and should be done after the mask.Add parentheses around the mask.
Signed-off-by: Joe Perches
Signed-off-by: Takashi Iwai
24 Oct, 2014
3 commits
-
Update two records for ALC283 for restore default value.
[The update doesn't seem to have high impact on the existing machines,
but it fixes possible issues, especially expected in BIOS changes on
new machines, according to Realtek -- tiwai]Signed-off-by: Kailang Yang
Signed-off-by: Takashi Iwai -
Update default value for ALC282 for COEF.
[The update doesn't seem to have high impact on the existing machines,
but it fixes possible issues, especially expected in BIOS changes on
new machines, according to Realtek -- tiwai]Signed-off-by: Kailang Yang
Signed-off-by: Takashi Iwai -
Without this terminating entry, the pin matching would continue
across random memory until a zero or a non-matching entry was found.The result being that in some cases, the pin quirk would not be
applied correctly.Cc: stable@vger.kernel.org
Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai
20 Oct, 2014
3 commits
-
We implemented in a wrong way for mute LED on Lenovo Ideapad; the bit
must be flipped.Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=16373
Fixes: 3e887f379d8a ('ALSA: hda - Add mute LED support to Lenovo Ideapad')
Cc: # 3.15+
Signed-off-by: Takashi Iwai -
The ELD ALSA control change event is sent by hdmi_present_sense() when
eld_changed is true.Currently, it is only true when the ELD buffer contents have been
modified. However, the user-visible ELD controls also change to a
zero-length value and back when eld_valid is unset/set, and no event is
currently sent in such cases (such as when unplugging or replugging a
sink).Fix the code to always set eld_changed if eld_valid value is changed,
and therefore to always send the change event when the user-visible
value changes.Signed-off-by: Anssi Hannula
Cc: David Henningsson
Cc: # 3.9+
Signed-off-by: Takashi Iwai -
This patch sets the headphones mode to default before suspending
which helps avoid the pop noise on headphonesSigned-off-by: Harsha Priya
Cc:
Signed-off-by: Takashi Iwai
15 Oct, 2014
1 commit
-
This patch adds the HD Audio Device IDs for the Intel Sunrise Point PCH.
[the item position rearranged by tiwai]
Signed-off-by: James Ralston
Signed-off-by: Takashi Iwai
14 Oct, 2014
1 commit
-
The emu10k1 voice allocator takes voice_lock spinlock. When there is
no empty stream available, it tries to release a voice used by synth,
and calls get_synth_voice. The callback function,
snd_emu10k1_synth_get_voice(), however, also takes the voice_lock,
thus it deadlocks.The fix is simply removing the voice_lock holds in
snd_emu10k1_synth_get_voice(), as this is always called in the
spinlock context.Reported-and-tested-by: Arthur Marsh
Cc:
Signed-off-by: Takashi Iwai
08 Oct, 2014
1 commit
-
Yet another Thinkpad model that has a dock port.
Reported-by: Sascha Wilde
Signed-off-by: Takashi Iwai
07 Oct, 2014
4 commits
-
There is another Thinkpad T440 with SSID 17aa:2212 that has a dock
port.Reported-by: Siwei Luo
Signed-off-by: Takashi Iwai -
From what I can see, the generic parser is now good enough to handle
Realtek's inverted dmic handling, so let's remove the special handling
and use the generic parser instead.Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai -
In this case, it looks like the right channel records noise rather
than the inverted signal, but the simplest way is to just call it
"Inverted Internal Mic", which will cause it to be muted by default.Alsa-info at http://www.alsa-project.org/db/?f=064f0b536a1b068efd30d58c2641b5ec2348f059
BugLink: https://bugs.launchpad.net/bugs/1316518
Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai -
Alsa-info at https://launchpadlibrarian.net/186697318/alsa-info.txt.37fYWkaJRc
Reported-by: Tomas Nilsson
Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai
06 Oct, 2014
1 commit
-
ASoC: Updates for v3.18
- More componentisation work from Lars-Peter, this time mainly
cleaning up the suspend and bias level transition callbacks.
- Real system support for the Intel drivers and a bunch of fixes and
enhancements for the associated CODEC drivers, this is going to need
a lot quirks over time due to the lack of any firmware description of
the boards.
- Jack detect support for simple card from Dylan Reid.
- A bunch of small fixes and enhancements for the Freescale drivers.
- New drivers for Analog Devices SSM4567, Cirrus Logic CS35L32, Everest
Semiconductor ES8328 and Freescale cards using the ASRC in newer i.MX
processors.
30 Sep, 2014
6 commits
-
pr_* macros replaced with dev_* as they are more preffered over pr_*.
each file which had pr_* was reviewed manually and replaced with dev_*.
here we have actually used the various snd_card which was added to some
structures of ctxfi via a previous patch of this series.in the ctvmem.c file we have passed a reference of ct_atc as an
argument to get_vm_block function so that it can be used from
dev_*.since dev_* will print the device information , so the prefix of
"ctxfi" from the various pr_* were also removed.Signed-off-by: Sudip Mukherjee
Signed-off-by: Takashi Iwai -
added reference of the card in the convert_format function
so that we can know which card has called the function.
this reference of the snd_card will actually be used in a later patch
to convert the pr_* macro to dev_*.Signed-off-by: Sudip Mukherjee
Signed-off-by: Takashi Iwai -
initialized the reference of snd_card which was added to the various
structures through the previous patch of the series.
these references of snd_card will be used in a later patch to convert
the pr_* macros to dev_*Signed-off-by: Sudip Mukherjee
Signed-off-by: Takashi Iwai -
added a pointer of snd_card in some of the structures to get a
reference of the card from other functions.
these references of snd_card will be initialised in the next patch
of this series and as of now these snd_card will be used to print the
the device information when we convert the pr_* macros to dev_* in a
later patch of this series.Signed-off-by: Sudip Mukherjee
Signed-off-by: Takashi Iwai -
the previous patch of the series has converted the void * to
struct hw * . Now this patch removes the typecasting to (struct hw *)
which is not needed any more.Signed-off-by: Sudip Mukherjee
Signed-off-by: Takashi Iwai -
in the code we have void *hw and while using we are always typecasting
it to (struct hw *). it is better to use void type of pointer when we
store different types of pointer , but in this code we are only having
struct hw.
So changed all the relevant reference of void *hw to struct hw *hw,
without any modification of the existing code logic.
the next patch of the series will remove the typecasting which is
not required now.Signed-off-by: Sudip Mukherjee
Signed-off-by: Takashi Iwai
23 Sep, 2014
4 commits
-
fixed sparse warning of incorrect type (different address spaces) in
cthw20k1.c and cthw20k2.c which was being actually caused as mem_base
was of the type unsigned long.Again as mem_base was previously unsigned long , so it required many
typecasts in the code to convert interger to pointer.Now after giving the correct type of mem_base as void __iomem *
we can also remove those typecasts maintaining the same functionality
and logic of the code.Signed-off-by: Sudip Mukherjee
Signed-off-by: Takashi Iwai -
If one input has a boost and another one has not, and they're equal
otherwise, it's more likely you want to use the input with the boost
as your primary input.See hda-emu.git/codecs/canonical/cx20590-lenovo-20b2z00bus-ccert-201305-13496
for an example.Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai -
The next patch will use it, so make it visible across modules.
Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai -
Since every caller of snd_hda_jack_detect_enable_callback needs to
use the macros from err.h, it makes sense to include it directly
from hda_jack.h.Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai
22 Sep, 2014
3 commits
-
This is a merge of rework of HD-audio jack event handling code.
It extends the jack table to allow multiple callbacks. -
Allow the driver to report the hardware FIFO size.
Signed-off-by: Clemens Ladisch
Signed-off-by: Takashi Iwai -
This patch adds partial support for the Xonar Xense.
[trivial coding style fixes by tiwai]
Signed-off-by: Harley Griggs
Acked-by: Clemens Ladisch
Signed-off-by: Takashi Iwai
19 Sep, 2014
1 commit
-
Lemote A1004 is already added in commit a2dd933d01f (ALSA: hda - Add
fixup name lookup for CX5051 and 5066 codecs), but Lemote A1205 has
missing.Signed-off-by: Huacai Chen
Cc: # 3.15+
Signed-off-by: Takashi Iwai
17 Sep, 2014
1 commit
-
The kernel used to contain two functions for length-delimited,
case-insensitive string comparison, strnicmp with correct semantics
and a slightly buggy strncasecmp. The latter is the POSIX name, so
strnicmp was renamed to strncasecmp, and strnicmp made into a wrapper
for the new strncasecmp to avoid breaking existing users.To allow the compat wrapper strnicmp to be removed at some point in
the future, and to avoid the extra indirection cost, do
s/strnicmp/strncasecmp/g.Signed-off-by: Rasmus Villemoes
Signed-off-by: Takashi Iwai
16 Sep, 2014
4 commits
-
For its headphone, mic and DSP responses, we can use the standard
hda_jack infrastructure in CA0132 driver, too. The only point to
handle carefully is the delayed headphone jack handling. It tries to
react after a certain delay. Here we use the existing block_report
flag in hda_jack_tbl (that was implemented for HDMI).Signed-off-by: Takashi Iwai
-
Like the previous fix for STAC/IDT codecs, the automute hooks in VIA
driver can be also removed by enabling the power control callback for
all pins.Signed-off-by: Takashi Iwai
-
Now we can register multiple callbacks to each jack, most of hooks
used in STAC/IDT codecs can be removed by enabling the powermap update
callback for all relevant pins. Along with this, the call of
stac_init_power_map() can be moved back to stac_parse_auto_config()
and the own build_controls callback can be removed, too.Signed-off-by: Takashi Iwai
-
So far, hda_jack infrastructure allows only one callback per jack, and
this makes things slightly complicated when a driver wants to assign
multiple tasks to a jack, e.g. the standard auto-mute with a power
up/down sequence. This can be simplified if the hda_jack accepts
multiple callbacks.This patch is such an extension: the callback-specific part (the
function and private_data) is split to another struct from
hda_jack_tbl, and multiple such objects can be assigned to a single
hda_jack_tbl entry.The new struct hda_jack_callback is passed to each callback function
now, thus the patch became bigger than expected. But these changes
are mostly trivial.Signed-off-by: Takashi Iwai
15 Sep, 2014
4 commits
-
Like the other previous changes, this patch for lx6464es takes the
same strategy for converting to nonatomic PCM ops: replacing spinlock
with mutex, converting the irq tasklet to the threaded irq, and
merging the trigger tasklets back to the trigger callback.Signed-off-by: Takashi Iwai
-
This time PCXHR, another Digigram boards: like the previous patches,
the conversion is straightforward, replacing spinlocks with mutexes,
merging the irq tasklet into the threaded irq handler and the PCM
trigger tasklet back to the trigger callback.Signed-off-by: Takashi Iwai
-
Like the previous patch for VX boards, miXart device driver can be
also rewritten to use nonatomic PCM ops. Simply spinlocks are
replaced with mutex, the tasklet code is merged into the threaded irq
handler. Also, now mgr->msg_mutex is superfluous, so merged to
msg_lock.Signed-off-by: Takashi Iwai
-
Rewrite VXpocket and VX222 drivers to use the new PCM nonatomic ops.
The former irq tasklet is replaced with a threaded irq handler, and
the tasklet for the PCM delayed start is simply merged into the normal
PCM trigger, as well as the replacement of spinlock with mutex.Signed-off-by: Takashi Iwai