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
5ab775c7
Commit
5ab775c7
authored
Jun 13, 2011
by
Takashi Iwai
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'fix/hda' into topic/hda
parents
8b0bd226
2308f4ad
Changes
17
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
96 additions
and
66 deletions
+96
-66
sound/core/misc.c
sound/core/misc.c
+17
-23
sound/pci/emu10k1/emu10k1_main.c
sound/pci/emu10k1/emu10k1_main.c
+8
-0
sound/pci/hda/hda_beep.h
sound/pci/hda/hda_beep.h
+7
-2
sound/pci/hda/patch_conexant.c
sound/pci/hda/patch_conexant.c
+1
-0
sound/pci/hda/patch_realtek.c
sound/pci/hda/patch_realtek.c
+10
-8
sound/pci/rme9652/hdspm.c
sound/pci/rme9652/hdspm.c
+6
-2
sound/soc/atmel/atmel_ssc_dai.c
sound/soc/atmel/atmel_ssc_dai.c
+3
-2
sound/soc/blackfin/bf5xx-ad1836.c
sound/soc/blackfin/bf5xx-ad1836.c
+2
-2
sound/soc/codecs/ad1836.c
sound/soc/codecs/ad1836.c
+7
-7
sound/soc/codecs/ad1836.h
sound/soc/codecs/ad1836.h
+6
-0
sound/soc/codecs/wm8804.c
sound/soc/codecs/wm8804.c
+7
-2
sound/soc/codecs/wm8915.c
sound/soc/codecs/wm8915.c
+2
-1
sound/soc/codecs/wm8962.c
sound/soc/codecs/wm8962.c
+2
-2
sound/soc/fsl/fsl_dma.c
sound/soc/fsl/fsl_dma.c
+5
-4
sound/soc/samsung/i2s.c
sound/soc/samsung/i2s.c
+2
-2
sound/soc/soc-cache.c
sound/soc/soc-cache.c
+3
-0
sound/soc/soc-dapm.c
sound/soc/soc-dapm.c
+8
-9
No files found.
sound/core/misc.c
View file @
5ab775c7
...
...
@@ -58,26 +58,6 @@ static const char *sanity_file_name(const char *path)
else
return
path
;
}
/* print file and line with a certain printk prefix */
static
int
print_snd_pfx
(
unsigned
int
level
,
const
char
*
path
,
int
line
,
const
char
*
format
)
{
const
char
*
file
=
sanity_file_name
(
path
);
char
tmp
[]
=
"<0>"
;
const
char
*
pfx
=
level
?
KERN_DEBUG
:
KERN_DEFAULT
;
int
ret
=
0
;
if
(
format
[
0
]
==
'<'
&&
format
[
2
]
==
'>'
)
{
tmp
[
1
]
=
format
[
1
];
pfx
=
tmp
;
ret
=
1
;
}
printk
(
"%sALSA %s:%d: "
,
pfx
,
file
,
line
);
return
ret
;
}
#else
#define print_snd_pfx(level, path, line, format) 0
#endif
#if defined(CONFIG_SND_DEBUG) || defined(CONFIG_SND_VERBOSE_PRINTK)
...
...
@@ -85,15 +65,29 @@ void __snd_printk(unsigned int level, const char *path, int line,
const
char
*
format
,
...)
{
va_list
args
;
#ifdef CONFIG_SND_VERBOSE_PRINTK
struct
va_format
vaf
;
char
verbose_fmt
[]
=
KERN_DEFAULT
"ALSA %s:%d %pV"
;
#endif
#ifdef CONFIG_SND_DEBUG
if
(
debug
<
level
)
return
;
#endif
va_start
(
args
,
format
);
if
(
print_snd_pfx
(
level
,
path
,
line
,
format
))
format
+=
3
;
/* skip the printk level-prefix */
#ifdef CONFIG_SND_VERBOSE_PRINTK
vaf
.
fmt
=
format
;
vaf
.
va
=
&
args
;
if
(
format
[
0
]
==
'<'
&&
format
[
2
]
==
'>'
)
{
memcpy
(
verbose_fmt
,
format
,
3
);
vaf
.
fmt
=
format
+
3
;
}
else
if
(
level
)
memcpy
(
verbose_fmt
,
KERN_DEBUG
,
3
);
printk
(
verbose_fmt
,
sanity_file_name
(
path
),
line
,
&
vaf
);
#else
vprintk
(
format
,
args
);
#endif
va_end
(
args
);
}
EXPORT_SYMBOL_GPL
(
__snd_printk
);
...
...
sound/pci/emu10k1/emu10k1_main.c
View file @
5ab775c7
...
...
@@ -1440,6 +1440,14 @@ static struct snd_emu_chip_details emu_chip_details[] = {
.
ca0102_chip
=
1
,
.
spk71
=
1
,
.
emu_model
=
EMU_MODEL_EMU0404
},
/* EMU 0404 */
/* EMU0404 PCIe */
{.
vendor
=
0x1102
,
.
device
=
0x0008
,
.
subsystem
=
0x40051102
,
.
driver
=
"Audigy2"
,
.
name
=
"E-mu 0404 PCIe [MAEM8984]"
,
.
id
=
"EMU0404"
,
.
emu10k2_chip
=
1
,
.
ca0108_chip
=
1
,
.
spk71
=
1
,
.
emu_model
=
EMU_MODEL_EMU0404
},
/* EMU 0404 PCIe ver_03 */
/* Note that all E-mu cards require kernel 2.6 or newer. */
{.
vendor
=
0x1102
,
.
device
=
0x0008
,
.
driver
=
"Audigy2"
,
.
name
=
"SB Audigy 2 Value [Unknown]"
,
...
...
sound/pci/hda/hda_beep.h
View file @
5ab775c7
...
...
@@ -50,7 +50,12 @@ int snd_hda_enable_beep_device(struct hda_codec *codec, int enable);
int
snd_hda_attach_beep_device
(
struct
hda_codec
*
codec
,
int
nid
);
void
snd_hda_detach_beep_device
(
struct
hda_codec
*
codec
);
#else
#define snd_hda_attach_beep_device(...) 0
#define snd_hda_detach_beep_device(...)
static
inline
int
snd_hda_attach_beep_device
(
struct
hda_codec
*
codec
,
int
nid
)
{
return
0
;
}
void
snd_hda_detach_beep_device
(
struct
hda_codec
*
codec
)
{
}
#endif
#endif
sound/pci/hda/patch_conexant.c
View file @
5ab775c7
...
...
@@ -3103,6 +3103,7 @@ static const struct snd_pci_quirk cxt5066_cfg_tbl[] = {
SND_PCI_QUIRK
(
0x17aa
,
0x38af
,
"Lenovo G560"
,
CXT5066_ASUS
),
SND_PCI_QUIRK
(
0x17aa
,
0x3938
,
"Lenovo G565"
,
CXT5066_AUTO
),
SND_PCI_QUIRK_VENDOR
(
0x17aa
,
"Lenovo"
,
CXT5066_IDEAPAD
),
/* Fallback for Lenovos without dock mic */
SND_PCI_QUIRK
(
0x1b0a
,
0x2092
,
"CyberpowerPC Gamer Xplorer N57001"
,
CXT5066_AUTO
),
{}
};
...
...
sound/pci/hda/patch_realtek.c
View file @
5ab775c7
...
...
@@ -1141,6 +1141,13 @@ static void update_speakers(struct hda_codec *codec)
struct
alc_spec
*
spec
=
codec
->
spec
;
int
on
;
/* Control HP pins/amps depending on master_mute state;
* in general, HP pins/amps control should be enabled in all cases,
* but currently set only for master_mute, just to be safe
*/
do_automute
(
codec
,
ARRAY_SIZE
(
spec
->
autocfg
.
hp_pins
),
spec
->
autocfg
.
hp_pins
,
spec
->
master_mute
,
true
);
if
(
!
spec
->
automute
)
on
=
0
;
else
...
...
@@ -6202,11 +6209,6 @@ static const struct snd_kcontrol_new alc260_input_mixer[] = {
/* update HP, line and mono out pins according to the master switch */
static
void
alc260_hp_master_update
(
struct
hda_codec
*
codec
)
{
struct
alc_spec
*
spec
=
codec
->
spec
;
/* change HP pins */
do_automute
(
codec
,
ARRAY_SIZE
(
spec
->
autocfg
.
hp_pins
),
spec
->
autocfg
.
hp_pins
,
spec
->
master_mute
,
true
);
update_speakers
(
codec
);
}
...
...
@@ -11925,7 +11927,7 @@ static const struct hda_verb alc262_nec_verbs[] = {
* 0x1b = port replicator headphone out
*/
#define ALC_HP_EVENT
0x37
#define ALC_HP_EVENT
ALC880_HP_EVENT
static
const
struct
hda_verb
alc262_fujitsu_unsol_verbs
[]
=
{
{
0x14
,
AC_VERB_SET_UNSOLICITED_ENABLE
,
AC_USRSP_EN
|
ALC_HP_EVENT
},
...
...
@@ -13315,9 +13317,8 @@ static void alc268_acer_lc_setup(struct hda_codec *codec)
struct
alc_spec
*
spec
=
codec
->
spec
;
spec
->
autocfg
.
hp_pins
[
0
]
=
0x15
;
spec
->
autocfg
.
speaker_pins
[
0
]
=
0x14
;
spec
->
automute_mixer_nid
[
0
]
=
0x0f
;
spec
->
automute
=
1
;
spec
->
automute_mode
=
ALC_AUTOMUTE_
MIXER
;
spec
->
automute_mode
=
ALC_AUTOMUTE_
AMP
;
spec
->
ext_mic
.
pin
=
0x18
;
spec
->
ext_mic
.
mux_idx
=
0
;
spec
->
int_mic
.
pin
=
0x12
;
...
...
@@ -13861,6 +13862,7 @@ static const struct snd_pci_quirk alc268_cfg_tbl[] = {
SND_PCI_QUIRK
(
0x1025
,
0x015b
,
"Acer Aspire One"
,
ALC268_ACER_ASPIRE_ONE
),
SND_PCI_QUIRK
(
0x1028
,
0x0253
,
"Dell OEM"
,
ALC268_DELL
),
SND_PCI_QUIRK
(
0x1028
,
0x02b0
,
"Dell Inspiron 910"
,
ALC268_AUTO
),
SND_PCI_QUIRK_MASK
(
0x1028
,
0xfff0
,
0x02b0
,
"Dell Inspiron Mini9/Vostro A90"
,
ALC268_DELL
),
/* almost compatible with toshiba but with optional digital outs;
...
...
sound/pci/rme9652/hdspm.c
View file @
5ab775c7
...
...
@@ -521,6 +521,7 @@ MODULE_SUPPORTED_DEVICE("{{RME HDSPM-MADI}}");
#define HDSPM_DMA_AREA_KILOBYTES (HDSPM_DMA_AREA_BYTES/1024)
/* revisions >= 230 indicate AES32 card */
#define HDSPM_MADI_OLD_REV 207
#define HDSPM_MADI_REV 210
#define HDSPM_RAYDAT_REV 211
#define HDSPM_AIO_REV 212
...
...
@@ -1143,7 +1144,7 @@ static int hdspm_external_sample_rate(struct hdspm *hdspm)
/* if wordclock has synced freq and wordclock is valid */
if
((
status2
&
HDSPM_wcLock
)
!=
0
&&
(
status
&
HDSPM_SelSyncRef0
)
==
0
)
{
(
status
2
&
HDSPM_SelSyncRef0
)
==
0
)
{
rate_bits
=
status2
&
HDSPM_wcFreqMask
;
...
...
@@ -1639,12 +1640,14 @@ static int snd_hdspm_midi_input_read (struct hdspm_midi *hmidi)
}
}
hmidi
->
pending
=
0
;
spin_unlock_irqrestore
(
&
hmidi
->
lock
,
flags
);
spin_lock_irqsave
(
&
hmidi
->
hdspm
->
lock
,
flags
);
hmidi
->
hdspm
->
control_register
|=
hmidi
->
ie
;
hdspm_write
(
hmidi
->
hdspm
,
HDSPM_controlRegister
,
hmidi
->
hdspm
->
control_register
);
spin_unlock_irqrestore
(
&
hmidi
->
hdspm
->
lock
,
flags
);
spin_unlock_irqrestore
(
&
hmidi
->
lock
,
flags
);
return
snd_hdspm_midi_output_write
(
hmidi
);
}
...
...
@@ -6377,6 +6380,7 @@ static int __devinit snd_hdspm_create(struct snd_card *card,
switch
(
hdspm
->
firmware_rev
)
{
case
HDSPM_MADI_REV
:
case
HDSPM_MADI_OLD_REV
:
hdspm
->
io_type
=
MADI
;
hdspm
->
card_name
=
"RME MADI"
;
hdspm
->
midiPorts
=
3
;
...
...
sound/soc/atmel/atmel_ssc_dai.c
View file @
5ab775c7
...
...
@@ -848,9 +848,10 @@ int atmel_ssc_set_audio(int ssc_id)
if
(
IS_ERR
(
ssc
))
pr_warn
(
"Unable to parent ASoC SSC DAI on SSC: %ld
\n
"
,
PTR_ERR
(
ssc
));
else
else
{
ssc_pdev
->
dev
.
parent
=
&
(
ssc
->
pdev
->
dev
);
ssc_free
(
ssc
);
ssc_free
(
ssc
);
}
ret
=
platform_device_add
(
ssc_pdev
);
if
(
ret
<
0
)
...
...
sound/soc/blackfin/bf5xx-ad1836.c
View file @
5ab775c7
...
...
@@ -75,7 +75,7 @@ static struct snd_soc_dai_link bf5xx_ad1836_dai[] = {
.
cpu_dai_name
=
"bfin-tdm.0"
,
.
codec_dai_name
=
"ad1836-hifi"
,
.
platform_name
=
"bfin-tdm-pcm-audio"
,
.
codec_name
=
"
ad1836.0
"
,
.
codec_name
=
"
spi0.4
"
,
.
ops
=
&
bf5xx_ad1836_ops
,
},
{
...
...
@@ -84,7 +84,7 @@ static struct snd_soc_dai_link bf5xx_ad1836_dai[] = {
.
cpu_dai_name
=
"bfin-tdm.1"
,
.
codec_dai_name
=
"ad1836-hifi"
,
.
platform_name
=
"bfin-tdm-pcm-audio"
,
.
codec_name
=
"
ad1836.0
"
,
.
codec_name
=
"
spi0.4
"
,
.
ops
=
&
bf5xx_ad1836_ops
,
},
};
...
...
sound/soc/codecs/ad1836.c
View file @
5ab775c7
...
...
@@ -145,22 +145,22 @@ static int ad1836_hw_params(struct snd_pcm_substream *substream,
/* bit size */
switch
(
params_format
(
params
))
{
case
SNDRV_PCM_FORMAT_S16_LE
:
word_len
=
3
;
word_len
=
AD1836_WORD_LEN_16
;
break
;
case
SNDRV_PCM_FORMAT_S20_3LE
:
word_len
=
1
;
word_len
=
AD1836_WORD_LEN_20
;
break
;
case
SNDRV_PCM_FORMAT_S24_LE
:
case
SNDRV_PCM_FORMAT_S32_LE
:
word_len
=
0
;
word_len
=
AD1836_WORD_LEN_24
;
break
;
}
snd_soc_update_bits
(
codec
,
AD1836_DAC_CTRL1
,
AD1836_DAC_WORD_LEN_MASK
,
word_len
);
snd_soc_update_bits
(
codec
,
AD1836_DAC_CTRL1
,
AD1836_DAC_WORD_LEN_MASK
,
word_len
<<
AD1836_DAC_WORD_LEN_OFFSET
);
snd_soc_update_bits
(
codec
,
AD1836_ADC_CTRL2
,
AD1836_ADC_WORD_LEN_MASK
,
word_len
);
snd_soc_update_bits
(
codec
,
AD1836_ADC_CTRL2
,
AD1836_ADC_WORD_LEN_MASK
,
word_len
<<
AD1836_ADC_WORD_OFFSET
);
return
0
;
}
...
...
sound/soc/codecs/ad1836.h
View file @
5ab775c7
...
...
@@ -25,6 +25,7 @@
#define AD1836_DAC_SERFMT_PCK256 (0x4 << 5)
#define AD1836_DAC_SERFMT_PCK128 (0x5 << 5)
#define AD1836_DAC_WORD_LEN_MASK 0x18
#define AD1836_DAC_WORD_LEN_OFFSET 3
#define AD1836_DAC_CTRL2 1
#define AD1836_DACL1_MUTE 0
...
...
@@ -51,6 +52,7 @@
#define AD1836_ADCL2_MUTE 2
#define AD1836_ADCR2_MUTE 3
#define AD1836_ADC_WORD_LEN_MASK 0x30
#define AD1836_ADC_WORD_OFFSET 5
#define AD1836_ADC_SERFMT_MASK (7 << 6)
#define AD1836_ADC_SERFMT_PCK256 (0x4 << 6)
#define AD1836_ADC_SERFMT_PCK128 (0x5 << 6)
...
...
@@ -60,4 +62,8 @@
#define AD1836_NUM_REGS 16
#define AD1836_WORD_LEN_24 0x0
#define AD1836_WORD_LEN_20 0x1
#define AD1836_WORD_LEN_16 0x2
#endif
sound/soc/codecs/wm8804.c
View file @
5ab775c7
...
...
@@ -680,20 +680,25 @@ static struct snd_soc_dai_ops wm8804_dai_ops = {
#define WM8804_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \
SNDRV_PCM_FMTBIT_S24_LE)
#define WM8804_RATES (SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \
SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_64000 | \
SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000 | \
SNDRV_PCM_RATE_176400 | SNDRV_PCM_RATE_192000)
static
struct
snd_soc_dai_driver
wm8804_dai
=
{
.
name
=
"wm8804-spdif"
,
.
playback
=
{
.
stream_name
=
"Playback"
,
.
channels_min
=
2
,
.
channels_max
=
2
,
.
rates
=
SNDRV_PCM_RATE_8000_192000
,
.
rates
=
WM8804_RATES
,
.
formats
=
WM8804_FORMATS
,
},
.
capture
=
{
.
stream_name
=
"Capture"
,
.
channels_min
=
2
,
.
channels_max
=
2
,
.
rates
=
SNDRV_PCM_RATE_8000_192000
,
.
rates
=
WM8804_RATES
,
.
formats
=
WM8804_FORMATS
,
},
.
ops
=
&
wm8804_dai_ops
,
...
...
sound/soc/codecs/wm8915.c
View file @
5ab775c7
...
...
@@ -1839,7 +1839,7 @@ static int wm8915_set_sysclk(struct snd_soc_dai *dai,
int
old
;
/* Disable SYSCLK while we reconfigure */
old
=
snd_soc_read
(
codec
,
WM8915_AIF_CLOCKING_1
);
old
=
snd_soc_read
(
codec
,
WM8915_AIF_CLOCKING_1
)
&
WM8915_SYSCLK_ENA
;
snd_soc_update_bits
(
codec
,
WM8915_AIF_CLOCKING_1
,
WM8915_SYSCLK_ENA
,
0
);
...
...
@@ -2038,6 +2038,7 @@ static int wm8915_set_fll(struct snd_soc_codec *codec, int fll_id, int source,
break
;
case
WM8915_FLL_MCLK2
:
reg
=
1
;
break
;
case
WM8915_FLL_DACLRCLK1
:
reg
=
2
;
break
;
...
...
sound/soc/codecs/wm8962.c
View file @
5ab775c7
...
...
@@ -1999,12 +1999,12 @@ static int wm8962_put_hp_sw(struct snd_kcontrol *kcontrol,
return
0
;
/* If the left PGA is enabled hit that VU bit... */
if
(
reg_cache
[
WM8962_PWR_MGMT_2
]
&
WM8962_HPOUTL_PGA_ENA
)
if
(
snd_soc_read
(
codec
,
WM8962_PWR_MGMT_2
)
&
WM8962_HPOUTL_PGA_ENA
)
return
snd_soc_write
(
codec
,
WM8962_HPOUTL_VOLUME
,
reg_cache
[
WM8962_HPOUTL_VOLUME
]);
/* ...otherwise the right. The VU is stereo. */
if
(
reg_cache
[
WM8962_PWR_MGMT_2
]
&
WM8962_HPOUTR_PGA_ENA
)
if
(
snd_soc_read
(
codec
,
WM8962_PWR_MGMT_2
)
&
WM8962_HPOUTR_PGA_ENA
)
return
snd_soc_write
(
codec
,
WM8962_HPOUTR_VOLUME
,
reg_cache
[
WM8962_HPOUTR_VOLUME
]);
...
...
sound/soc/fsl/fsl_dma.c
View file @
5ab775c7
...
...
@@ -310,7 +310,7 @@ static int fsl_dma_new(struct snd_card *card, struct snd_soc_dai *dai,
* should allocate a DMA buffer only for the streams that are valid.
*/
if
(
dai
->
driver
->
playback
.
channels_min
)
{
if
(
pcm
->
streams
[
0
].
substream
)
{
ret
=
snd_dma_alloc_pages
(
SNDRV_DMA_TYPE_DEV
,
card
->
dev
,
fsl_dma_hardware
.
buffer_bytes_max
,
&
pcm
->
streams
[
0
].
substream
->
dma_buffer
);
...
...
@@ -320,13 +320,13 @@ static int fsl_dma_new(struct snd_card *card, struct snd_soc_dai *dai,
}
}
if
(
dai
->
driver
->
capture
.
channels_min
)
{
if
(
pcm
->
streams
[
1
].
substream
)
{
ret
=
snd_dma_alloc_pages
(
SNDRV_DMA_TYPE_DEV
,
card
->
dev
,
fsl_dma_hardware
.
buffer_bytes_max
,
&
pcm
->
streams
[
1
].
substream
->
dma_buffer
);
if
(
ret
)
{
snd_dma_free_pages
(
&
pcm
->
streams
[
0
].
substream
->
dma_buffer
);
dev_err
(
card
->
dev
,
"can't alloc capture dma buffer
\n
"
);
snd_dma_free_pages
(
&
pcm
->
streams
[
0
].
substream
->
dma_buffer
);
return
ret
;
}
}
...
...
@@ -449,7 +449,8 @@ static int fsl_dma_open(struct snd_pcm_substream *substream)
dma_private
->
ld_buf_phys
=
ld_buf_phys
;
dma_private
->
dma_buf_phys
=
substream
->
dma_buffer
.
addr
;
ret
=
request_irq
(
dma_private
->
irq
,
fsl_dma_isr
,
0
,
"DMA"
,
dma_private
);
ret
=
request_irq
(
dma_private
->
irq
,
fsl_dma_isr
,
0
,
"fsldma-audio"
,
dma_private
);
if
(
ret
)
{
dev_err
(
dev
,
"can't register ISR for IRQ %u (ret=%i)
\n
"
,
dma_private
->
irq
,
ret
);
...
...
sound/soc/samsung/i2s.c
View file @
5ab775c7
...
...
@@ -191,7 +191,7 @@ static inline bool tx_active(struct i2s_dai *i2s)
if
(
!
i2s
)
return
false
;
active
=
readl
(
i2s
->
addr
+
I2S
MOD
);
active
=
readl
(
i2s
->
addr
+
I2S
CON
);
if
(
is_secondary
(
i2s
))
active
&=
CON_TXSDMA_ACTIVE
;
...
...
@@ -223,7 +223,7 @@ static inline bool rx_active(struct i2s_dai *i2s)
if
(
!
i2s
)
return
false
;
active
=
readl
(
i2s
->
addr
+
I2S
MOD
)
&
CON_RXDMA_ACTIVE
;
active
=
readl
(
i2s
->
addr
+
I2S
CON
)
&
CON_RXDMA_ACTIVE
;
return
active
?
true
:
false
;
}
...
...
sound/soc/soc-cache.c
View file @
5ab775c7
...
...
@@ -466,6 +466,9 @@ static bool snd_soc_set_cache_val(void *base, unsigned int idx,
static
unsigned
int
snd_soc_get_cache_val
(
const
void
*
base
,
unsigned
int
idx
,
unsigned
int
word_size
)
{
if
(
!
base
)
return
-
1
;
switch
(
word_size
)
{
case
1
:
{
const
u8
*
cache
=
base
;
...
...
sound/soc/soc-dapm.c
View file @
5ab775c7
...
...
@@ -350,9 +350,9 @@ static int dapm_is_shared_kcontrol(struct snd_soc_dapm_context *dapm,
}
/* create new dapm mixer control */
static
int
dapm_new_mixer
(
struct
snd_soc_dapm_context
*
dapm
,
struct
snd_soc_dapm_widget
*
w
)
static
int
dapm_new_mixer
(
struct
snd_soc_dapm_widget
*
w
)
{
struct
snd_soc_dapm_context
*
dapm
=
w
->
dapm
;
int
i
,
ret
=
0
;
size_t
name_len
,
prefix_len
;
struct
snd_soc_dapm_path
*
path
;
...
...
@@ -450,9 +450,9 @@ static int dapm_new_mixer(struct snd_soc_dapm_context *dapm,
}
/* create new dapm mux control */
static
int
dapm_new_mux
(
struct
snd_soc_dapm_context
*
dapm
,
struct
snd_soc_dapm_widget
*
w
)
static
int
dapm_new_mux
(
struct
snd_soc_dapm_widget
*
w
)
{
struct
snd_soc_dapm_context
*
dapm
=
w
->
dapm
;
struct
snd_soc_dapm_path
*
path
=
NULL
;
struct
snd_kcontrol
*
kcontrol
;
struct
snd_card
*
card
=
dapm
->
card
->
snd_card
;
...
...
@@ -535,8 +535,7 @@ static int dapm_new_mux(struct snd_soc_dapm_context *dapm,
}
/* create new dapm volume control */
static
int
dapm_new_pga
(
struct
snd_soc_dapm_context
*
dapm
,
struct
snd_soc_dapm_widget
*
w
)
static
int
dapm_new_pga
(
struct
snd_soc_dapm_widget
*
w
)
{
if
(
w
->
num_kcontrols
)
dev_err
(
w
->
dapm
->
dev
,
...
...
@@ -1826,13 +1825,13 @@ int snd_soc_dapm_new_widgets(struct snd_soc_dapm_context *dapm)
case
snd_soc_dapm_mixer
:
case
snd_soc_dapm_mixer_named_ctl
:
w
->
power_check
=
dapm_generic_check_power
;
dapm_new_mixer
(
dapm
,
w
);
dapm_new_mixer
(
w
);
break
;
case
snd_soc_dapm_mux
:
case
snd_soc_dapm_virt_mux
:
case
snd_soc_dapm_value_mux
:
w
->
power_check
=
dapm_generic_check_power
;
dapm_new_mux
(
dapm
,
w
);
dapm_new_mux
(
w
);
break
;
case
snd_soc_dapm_adc
:
case
snd_soc_dapm_aif_out
:
...
...
@@ -1845,7 +1844,7 @@ int snd_soc_dapm_new_widgets(struct snd_soc_dapm_context *dapm)
case
snd_soc_dapm_pga
:
case
snd_soc_dapm_out_drv
:
w
->
power_check
=
dapm_generic_check_power
;
dapm_new_pga
(
dapm
,
w
);
dapm_new_pga
(
w
);
break
;
case
snd_soc_dapm_input
:
case
snd_soc_dapm_output
:
...
...
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