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
Kirill Smelkov
linux
Commits
6439e5c2
Commit
6439e5c2
authored
Oct 26, 2015
by
Mark Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'asoc/topic/core' into asoc-next
parents
7c9c29ee
6f0c4226
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
30 additions
and
15 deletions
+30
-15
include/sound/soc-dai.h
include/sound/soc-dai.h
+1
-1
include/sound/soc.h
include/sound/soc.h
+4
-2
sound/soc/Kconfig
sound/soc/Kconfig
+4
-1
sound/soc/Makefile
sound/soc/Makefile
+2
-1
sound/soc/intel/Kconfig
sound/soc/intel/Kconfig
+1
-0
sound/soc/intel/atom/sst-mfld-platform-pcm.c
sound/soc/intel/atom/sst-mfld-platform-pcm.c
+1
-1
sound/soc/omap/rx51.c
sound/soc/omap/rx51.c
+1
-1
sound/soc/soc-compress.c
sound/soc/soc-compress.c
+10
-2
sound/soc/soc-core.c
sound/soc/soc-core.c
+2
-2
sound/soc/soc-ops.c
sound/soc/soc-ops.c
+4
-4
No files found.
include/sound/soc-dai.h
View file @
6439e5c2
...
@@ -214,7 +214,7 @@ struct snd_soc_dai_driver {
...
@@ -214,7 +214,7 @@ struct snd_soc_dai_driver {
int
(
*
suspend
)(
struct
snd_soc_dai
*
dai
);
int
(
*
suspend
)(
struct
snd_soc_dai
*
dai
);
int
(
*
resume
)(
struct
snd_soc_dai
*
dai
);
int
(
*
resume
)(
struct
snd_soc_dai
*
dai
);
/* compress dai */
/* compress dai */
bool
compress_dai
;
int
(
*
compress_new
)(
struct
snd_soc_pcm_runtime
*
rtd
,
int
num
)
;
/* DAI is also used for the control bus */
/* DAI is also used for the control bus */
bool
bus_control
;
bool
bus_control
;
...
...
include/sound/soc.h
View file @
6439e5c2
...
@@ -452,7 +452,9 @@ int snd_soc_platform_read(struct snd_soc_platform *platform,
...
@@ -452,7 +452,9 @@ int snd_soc_platform_read(struct snd_soc_platform *platform,
int
snd_soc_platform_write
(
struct
snd_soc_platform
*
platform
,
int
snd_soc_platform_write
(
struct
snd_soc_platform
*
platform
,
unsigned
int
reg
,
unsigned
int
val
);
unsigned
int
reg
,
unsigned
int
val
);
int
soc_new_pcm
(
struct
snd_soc_pcm_runtime
*
rtd
,
int
num
);
int
soc_new_pcm
(
struct
snd_soc_pcm_runtime
*
rtd
,
int
num
);
int
soc_new_compress
(
struct
snd_soc_pcm_runtime
*
rtd
,
int
num
);
#ifdef CONFIG_SND_SOC_COMPRESS
int
snd_soc_new_compress
(
struct
snd_soc_pcm_runtime
*
rtd
,
int
num
);
#endif
struct
snd_pcm_substream
*
snd_soc_get_dai_substream
(
struct
snd_soc_card
*
card
,
struct
snd_pcm_substream
*
snd_soc_get_dai_substream
(
struct
snd_soc_card
*
card
,
const
char
*
dai_link
,
int
stream
);
const
char
*
dai_link
,
int
stream
);
...
@@ -605,7 +607,7 @@ int snd_soc_put_volsw_range(struct snd_kcontrol *kcontrol,
...
@@ -605,7 +607,7 @@ int snd_soc_put_volsw_range(struct snd_kcontrol *kcontrol,
struct
snd_ctl_elem_value
*
ucontrol
);
struct
snd_ctl_elem_value
*
ucontrol
);
int
snd_soc_get_volsw_range
(
struct
snd_kcontrol
*
kcontrol
,
int
snd_soc_get_volsw_range
(
struct
snd_kcontrol
*
kcontrol
,
struct
snd_ctl_elem_value
*
ucontrol
);
struct
snd_ctl_elem_value
*
ucontrol
);
int
snd_soc_limit_volume
(
struct
snd_soc_c
odec
*
codec
,
int
snd_soc_limit_volume
(
struct
snd_soc_c
ard
*
card
,
const
char
*
name
,
int
max
);
const
char
*
name
,
int
max
);
int
snd_soc_bytes_info
(
struct
snd_kcontrol
*
kcontrol
,
int
snd_soc_bytes_info
(
struct
snd_kcontrol
*
kcontrol
,
struct
snd_ctl_elem_info
*
uinfo
);
struct
snd_ctl_elem_info
*
uinfo
);
...
...
sound/soc/Kconfig
View file @
6439e5c2
...
@@ -9,7 +9,6 @@ menuconfig SND_SOC
...
@@ -9,7 +9,6 @@ menuconfig SND_SOC
select SND_JACK if INPUT=y || INPUT=SND
select SND_JACK if INPUT=y || INPUT=SND
select REGMAP_I2C if I2C
select REGMAP_I2C if I2C
select REGMAP_SPI if SPI_MASTER
select REGMAP_SPI if SPI_MASTER
select SND_COMPRESS_OFFLOAD
---help---
---help---
If you want ASoC support, you should say Y here and also to the
If you want ASoC support, you should say Y here and also to the
...
@@ -30,6 +29,10 @@ config SND_SOC_GENERIC_DMAENGINE_PCM
...
@@ -30,6 +29,10 @@ config SND_SOC_GENERIC_DMAENGINE_PCM
bool
bool
select SND_DMAENGINE_PCM
select SND_DMAENGINE_PCM
config SND_SOC_COMPRESS
bool
select SND_COMPRESS_OFFLOAD
config SND_SOC_TOPOLOGY
config SND_SOC_TOPOLOGY
bool
bool
...
...
sound/soc/Makefile
View file @
6439e5c2
snd-soc-core-objs
:=
soc-core.o soc-dapm.o soc-jack.o soc-cache.o soc-utils.o
snd-soc-core-objs
:=
soc-core.o soc-dapm.o soc-jack.o soc-cache.o soc-utils.o
snd-soc-core-objs
+=
soc-pcm.o soc-compress.o soc-io.o soc-devres.o soc-ops.o
snd-soc-core-objs
+=
soc-pcm.o soc-io.o soc-devres.o soc-ops.o
snd-soc-core-$(CONFIG_SND_SOC_COMPRESS)
+=
soc-compress.o
ifneq
($(CONFIG_SND_SOC_TOPOLOGY),)
ifneq
($(CONFIG_SND_SOC_TOPOLOGY),)
snd-soc-core-objs
+=
soc-topology.o
snd-soc-core-objs
+=
soc-topology.o
...
...
sound/soc/intel/Kconfig
View file @
6439e5c2
...
@@ -12,6 +12,7 @@ config SND_MFLD_MACHINE
...
@@ -12,6 +12,7 @@ config SND_MFLD_MACHINE
config SND_SST_MFLD_PLATFORM
config SND_SST_MFLD_PLATFORM
tristate
tristate
select SND_SOC_COMPRESS
config SND_SST_IPC
config SND_SST_IPC
tristate
tristate
...
...
sound/soc/intel/atom/sst-mfld-platform-pcm.c
View file @
6439e5c2
...
@@ -512,7 +512,7 @@ static struct snd_soc_dai_driver sst_platform_dai[] = {
...
@@ -512,7 +512,7 @@ static struct snd_soc_dai_driver sst_platform_dai[] = {
},
},
{
{
.
name
=
"compress-cpu-dai"
,
.
name
=
"compress-cpu-dai"
,
.
compress_
dai
=
1
,
.
compress_
new
=
snd_soc_new_compress
,
.
ops
=
&
sst_compr_dai_ops
,
.
ops
=
&
sst_compr_dai_ops
,
.
playback
=
{
.
playback
=
{
.
stream_name
=
"Compress Playback"
,
.
stream_name
=
"Compress Playback"
,
...
...
sound/soc/omap/rx51.c
View file @
6439e5c2
...
@@ -297,7 +297,7 @@ static int rx51_aic34_init(struct snd_soc_pcm_runtime *rtd)
...
@@ -297,7 +297,7 @@ static int rx51_aic34_init(struct snd_soc_pcm_runtime *rtd)
dev_err
(
card
->
dev
,
"Failed to add TPA6130A2 controls
\n
"
);
dev_err
(
card
->
dev
,
"Failed to add TPA6130A2 controls
\n
"
);
return
err
;
return
err
;
}
}
snd_soc_limit_volume
(
c
odec
,
"TPA6130A2 Headphone Playback Volume"
,
42
);
snd_soc_limit_volume
(
c
ard
,
"TPA6130A2 Headphone Playback Volume"
,
42
);
err
=
omap_mcbsp_st_add_controls
(
rtd
,
2
);
err
=
omap_mcbsp_st_add_controls
(
rtd
,
2
);
if
(
err
<
0
)
{
if
(
err
<
0
)
{
...
...
sound/soc/soc-compress.c
View file @
6439e5c2
...
@@ -612,8 +612,15 @@ static struct snd_compr_ops soc_compr_dyn_ops = {
...
@@ -612,8 +612,15 @@ static struct snd_compr_ops soc_compr_dyn_ops = {
.
get_codec_caps
=
soc_compr_get_codec_caps
.
get_codec_caps
=
soc_compr_get_codec_caps
};
};
/* create a new compress */
/**
int
soc_new_compress
(
struct
snd_soc_pcm_runtime
*
rtd
,
int
num
)
* snd_soc_new_compress - create a new compress.
*
* @rtd: The runtime for which we will create compress
* @num: the device index number (zero based - shared with normal PCMs)
*
* Return: 0 for success, else error.
*/
int
snd_soc_new_compress
(
struct
snd_soc_pcm_runtime
*
rtd
,
int
num
)
{
{
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
struct
snd_soc_codec
*
codec
=
rtd
->
codec
;
struct
snd_soc_platform
*
platform
=
rtd
->
platform
;
struct
snd_soc_platform
*
platform
=
rtd
->
platform
;
...
@@ -703,3 +710,4 @@ int soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num)
...
@@ -703,3 +710,4 @@ int soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num)
kfree
(
compr
);
kfree
(
compr
);
return
ret
;
return
ret
;
}
}
EXPORT_SYMBOL_GPL
(
snd_soc_new_compress
);
sound/soc/soc-core.c
View file @
6439e5c2
...
@@ -1370,9 +1370,9 @@ static int soc_probe_link_dais(struct snd_soc_card *card, int num, int order)
...
@@ -1370,9 +1370,9 @@ static int soc_probe_link_dais(struct snd_soc_card *card, int num, int order)
soc_dpcm_debugfs_add
(
rtd
);
soc_dpcm_debugfs_add
(
rtd
);
#endif
#endif
if
(
cpu_dai
->
driver
->
compress_
dai
)
{
if
(
cpu_dai
->
driver
->
compress_
new
)
{
/*create compress_device"*/
/*create compress_device"*/
ret
=
soc_new_compress
(
rtd
,
num
);
ret
=
cpu_dai
->
driver
->
compress_new
(
rtd
,
num
);
if
(
ret
<
0
)
{
if
(
ret
<
0
)
{
dev_err
(
card
->
dev
,
"ASoC: can't create compress %s
\n
"
,
dev_err
(
card
->
dev
,
"ASoC: can't create compress %s
\n
"
,
dai_link
->
stream_name
);
dai_link
->
stream_name
);
...
...
sound/soc/soc-ops.c
View file @
6439e5c2
...
@@ -588,16 +588,16 @@ EXPORT_SYMBOL_GPL(snd_soc_get_volsw_range);
...
@@ -588,16 +588,16 @@ EXPORT_SYMBOL_GPL(snd_soc_get_volsw_range);
/**
/**
* snd_soc_limit_volume - Set new limit to an existing volume control.
* snd_soc_limit_volume - Set new limit to an existing volume control.
*
*
* @c
odec
: where to look for the control
* @c
ard
: where to look for the control
* @name: Name of the control
* @name: Name of the control
* @max: new maximum limit
* @max: new maximum limit
*
*
* Return 0 for success, else error.
* Return 0 for success, else error.
*/
*/
int
snd_soc_limit_volume
(
struct
snd_soc_c
odec
*
codec
,
int
snd_soc_limit_volume
(
struct
snd_soc_c
ard
*
card
,
const
char
*
name
,
int
max
)
const
char
*
name
,
int
max
)
{
{
struct
snd_card
*
card
=
codec
->
component
.
card
->
snd_card
;
struct
snd_card
*
snd_card
=
card
->
snd_card
;
struct
snd_kcontrol
*
kctl
;
struct
snd_kcontrol
*
kctl
;
struct
soc_mixer_control
*
mc
;
struct
soc_mixer_control
*
mc
;
int
found
=
0
;
int
found
=
0
;
...
@@ -607,7 +607,7 @@ int snd_soc_limit_volume(struct snd_soc_codec *codec,
...
@@ -607,7 +607,7 @@ int snd_soc_limit_volume(struct snd_soc_codec *codec,
if
(
unlikely
(
!
name
||
max
<=
0
))
if
(
unlikely
(
!
name
||
max
<=
0
))
return
-
EINVAL
;
return
-
EINVAL
;
list_for_each_entry
(
kctl
,
&
card
->
controls
,
list
)
{
list_for_each_entry
(
kctl
,
&
snd_
card
->
controls
,
list
)
{
if
(
!
strncmp
(
kctl
->
id
.
name
,
name
,
sizeof
(
kctl
->
id
.
name
)))
{
if
(
!
strncmp
(
kctl
->
id
.
name
,
name
,
sizeof
(
kctl
->
id
.
name
)))
{
found
=
1
;
found
=
1
;
break
;
break
;
...
...
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