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
3025df7f
Commit
3025df7f
authored
Mar 13, 2014
by
Mark Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'asoc/topic/pxa' into asoc-next
parents
7d501414
079942ab
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
25 additions
and
44 deletions
+25
-44
sound/soc/pxa/magician.c
sound/soc/pxa/magician.c
+12
-22
sound/soc/pxa/tosa.c
sound/soc/pxa/tosa.c
+13
-22
No files found.
sound/soc/pxa/magician.c
View file @
3025df7f
...
@@ -41,9 +41,8 @@ static int magician_hp_switch;
...
@@ -41,9 +41,8 @@ static int magician_hp_switch;
static
int
magician_spk_switch
=
1
;
static
int
magician_spk_switch
=
1
;
static
int
magician_in_sel
=
MAGICIAN_MIC
;
static
int
magician_in_sel
=
MAGICIAN_MIC
;
static
void
magician_ext_control
(
struct
snd_soc_
codec
*
codec
)
static
void
magician_ext_control
(
struct
snd_soc_
dapm_context
*
dapm
)
{
{
struct
snd_soc_dapm_context
*
dapm
=
&
codec
->
dapm
;
snd_soc_dapm_mutex_lock
(
dapm
);
snd_soc_dapm_mutex_lock
(
dapm
);
...
@@ -75,10 +74,9 @@ static void magician_ext_control(struct snd_soc_codec *codec)
...
@@ -75,10 +74,9 @@ static void magician_ext_control(struct snd_soc_codec *codec)
static
int
magician_startup
(
struct
snd_pcm_substream
*
substream
)
static
int
magician_startup
(
struct
snd_pcm_substream
*
substream
)
{
{
struct
snd_soc_pcm_runtime
*
rtd
=
substream
->
private_data
;
struct
snd_soc_pcm_runtime
*
rtd
=
substream
->
private_data
;
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
/* check the jack status at stream startup */
/* check the jack status at stream startup */
magician_ext_control
(
codec
);
magician_ext_control
(
&
rtd
->
card
->
dapm
);
return
0
;
return
0
;
}
}
...
@@ -277,13 +275,13 @@ static int magician_get_hp(struct snd_kcontrol *kcontrol,
...
@@ -277,13 +275,13 @@ static int magician_get_hp(struct snd_kcontrol *kcontrol,
static
int
magician_set_hp
(
struct
snd_kcontrol
*
kcontrol
,
static
int
magician_set_hp
(
struct
snd_kcontrol
*
kcontrol
,
struct
snd_ctl_elem_value
*
ucontrol
)
struct
snd_ctl_elem_value
*
ucontrol
)
{
{
struct
snd_soc_c
odec
*
codec
=
snd_kcontrol_chip
(
kcontrol
);
struct
snd_soc_c
ard
*
card
=
snd_kcontrol_chip
(
kcontrol
);
if
(
magician_hp_switch
==
ucontrol
->
value
.
integer
.
value
[
0
])
if
(
magician_hp_switch
==
ucontrol
->
value
.
integer
.
value
[
0
])
return
0
;
return
0
;
magician_hp_switch
=
ucontrol
->
value
.
integer
.
value
[
0
];
magician_hp_switch
=
ucontrol
->
value
.
integer
.
value
[
0
];
magician_ext_control
(
codec
);
magician_ext_control
(
&
card
->
dapm
);
return
1
;
return
1
;
}
}
...
@@ -297,13 +295,13 @@ static int magician_get_spk(struct snd_kcontrol *kcontrol,
...
@@ -297,13 +295,13 @@ static int magician_get_spk(struct snd_kcontrol *kcontrol,
static
int
magician_set_spk
(
struct
snd_kcontrol
*
kcontrol
,
static
int
magician_set_spk
(
struct
snd_kcontrol
*
kcontrol
,
struct
snd_ctl_elem_value
*
ucontrol
)
struct
snd_ctl_elem_value
*
ucontrol
)
{
{
struct
snd_soc_c
odec
*
codec
=
snd_kcontrol_chip
(
kcontrol
);
struct
snd_soc_c
ard
*
card
=
snd_kcontrol_chip
(
kcontrol
);
if
(
magician_spk_switch
==
ucontrol
->
value
.
integer
.
value
[
0
])
if
(
magician_spk_switch
==
ucontrol
->
value
.
integer
.
value
[
0
])
return
0
;
return
0
;
magician_spk_switch
=
ucontrol
->
value
.
integer
.
value
[
0
];
magician_spk_switch
=
ucontrol
->
value
.
integer
.
value
[
0
];
magician_ext_control
(
codec
);
magician_ext_control
(
&
card
->
dapm
);
return
1
;
return
1
;
}
}
...
@@ -400,7 +398,6 @@ static int magician_uda1380_init(struct snd_soc_pcm_runtime *rtd)
...
@@ -400,7 +398,6 @@ static int magician_uda1380_init(struct snd_soc_pcm_runtime *rtd)
{
{
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
struct
snd_soc_dapm_context
*
dapm
=
&
codec
->
dapm
;
struct
snd_soc_dapm_context
*
dapm
=
&
codec
->
dapm
;
int
err
;
/* NC codec pins */
/* NC codec pins */
snd_soc_dapm_nc_pin
(
dapm
,
"VOUTLHP"
);
snd_soc_dapm_nc_pin
(
dapm
,
"VOUTLHP"
);
...
@@ -410,19 +407,6 @@ static int magician_uda1380_init(struct snd_soc_pcm_runtime *rtd)
...
@@ -410,19 +407,6 @@ static int magician_uda1380_init(struct snd_soc_pcm_runtime *rtd)
snd_soc_dapm_nc_pin
(
dapm
,
"VINL"
);
snd_soc_dapm_nc_pin
(
dapm
,
"VINL"
);
snd_soc_dapm_nc_pin
(
dapm
,
"VINR"
);
snd_soc_dapm_nc_pin
(
dapm
,
"VINR"
);
/* Add magician specific controls */
err
=
snd_soc_add_codec_controls
(
codec
,
uda1380_magician_controls
,
ARRAY_SIZE
(
uda1380_magician_controls
));
if
(
err
<
0
)
return
err
;
/* Add magician specific widgets */
snd_soc_dapm_new_controls
(
dapm
,
uda1380_dapm_widgets
,
ARRAY_SIZE
(
uda1380_dapm_widgets
));
/* Set up magician specific audio path interconnects */
snd_soc_dapm_add_routes
(
dapm
,
audio_map
,
ARRAY_SIZE
(
audio_map
));
return
0
;
return
0
;
}
}
...
@@ -456,6 +440,12 @@ static struct snd_soc_card snd_soc_card_magician = {
...
@@ -456,6 +440,12 @@ static struct snd_soc_card snd_soc_card_magician = {
.
dai_link
=
magician_dai
,
.
dai_link
=
magician_dai
,
.
num_links
=
ARRAY_SIZE
(
magician_dai
),
.
num_links
=
ARRAY_SIZE
(
magician_dai
),
.
controls
=
uda1380_magician_controls
,
.
num_controls
=
ARRAY_SIZE
(
uda1380_magician_controls
),
.
dapm_widgets
=
uda1380_dapm_widgets
,
.
num_dapm_widgets
=
ARRAY_SIZE
(
uda1380_dapm_widgets
),
.
dapm_routes
=
audio_map
,
.
num_dapm_routes
=
ARRAY_SIZE
(
audio_map
),
};
};
static
struct
platform_device
*
magician_snd_device
;
static
struct
platform_device
*
magician_snd_device
;
...
...
sound/soc/pxa/tosa.c
View file @
3025df7f
...
@@ -44,9 +44,8 @@
...
@@ -44,9 +44,8 @@
static
int
tosa_jack_func
;
static
int
tosa_jack_func
;
static
int
tosa_spk_func
;
static
int
tosa_spk_func
;
static
void
tosa_ext_control
(
struct
snd_soc_
codec
*
codec
)
static
void
tosa_ext_control
(
struct
snd_soc_
dapm_context
*
dapm
)
{
{
struct
snd_soc_dapm_context
*
dapm
=
&
codec
->
dapm
;
snd_soc_dapm_mutex_lock
(
dapm
);
snd_soc_dapm_mutex_lock
(
dapm
);
...
@@ -82,10 +81,9 @@ static void tosa_ext_control(struct snd_soc_codec *codec)
...
@@ -82,10 +81,9 @@ static void tosa_ext_control(struct snd_soc_codec *codec)
static
int
tosa_startup
(
struct
snd_pcm_substream
*
substream
)
static
int
tosa_startup
(
struct
snd_pcm_substream
*
substream
)
{
{
struct
snd_soc_pcm_runtime
*
rtd
=
substream
->
private_data
;
struct
snd_soc_pcm_runtime
*
rtd
=
substream
->
private_data
;
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
/* check the jack status at stream startup */
/* check the jack status at stream startup */
tosa_ext_control
(
codec
);
tosa_ext_control
(
&
rtd
->
card
->
dapm
);
return
0
;
return
0
;
}
}
...
@@ -104,13 +102,13 @@ static int tosa_get_jack(struct snd_kcontrol *kcontrol,
...
@@ -104,13 +102,13 @@ static int tosa_get_jack(struct snd_kcontrol *kcontrol,
static
int
tosa_set_jack
(
struct
snd_kcontrol
*
kcontrol
,
static
int
tosa_set_jack
(
struct
snd_kcontrol
*
kcontrol
,
struct
snd_ctl_elem_value
*
ucontrol
)
struct
snd_ctl_elem_value
*
ucontrol
)
{
{
struct
snd_soc_c
odec
*
codec
=
snd_kcontrol_chip
(
kcontrol
);
struct
snd_soc_c
ard
*
card
=
snd_kcontrol_chip
(
kcontrol
);
if
(
tosa_jack_func
==
ucontrol
->
value
.
integer
.
value
[
0
])
if
(
tosa_jack_func
==
ucontrol
->
value
.
integer
.
value
[
0
])
return
0
;
return
0
;
tosa_jack_func
=
ucontrol
->
value
.
integer
.
value
[
0
];
tosa_jack_func
=
ucontrol
->
value
.
integer
.
value
[
0
];
tosa_ext_control
(
codec
);
tosa_ext_control
(
&
card
->
dapm
);
return
1
;
return
1
;
}
}
...
@@ -124,13 +122,13 @@ static int tosa_get_spk(struct snd_kcontrol *kcontrol,
...
@@ -124,13 +122,13 @@ static int tosa_get_spk(struct snd_kcontrol *kcontrol,
static
int
tosa_set_spk
(
struct
snd_kcontrol
*
kcontrol
,
static
int
tosa_set_spk
(
struct
snd_kcontrol
*
kcontrol
,
struct
snd_ctl_elem_value
*
ucontrol
)
struct
snd_ctl_elem_value
*
ucontrol
)
{
{
struct
snd_soc_c
odec
*
codec
=
snd_kcontrol_chip
(
kcontrol
);
struct
snd_soc_c
ard
*
card
=
snd_kcontrol_chip
(
kcontrol
);
if
(
tosa_spk_func
==
ucontrol
->
value
.
integer
.
value
[
0
])
if
(
tosa_spk_func
==
ucontrol
->
value
.
integer
.
value
[
0
])
return
0
;
return
0
;
tosa_spk_func
=
ucontrol
->
value
.
integer
.
value
[
0
];
tosa_spk_func
=
ucontrol
->
value
.
integer
.
value
[
0
];
tosa_ext_control
(
codec
);
tosa_ext_control
(
&
card
->
dapm
);
return
1
;
return
1
;
}
}
...
@@ -191,24 +189,10 @@ static int tosa_ac97_init(struct snd_soc_pcm_runtime *rtd)
...
@@ -191,24 +189,10 @@ static int tosa_ac97_init(struct snd_soc_pcm_runtime *rtd)
{
{
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
struct
snd_soc_dapm_context
*
dapm
=
&
codec
->
dapm
;
struct
snd_soc_dapm_context
*
dapm
=
&
codec
->
dapm
;
int
err
;
snd_soc_dapm_nc_pin
(
dapm
,
"OUT3"
);
snd_soc_dapm_nc_pin
(
dapm
,
"OUT3"
);
snd_soc_dapm_nc_pin
(
dapm
,
"MONOOUT"
);
snd_soc_dapm_nc_pin
(
dapm
,
"MONOOUT"
);
/* add tosa specific controls */
err
=
snd_soc_add_codec_controls
(
codec
,
tosa_controls
,
ARRAY_SIZE
(
tosa_controls
));
if
(
err
<
0
)
return
err
;
/* add tosa specific widgets */
snd_soc_dapm_new_controls
(
dapm
,
tosa_dapm_widgets
,
ARRAY_SIZE
(
tosa_dapm_widgets
));
/* set up tosa specific audio path audio_map */
snd_soc_dapm_add_routes
(
dapm
,
audio_map
,
ARRAY_SIZE
(
audio_map
));
return
0
;
return
0
;
}
}
...
@@ -239,6 +223,13 @@ static struct snd_soc_card tosa = {
...
@@ -239,6 +223,13 @@ static struct snd_soc_card tosa = {
.
owner
=
THIS_MODULE
,
.
owner
=
THIS_MODULE
,
.
dai_link
=
tosa_dai
,
.
dai_link
=
tosa_dai
,
.
num_links
=
ARRAY_SIZE
(
tosa_dai
),
.
num_links
=
ARRAY_SIZE
(
tosa_dai
),
.
controls
=
tosa_controls
,
.
num_controls
=
ARRAY_SIZE
(
tosa_controls
),
.
dapm_widgets
=
tosa_dapm_widgets
,
.
num_dapm_widgets
=
ARRAY_SIZE
(
tosa_dapm_widgets
),
.
dapm_routes
=
audio_map
,
.
num_dapm_routes
=
ARRAY_SIZE
(
audio_map
),
};
};
static
int
tosa_probe
(
struct
platform_device
*
pdev
)
static
int
tosa_probe
(
struct
platform_device
*
pdev
)
...
...
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