Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
ffd34444
Commit
ffd34444
authored
May 08, 2012
by
Takashi Iwai
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'fix/hda' into topic/hda
parents
6942c103
619a341b
Changes
17
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
285 additions
and
87 deletions
+285
-87
Documentation/devicetree/bindings/sound/sgtl5000.txt
Documentation/devicetree/bindings/sound/sgtl5000.txt
+2
-0
sound/pci/echoaudio/echoaudio_dsp.c
sound/pci/echoaudio/echoaudio_dsp.c
+1
-1
sound/pci/hda/hda_codec.c
sound/pci/hda/hda_codec.c
+0
-4
sound/pci/hda/hda_intel.c
sound/pci/hda/hda_intel.c
+13
-1
sound/pci/hda/patch_realtek.c
sound/pci/hda/patch_realtek.c
+11
-6
sound/pci/rme9652/hdsp.c
sound/pci/rme9652/hdsp.c
+1
-0
sound/soc/blackfin/bf5xx-ssm2602.c
sound/soc/blackfin/bf5xx-ssm2602.c
+2
-0
sound/soc/codecs/cs42l73.c
sound/soc/codecs/cs42l73.c
+2
-0
sound/soc/codecs/tlv320aic23.c
sound/soc/codecs/tlv320aic23.c
+2
-2
sound/soc/codecs/wm8350.c
sound/soc/codecs/wm8350.c
+6
-5
sound/soc/codecs/wm8994.c
sound/soc/codecs/wm8994.c
+222
-54
sound/soc/codecs/wm_hubs.c
sound/soc/codecs/wm_hubs.c
+9
-6
sound/soc/omap/omap-pcm.c
sound/soc/omap/omap-pcm.c
+4
-0
sound/soc/samsung/s3c2412-i2s.c
sound/soc/samsung/s3c2412-i2s.c
+1
-1
sound/soc/sh/fsi.c
sound/soc/sh/fsi.c
+3
-4
sound/soc/soc-core.c
sound/soc/soc-core.c
+4
-3
sound/soc/soc-dapm.c
sound/soc/soc-dapm.c
+2
-0
No files found.
Documentation/devicetree/bindings/sound/sgtl5000.txt
View file @
ffd34444
...
...
@@ -3,6 +3,8 @@
Required properties:
- compatible : "fsl,sgtl5000".
- reg : the I2C address of the device
Example:
codec: sgtl5000@0a {
...
...
sound/pci/echoaudio/echoaudio_dsp.c
View file @
ffd34444
...
...
@@ -475,7 +475,7 @@ static int load_firmware(struct echoaudio *chip)
const
struct
firmware
*
fw
;
int
box_type
,
err
;
if
(
snd_BUG_ON
(
!
chip
->
dsp_code_to_load
||
!
chip
->
comm_page
))
if
(
snd_BUG_ON
(
!
chip
->
comm_page
))
return
-
EPERM
;
/* See if the ASIC is present and working - only if the DSP is already loaded */
...
...
sound/pci/hda/hda_codec.c
View file @
ffd34444
...
...
@@ -5497,10 +5497,6 @@ int snd_hda_suspend(struct hda_bus *bus)
list_for_each_entry
(
codec
,
&
bus
->
codec_list
,
list
)
{
if
(
hda_codec_is_power_on
(
codec
))
hda_call_codec_suspend
(
codec
);
else
/* forcibly change the power to D3 even if not used */
hda_set_power_state
(
codec
,
codec
->
afg
?
codec
->
afg
:
codec
->
mfg
,
AC_PWRST_D3
);
if
(
codec
->
patch_ops
.
post_suspend
)
codec
->
patch_ops
.
post_suspend
(
codec
);
}
...
...
sound/pci/hda/hda_intel.c
View file @
ffd34444
...
...
@@ -2351,6 +2351,17 @@ static void azx_power_notify(struct hda_bus *bus)
* power management
*/
static
int
snd_hda_codecs_inuse
(
struct
hda_bus
*
bus
)
{
struct
hda_codec
*
codec
;
list_for_each_entry
(
codec
,
&
bus
->
codec_list
,
list
)
{
if
(
snd_hda_codec_needs_resume
(
codec
))
return
1
;
}
return
0
;
}
static
int
azx_suspend
(
struct
pci_dev
*
pci
,
pm_message_t
state
)
{
struct
snd_card
*
card
=
pci_get_drvdata
(
pci
);
...
...
@@ -2397,7 +2408,8 @@ static int azx_resume(struct pci_dev *pci)
return
-
EIO
;
azx_init_pci
(
chip
);
azx_init_chip
(
chip
,
1
);
if
(
snd_hda_codecs_inuse
(
chip
->
bus
))
azx_init_chip
(
chip
,
1
);
snd_hda_resume
(
chip
->
bus
);
snd_power_change_state
(
card
,
SNDRV_CTL_POWER_D0
);
...
...
sound/pci/hda/patch_realtek.c
View file @
ffd34444
...
...
@@ -5381,6 +5381,8 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x1025
,
0x0142
,
"Acer Aspire 7730G"
,
ALC882_FIXUP_ACER_ASPIRE_4930G
),
SND_PCI_QUIRK
(
0x1025
,
0x0155
,
"Packard-Bell M5120"
,
ALC882_FIXUP_PB_M5210
),
SND_PCI_QUIRK
(
0x1025
,
0x021e
,
"Acer Aspire 5739G"
,
ALC882_FIXUP_ACER_ASPIRE_4930G
),
SND_PCI_QUIRK
(
0x1025
,
0x0259
,
"Acer Aspire 5935"
,
ALC889_FIXUP_DAC_ROUTE
),
SND_PCI_QUIRK
(
0x1025
,
0x026b
,
"Acer Aspire 8940G"
,
ALC882_FIXUP_ACER_ASPIRE_8930G
),
SND_PCI_QUIRK
(
0x1025
,
0x0296
,
"Acer Aspire 7736z"
,
ALC882_FIXUP_ACER_ASPIRE_7736
),
...
...
@@ -5414,6 +5416,7 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x106b
,
0x4a00
,
"Macbook 5,2"
,
ALC889_FIXUP_IMAC91_VREF
),
SND_PCI_QUIRK
(
0x1071
,
0x8258
,
"Evesham Voyaeger"
,
ALC882_FIXUP_EAPD
),
SND_PCI_QUIRK
(
0x1462
,
0x7350
,
"MSI-7350"
,
ALC889_FIXUP_CD
),
SND_PCI_QUIRK_VENDOR
(
0x1462
,
"MSI"
,
ALC882_FIXUP_GPIO3
),
SND_PCI_QUIRK
(
0x1458
,
0xa002
,
"Gigabyte EP45-DS3"
,
ALC889_FIXUP_CD
),
SND_PCI_QUIRK
(
0x147b
,
0x107a
,
"Abit AW9D-MAX"
,
ALC882_FIXUP_ABIT_AW9D_MAX
),
...
...
@@ -5614,13 +5617,13 @@ static int patch_alc262(struct hda_codec *codec)
snd_hda_codec_write(codec, 0x1a, 0, AC_VERB_SET_PROC_COEF, tmp | 0x80);
}
#endif
alc_auto_parse_customize_define
(
codec
);
alc_fix_pll_init
(
codec
,
0x20
,
0x0a
,
10
);
alc_pick_fixup
(
codec
,
NULL
,
alc262_fixup_tbl
,
alc262_fixups
);
alc_apply_fixup
(
codec
,
ALC_FIXUP_ACT_PRE_PROBE
);
alc_auto_parse_customize_define
(
codec
);
/* automatic parse from the BIOS config */
err
=
alc262_parse_auto_config
(
codec
);
if
(
err
<
0
)
...
...
@@ -6083,6 +6086,7 @@ static const struct alc_fixup alc269_fixups[] = {
static
const
struct
snd_pci_quirk
alc269_fixup_tbl
[]
=
{
SND_PCI_QUIRK
(
0x103c
,
0x1586
,
"HP"
,
ALC269_FIXUP_MIC2_MUTE_LED
),
SND_PCI_QUIRK
(
0x1043
,
0x1427
,
"Asus Zenbook UX31E"
,
ALC269VB_FIXUP_DMIC
),
SND_PCI_QUIRK
(
0x1043
,
0x1a13
,
"Asus G73Jw"
,
ALC269_FIXUP_ASUS_G73JW
),
SND_PCI_QUIRK
(
0x1043
,
0x16e3
,
"ASUS UX50"
,
ALC269_FIXUP_STEREO_DMIC
),
SND_PCI_QUIRK
(
0x1043
,
0x831a
,
"ASUS P901"
,
ALC269_FIXUP_STEREO_DMIC
),
...
...
@@ -6222,8 +6226,6 @@ static int patch_alc269(struct hda_codec *codec)
spec
->
mixer_nid
=
0x0b
;
alc_auto_parse_customize_define
(
codec
);
err
=
alc_codec_rename_from_preset
(
codec
);
if
(
err
<
0
)
goto
error
;
...
...
@@ -6256,6 +6258,8 @@ static int patch_alc269(struct hda_codec *codec)
alc269_fixup_tbl
,
alc269_fixups
);
alc_apply_fixup
(
codec
,
ALC_FIXUP_ACT_PRE_PROBE
);
alc_auto_parse_customize_define
(
codec
);
/* automatic parse from the BIOS config */
err
=
alc269_parse_auto_config
(
codec
);
if
(
err
<
0
)
...
...
@@ -6831,8 +6835,6 @@ static int patch_alc662(struct hda_codec *codec)
/* handle multiple HPs as is */
spec
->
parse_flags
=
HDA_PINCFG_NO_HP_FIXUP
;
alc_auto_parse_customize_define
(
codec
);
alc_fix_pll_init
(
codec
,
0x20
,
0x04
,
15
);
err
=
alc_codec_rename_from_preset
(
codec
);
...
...
@@ -6849,6 +6851,9 @@ static int patch_alc662(struct hda_codec *codec)
alc_pick_fixup
(
codec
,
alc662_fixup_models
,
alc662_fixup_tbl
,
alc662_fixups
);
alc_apply_fixup
(
codec
,
ALC_FIXUP_ACT_PRE_PROBE
);
alc_auto_parse_customize_define
(
codec
);
/* automatic parse from the BIOS config */
err
=
alc662_parse_auto_config
(
codec
);
if
(
err
<
0
)
...
...
sound/pci/rme9652/hdsp.c
View file @
ffd34444
...
...
@@ -5170,6 +5170,7 @@ static int snd_hdsp_create_hwdep(struct snd_card *card, struct hdsp *hdsp)
strcpy
(
hw
->
name
,
"HDSP hwdep interface"
);
hw
->
ops
.
ioctl
=
snd_hdsp_hwdep_ioctl
;
hw
->
ops
.
ioctl_compat
=
snd_hdsp_hwdep_ioctl
;
return
0
;
}
...
...
sound/soc/blackfin/bf5xx-ssm2602.c
View file @
ffd34444
...
...
@@ -99,6 +99,7 @@ static struct snd_soc_dai_link bf5xx_ssm2602_dai[] = {
.
platform_name
=
"bfin-i2s-pcm-audio"
,
.
codec_name
=
"ssm2602.0-001b"
,
.
ops
=
&
bf5xx_ssm2602_ops
,
.
dai_fmt
=
BF5XX_SSM2602_DAIFMT
,
},
{
.
name
=
"ssm2602"
,
...
...
@@ -108,6 +109,7 @@ static struct snd_soc_dai_link bf5xx_ssm2602_dai[] = {
.
platform_name
=
"bfin-i2s-pcm-audio"
,
.
codec_name
=
"ssm2602.0-001b"
,
.
ops
=
&
bf5xx_ssm2602_ops
,
.
dai_fmt
=
BF5XX_SSM2602_DAIFMT
,
},
};
...
...
sound/soc/codecs/cs42l73.c
View file @
ffd34444
...
...
@@ -929,6 +929,8 @@ static int cs42l73_set_mclk(struct snd_soc_dai *dai, unsigned int freq)
/* MCLKX -> MCLK */
mclkx_coeff
=
cs42l73_get_mclkx_coeff
(
freq
);
if
(
mclkx_coeff
<
0
)
return
mclkx_coeff
;
mclk
=
cs42l73_mclkx_coeffs
[
mclkx_coeff
].
mclkx
/
cs42l73_mclkx_coeffs
[
mclkx_coeff
].
ratio
;
...
...
sound/soc/codecs/tlv320aic23.c
View file @
ffd34444
...
...
@@ -472,7 +472,7 @@ static int tlv320aic23_set_dai_sysclk(struct snd_soc_dai *codec_dai,
static
int
tlv320aic23_set_bias_level
(
struct
snd_soc_codec
*
codec
,
enum
snd_soc_bias_level
level
)
{
u16
reg
=
snd_soc_read
(
codec
,
TLV320AIC23_PWR
)
&
0x
ff
7f
;
u16
reg
=
snd_soc_read
(
codec
,
TLV320AIC23_PWR
)
&
0x
1
7f
;
switch
(
level
)
{
case
SND_SOC_BIAS_ON
:
...
...
@@ -491,7 +491,7 @@ static int tlv320aic23_set_bias_level(struct snd_soc_codec *codec,
case
SND_SOC_BIAS_OFF
:
/* everything off, dac mute, inactive */
snd_soc_write
(
codec
,
TLV320AIC23_ACTIVE
,
0x0
);
snd_soc_write
(
codec
,
TLV320AIC23_PWR
,
0x
ff
ff
);
snd_soc_write
(
codec
,
TLV320AIC23_PWR
,
0x
1
ff
);
break
;
}
codec
->
dapm
.
bias_level
=
level
;
...
...
sound/soc/codecs/wm8350.c
View file @
ffd34444
...
...
@@ -60,7 +60,7 @@ struct wm8350_jack_data {
};
struct
wm8350_data
{
struct
snd_soc_codec
codec
;
struct
wm8350
*
wm8350
;
struct
wm8350_output
out1
;
struct
wm8350_output
out2
;
struct
wm8350_jack_data
hpl
;
...
...
@@ -1309,7 +1309,7 @@ static void wm8350_hp_work(struct wm8350_data *priv,
struct
wm8350_jack_data
*
jack
,
u16
mask
)
{
struct
wm8350
*
wm8350
=
priv
->
codec
.
control_data
;
struct
wm8350
*
wm8350
=
priv
->
wm8350
;
u16
reg
;
int
report
;
...
...
@@ -1342,7 +1342,7 @@ static void wm8350_hpr_work(struct work_struct *work)
static
irqreturn_t
wm8350_hp_jack_handler
(
int
irq
,
void
*
data
)
{
struct
wm8350_data
*
priv
=
data
;
struct
wm8350
*
wm8350
=
priv
->
codec
.
control_data
;
struct
wm8350
*
wm8350
=
priv
->
wm8350
;
struct
wm8350_jack_data
*
jack
=
NULL
;
switch
(
irq
-
wm8350
->
irq_base
)
{
...
...
@@ -1427,7 +1427,7 @@ EXPORT_SYMBOL_GPL(wm8350_hp_jack_detect);
static
irqreturn_t
wm8350_mic_handler
(
int
irq
,
void
*
data
)
{
struct
wm8350_data
*
priv
=
data
;
struct
wm8350
*
wm8350
=
priv
->
codec
.
control_data
;
struct
wm8350
*
wm8350
=
priv
->
wm8350
;
u16
reg
;
int
report
=
0
;
...
...
@@ -1536,6 +1536,8 @@ static int wm8350_codec_probe(struct snd_soc_codec *codec)
return
-
ENOMEM
;
snd_soc_codec_set_drvdata
(
codec
,
priv
);
priv
->
wm8350
=
wm8350
;
for
(
i
=
0
;
i
<
ARRAY_SIZE
(
supply_names
);
i
++
)
priv
->
supplies
[
i
].
supply
=
supply_names
[
i
];
...
...
@@ -1544,7 +1546,6 @@ static int wm8350_codec_probe(struct snd_soc_codec *codec)
if
(
ret
!=
0
)
return
ret
;
wm8350
->
codec
.
codec
=
codec
;
codec
->
control_data
=
wm8350
;
/* Put the codec into reset if it wasn't already */
...
...
sound/soc/codecs/wm8994.c
View file @
ffd34444
This diff is collapsed.
Click to expand it.
sound/soc/codecs/wm_hubs.c
View file @
ffd34444
...
...
@@ -1035,7 +1035,7 @@ void wm_hubs_set_bias_level(struct snd_soc_codec *codec,
enum
snd_soc_bias_level
level
)
{
struct
wm_hubs_data
*
hubs
=
snd_soc_codec_get_drvdata
(
codec
);
int
val
;
int
mask
,
val
;
switch
(
level
)
{
case
SND_SOC_BIAS_STANDBY
:
...
...
@@ -1047,6 +1047,13 @@ void wm_hubs_set_bias_level(struct snd_soc_codec *codec,
case
SND_SOC_BIAS_ON
:
/* Turn off any unneded single ended outputs */
val
=
0
;
mask
=
0
;
if
(
hubs
->
lineout1_se
)
mask
|=
WM8993_LINEOUT1N_ENA
|
WM8993_LINEOUT1P_ENA
;
if
(
hubs
->
lineout2_se
)
mask
|=
WM8993_LINEOUT2N_ENA
|
WM8993_LINEOUT2P_ENA
;
if
(
hubs
->
lineout1_se
&&
hubs
->
lineout1n_ena
)
val
|=
WM8993_LINEOUT1N_ENA
;
...
...
@@ -1061,11 +1068,7 @@ void wm_hubs_set_bias_level(struct snd_soc_codec *codec,
val
|=
WM8993_LINEOUT2P_ENA
;
snd_soc_update_bits
(
codec
,
WM8993_POWER_MANAGEMENT_3
,
WM8993_LINEOUT1N_ENA
|
WM8993_LINEOUT1P_ENA
|
WM8993_LINEOUT2N_ENA
|
WM8993_LINEOUT2P_ENA
,
val
);
mask
,
val
);
/* Remove the input clamps */
snd_soc_update_bits
(
codec
,
WM8993_INPUTS_CLAMP_REG
,
...
...
sound/soc/omap/omap-pcm.c
View file @
ffd34444
...
...
@@ -401,6 +401,10 @@ static int omap_pcm_new(struct snd_soc_pcm_runtime *rtd)
}
out:
/* free preallocated buffers in case of error */
if
(
ret
)
omap_pcm_free_dma_buffers
(
pcm
);
return
ret
;
}
...
...
sound/soc/samsung/s3c2412-i2s.c
View file @
ffd34444
...
...
@@ -166,7 +166,7 @@ static struct snd_soc_dai_driver s3c2412_i2s_dai = {
static
__devinit
int
s3c2412_iis_dev_probe
(
struct
platform_device
*
pdev
)
{
return
s
nd_soc_register_dai
(
&
pdev
->
dev
,
&
s3c2412_i2s_dai
);
return
s
3c_i2sv2_register_dai
(
&
pdev
->
dev
,
-
1
,
&
s3c2412_i2s_dai
);
}
static
__devexit
int
s3c2412_iis_dev_remove
(
struct
platform_device
*
pdev
)
...
...
sound/soc/sh/fsi.c
View file @
ffd34444
...
...
@@ -1001,11 +1001,10 @@ static void fsi_dma_do_tasklet(unsigned long data)
sg_dma_address
(
&
sg
)
=
buf
;
sg_dma_len
(
&
sg
)
=
len
;
desc
=
chan
->
device
->
device_prep_slave_sg
(
chan
,
&
sg
,
1
,
dir
,
DMA_PREP_INTERRUPT
|
DMA_CTRL_ACK
);
desc
=
dmaengine_prep_slave_sg
(
chan
,
&
sg
,
1
,
dir
,
DMA_PREP_INTERRUPT
|
DMA_CTRL_ACK
);
if
(
!
desc
)
{
dev_err
(
dai
->
dev
,
"d
evic
e_prep_slave_sg() fail
\n
"
);
dev_err
(
dai
->
dev
,
"d
maengin
e_prep_slave_sg() fail
\n
"
);
return
;
}
...
...
sound/soc/soc-core.c
View file @
ffd34444
...
...
@@ -3119,6 +3119,7 @@ int snd_soc_register_card(struct snd_soc_card *card)
GFP_KERNEL
);
if
(
card
->
rtd
==
NULL
)
return
-
ENOMEM
;
card
->
num_rtd
=
0
;
card
->
rtd_aux
=
&
card
->
rtd
[
card
->
num_links
];
for
(
i
=
0
;
i
<
card
->
num_links
;
i
++
)
...
...
@@ -3630,10 +3631,10 @@ int snd_soc_of_parse_audio_routing(struct snd_soc_card *card,
int
i
,
ret
;
num_routes
=
of_property_count_strings
(
np
,
propname
);
if
(
num_routes
&
1
)
{
if
(
num_routes
<
0
||
num_routes
&
1
)
{
dev_err
(
card
->
dev
,
"Property '%s'
s length is not even
\n
"
,
propname
);
"Property '%s' does not exist or it
s length is not even
\n
"
,
propname
);
return
-
EINVAL
;
}
num_routes
/=
2
;
...
...
sound/soc/soc-dapm.c
View file @
ffd34444
...
...
@@ -67,6 +67,7 @@ static int dapm_up_seq[] = {
[
snd_soc_dapm_out_drv
]
=
10
,
[
snd_soc_dapm_hp
]
=
10
,
[
snd_soc_dapm_spk
]
=
10
,
[
snd_soc_dapm_line
]
=
10
,
[
snd_soc_dapm_post
]
=
11
,
};
...
...
@@ -75,6 +76,7 @@ static int dapm_down_seq[] = {
[
snd_soc_dapm_adc
]
=
1
,
[
snd_soc_dapm_hp
]
=
2
,
[
snd_soc_dapm_spk
]
=
2
,
[
snd_soc_dapm_line
]
=
2
,
[
snd_soc_dapm_out_drv
]
=
2
,
[
snd_soc_dapm_pga
]
=
4
,
[
snd_soc_dapm_mixer_named_ctl
]
=
5
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment