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
f027ac7a
Commit
f027ac7a
authored
Nov 03, 2013
by
Mark Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'asoc/topic/wm8962' into asoc-next
parents
1c2fa548
ae2ff9f6
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
7 deletions
+15
-7
sound/soc/codecs/wm8962.c
sound/soc/codecs/wm8962.c
+15
-7
No files found.
sound/soc/codecs/wm8962.c
View file @
f027ac7a
...
@@ -1758,6 +1758,9 @@ SOC_DOUBLE_R_TLV("EQ4 Volume", WM8962_EQ3, WM8962_EQ23,
...
@@ -1758,6 +1758,9 @@ SOC_DOUBLE_R_TLV("EQ4 Volume", WM8962_EQ3, WM8962_EQ23,
WM8962_EQL_B4_GAIN_SHIFT
,
31
,
0
,
eq_tlv
),
WM8962_EQL_B4_GAIN_SHIFT
,
31
,
0
,
eq_tlv
),
SOC_DOUBLE_R_TLV
(
"EQ5 Volume"
,
WM8962_EQ3
,
WM8962_EQ23
,
SOC_DOUBLE_R_TLV
(
"EQ5 Volume"
,
WM8962_EQ3
,
WM8962_EQ23
,
WM8962_EQL_B5_GAIN_SHIFT
,
31
,
0
,
eq_tlv
),
WM8962_EQL_B5_GAIN_SHIFT
,
31
,
0
,
eq_tlv
),
SND_SOC_BYTES
(
"EQL Coefficients"
,
WM8962_EQ4
,
18
),
SND_SOC_BYTES
(
"EQR Coefficients"
,
WM8962_EQ24
,
18
),
SOC_SINGLE
(
"3D Switch"
,
WM8962_THREED1
,
0
,
1
,
0
),
SOC_SINGLE
(
"3D Switch"
,
WM8962_THREED1
,
0
,
1
,
0
),
SND_SOC_BYTES_MASK
(
"3D Coefficients"
,
WM8962_THREED1
,
4
,
WM8962_THREED_ENA
),
SND_SOC_BYTES_MASK
(
"3D Coefficients"
,
WM8962_THREED1
,
4
,
WM8962_THREED_ENA
),
...
@@ -1775,6 +1778,11 @@ WM8962_DSP2_ENABLE("HPF2 Switch", WM8962_HPF2_ENA_SHIFT),
...
@@ -1775,6 +1778,11 @@ WM8962_DSP2_ENABLE("HPF2 Switch", WM8962_HPF2_ENA_SHIFT),
SND_SOC_BYTES
(
"HPF Coefficients"
,
WM8962_LHPF2
,
1
),
SND_SOC_BYTES
(
"HPF Coefficients"
,
WM8962_LHPF2
,
1
),
WM8962_DSP2_ENABLE
(
"HD Bass Switch"
,
WM8962_HDBASS_ENA_SHIFT
),
WM8962_DSP2_ENABLE
(
"HD Bass Switch"
,
WM8962_HDBASS_ENA_SHIFT
),
SND_SOC_BYTES
(
"HD Bass Coefficients"
,
WM8962_HDBASS_AI_1
,
30
),
SND_SOC_BYTES
(
"HD Bass Coefficients"
,
WM8962_HDBASS_AI_1
,
30
),
SOC_DOUBLE
(
"ALC Switch"
,
WM8962_ALC1
,
WM8962_ALCL_ENA_SHIFT
,
WM8962_ALCR_ENA_SHIFT
,
1
,
0
),
SND_SOC_BYTES_MASK
(
"ALC Coefficients"
,
WM8962_ALC1
,
4
,
WM8962_ALCL_ENA_MASK
|
WM8962_ALCR_ENA_MASK
),
};
};
static
const
struct
snd_kcontrol_new
wm8962_spk_mono_controls
[]
=
{
static
const
struct
snd_kcontrol_new
wm8962_spk_mono_controls
[]
=
{
...
@@ -3616,28 +3624,28 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
...
@@ -3616,28 +3624,28 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
0
);
0
);
/* Apply static configuration for GPIOs */
/* Apply static configuration for GPIOs */
for
(
i
=
0
;
i
<
ARRAY_SIZE
(
pdata
->
gpio_init
);
i
++
)
for
(
i
=
0
;
i
<
ARRAY_SIZE
(
wm8962
->
pdata
.
gpio_init
);
i
++
)
if
(
pdata
->
gpio_init
[
i
])
{
if
(
wm8962
->
pdata
.
gpio_init
[
i
])
{
wm8962_set_gpio_mode
(
wm8962
,
i
+
1
);
wm8962_set_gpio_mode
(
wm8962
,
i
+
1
);
regmap_write
(
wm8962
->
regmap
,
0x200
+
i
,
regmap_write
(
wm8962
->
regmap
,
0x200
+
i
,
pdata
->
gpio_init
[
i
]
&
0xffff
);
wm8962
->
pdata
.
gpio_init
[
i
]
&
0xffff
);
}
}
/* Put the speakers into mono mode? */
/* Put the speakers into mono mode? */
if
(
pdata
->
spk_mono
)
if
(
wm8962
->
pdata
.
spk_mono
)
regmap_update_bits
(
wm8962
->
regmap
,
WM8962_CLASS_D_CONTROL_2
,
regmap_update_bits
(
wm8962
->
regmap
,
WM8962_CLASS_D_CONTROL_2
,
WM8962_SPK_MONO_MASK
,
WM8962_SPK_MONO
);
WM8962_SPK_MONO_MASK
,
WM8962_SPK_MONO
);
/* Micbias setup, detection enable and detection
/* Micbias setup, detection enable and detection
* threasholds. */
* threasholds. */
if
(
pdata
->
mic_cfg
)
if
(
wm8962
->
pdata
.
mic_cfg
)
regmap_update_bits
(
wm8962
->
regmap
,
WM8962_ADDITIONAL_CONTROL_4
,
regmap_update_bits
(
wm8962
->
regmap
,
WM8962_ADDITIONAL_CONTROL_4
,
WM8962_MICDET_ENA
|
WM8962_MICDET_ENA
|
WM8962_MICDET_THR_MASK
|
WM8962_MICDET_THR_MASK
|
WM8962_MICSHORT_THR_MASK
|
WM8962_MICSHORT_THR_MASK
|
WM8962_MICBIAS_LVL
,
WM8962_MICBIAS_LVL
,
pdata
->
mic_cfg
);
wm8962
->
pdata
.
mic_cfg
);
/* Latch volume update bits */
/* Latch volume update bits */
regmap_update_bits
(
wm8962
->
regmap
,
WM8962_LEFT_INPUT_VOLUME
,
regmap_update_bits
(
wm8962
->
regmap
,
WM8962_LEFT_INPUT_VOLUME
,
...
@@ -3682,7 +3690,7 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
...
@@ -3682,7 +3690,7 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
}
}
if
(
wm8962
->
irq
)
{
if
(
wm8962
->
irq
)
{
if
(
pdata
->
irq_active_low
)
{
if
(
wm8962
->
pdata
.
irq_active_low
)
{
trigger
=
IRQF_TRIGGER_LOW
;
trigger
=
IRQF_TRIGGER_LOW
;
irq_pol
=
WM8962_IRQ_POL
;
irq_pol
=
WM8962_IRQ_POL
;
}
else
{
}
else
{
...
...
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