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
9b88daa5
Commit
9b88daa5
authored
Feb 09, 2016
by
Takashi Iwai
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'for-linus' into for-next
parents
dfabc0ee
397da2d0
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
52 additions
and
47 deletions
+52
-47
sound/core/timer.c
sound/core/timer.c
+20
-20
sound/firewire/digi00x/amdtp-dot.c
sound/firewire/digi00x/amdtp-dot.c
+1
-1
sound/firewire/tascam/tascam-transaction.c
sound/firewire/tascam/tascam-transaction.c
+6
-0
sound/firewire/tascam/tascam.c
sound/firewire/tascam/tascam.c
+9
-3
sound/firewire/tascam/tascam.h
sound/firewire/tascam/tascam.h
+0
-4
sound/pci/hda/hda_generic.c
sound/pci/hda/hda_generic.c
+2
-2
sound/pci/hda/hda_jack.c
sound/pci/hda/hda_jack.c
+1
-1
sound/pci/hda/hda_jack.h
sound/pci/hda/hda_jack.h
+1
-1
sound/pci/hda/patch_ca0132.c
sound/pci/hda/patch_ca0132.c
+4
-1
sound/pci/hda/patch_hdmi.c
sound/pci/hda/patch_hdmi.c
+3
-2
sound/pci/hda/patch_realtek.c
sound/pci/hda/patch_realtek.c
+2
-9
sound/pci/hda/patch_sigmatel.c
sound/pci/hda/patch_sigmatel.c
+3
-3
No files found.
sound/core/timer.c
View file @
9b88daa5
...
...
@@ -422,7 +422,7 @@ static void snd_timer_notify1(struct snd_timer_instance *ti, int event)
spin_lock_irqsave
(
&
timer
->
lock
,
flags
);
list_for_each_entry
(
ts
,
&
ti
->
slave_active_head
,
active_list
)
if
(
ts
->
ccallback
)
ts
->
ccallback
(
t
i
,
event
+
100
,
&
tstamp
,
resolution
);
ts
->
ccallback
(
t
s
,
event
+
100
,
&
tstamp
,
resolution
);
spin_unlock_irqrestore
(
&
timer
->
lock
,
flags
);
}
...
...
@@ -518,9 +518,13 @@ static int _snd_timer_stop(struct snd_timer_instance *timeri, int event)
spin_unlock_irqrestore
(
&
slave_active_lock
,
flags
);
return
-
EBUSY
;
}
if
(
timeri
->
timer
)
spin_lock
(
&
timeri
->
timer
->
lock
);
timeri
->
flags
&=
~
SNDRV_TIMER_IFLG_RUNNING
;
list_del_init
(
&
timeri
->
ack_list
);
list_del_init
(
&
timeri
->
active_list
);
if
(
timeri
->
timer
)
spin_unlock
(
&
timeri
->
timer
->
lock
);
spin_unlock_irqrestore
(
&
slave_active_lock
,
flags
);
goto
__end
;
}
...
...
@@ -1929,6 +1933,7 @@ static ssize_t snd_timer_user_read(struct file *file, char __user *buffer,
{
struct
snd_timer_user
*
tu
;
long
result
=
0
,
unit
;
int
qhead
;
int
err
=
0
;
tu
=
file
->
private_data
;
...
...
@@ -1940,7 +1945,7 @@ static ssize_t snd_timer_user_read(struct file *file, char __user *buffer,
if
((
file
->
f_flags
&
O_NONBLOCK
)
!=
0
||
result
>
0
)
{
err
=
-
EAGAIN
;
break
;
goto
_error
;
}
set_current_state
(
TASK_INTERRUPTIBLE
);
...
...
@@ -1955,42 +1960,37 @@ static ssize_t snd_timer_user_read(struct file *file, char __user *buffer,
if
(
tu
->
disconnected
)
{
err
=
-
ENODEV
;
break
;
goto
_error
;
}
if
(
signal_pending
(
current
))
{
err
=
-
ERESTARTSYS
;
break
;
goto
_error
;
}
}
qhead
=
tu
->
qhead
++
;
tu
->
qhead
%=
tu
->
queue_size
;
spin_unlock_irq
(
&
tu
->
qlock
);
if
(
err
<
0
)
goto
_error
;
if
(
tu
->
tread
)
{
if
(
copy_to_user
(
buffer
,
&
tu
->
tqueue
[
tu
->
qhead
++
],
sizeof
(
struct
snd_timer_tread
)))
{
if
(
copy_to_user
(
buffer
,
&
tu
->
tqueue
[
qhead
],
sizeof
(
struct
snd_timer_tread
)))
err
=
-
EFAULT
;
goto
_error
;
}
}
else
{
if
(
copy_to_user
(
buffer
,
&
tu
->
queue
[
tu
->
qhead
++
],
sizeof
(
struct
snd_timer_read
)))
{
if
(
copy_to_user
(
buffer
,
&
tu
->
queue
[
qhead
],
sizeof
(
struct
snd_timer_read
)))
err
=
-
EFAULT
;
goto
_error
;
}
}
tu
->
qhead
%=
tu
->
queue_size
;
result
+=
unit
;
buffer
+=
unit
;
spin_lock_irq
(
&
tu
->
qlock
);
tu
->
qused
--
;
if
(
err
<
0
)
goto
_error
;
result
+=
unit
;
buffer
+=
unit
;
}
spin_unlock_irq
(
&
tu
->
qlock
);
_error:
spin_unlock_irq
(
&
tu
->
qlock
);
return
result
>
0
?
result
:
err
;
}
...
...
sound/firewire/digi00x/amdtp-dot.c
View file @
9b88daa5
...
...
@@ -63,7 +63,7 @@ struct amdtp_dot {
#define BYTE_PER_SAMPLE (4)
#define MAGIC_DOT_BYTE (2)
#define MAGIC_BYTE_OFF(x) (((x) * BYTE_PER_SAMPLE) + MAGIC_DOT_BYTE)
static
const
u8
dot_scrt
(
const
u8
idx
,
const
unsigned
int
off
)
static
u8
dot_scrt
(
const
u8
idx
,
const
unsigned
int
off
)
{
/*
* the length of the added pattern only depends on the lower nibble
...
...
sound/firewire/tascam/tascam-transaction.c
View file @
9b88daa5
...
...
@@ -230,6 +230,7 @@ int snd_tscm_transaction_register(struct snd_tscm *tscm)
return
err
;
error:
fw_core_remove_address_handler
(
&
tscm
->
async_handler
);
tscm
->
async_handler
.
callback_data
=
NULL
;
return
err
;
}
...
...
@@ -276,6 +277,9 @@ void snd_tscm_transaction_unregister(struct snd_tscm *tscm)
__be32
reg
;
unsigned
int
i
;
if
(
tscm
->
async_handler
.
callback_data
==
NULL
)
return
;
/* Turn off FireWire LED. */
reg
=
cpu_to_be32
(
0x0000008e
);
snd_fw_transaction
(
tscm
->
unit
,
TCODE_WRITE_QUADLET_REQUEST
,
...
...
@@ -297,6 +301,8 @@ void snd_tscm_transaction_unregister(struct snd_tscm *tscm)
&
reg
,
sizeof
(
reg
),
0
);
fw_core_remove_address_handler
(
&
tscm
->
async_handler
);
tscm
->
async_handler
.
callback_data
=
NULL
;
for
(
i
=
0
;
i
<
TSCM_MIDI_OUT_PORT_MAX
;
i
++
)
snd_fw_async_midi_port_destroy
(
&
tscm
->
out_ports
[
i
]);
}
sound/firewire/tascam/tascam.c
View file @
9b88daa5
...
...
@@ -21,7 +21,6 @@ static struct snd_tscm_spec model_specs[] = {
.
pcm_playback_analog_channels
=
8
,
.
midi_capture_ports
=
4
,
.
midi_playback_ports
=
4
,
.
is_controller
=
true
,
},
{
.
name
=
"FW-1082"
,
...
...
@@ -31,9 +30,16 @@ static struct snd_tscm_spec model_specs[] = {
.
pcm_playback_analog_channels
=
2
,
.
midi_capture_ports
=
2
,
.
midi_playback_ports
=
2
,
.
is_controller
=
true
,
},
/* FW-1804 may be supported. */
{
.
name
=
"FW-1804"
,
.
has_adat
=
true
,
.
has_spdif
=
true
,
.
pcm_capture_analog_channels
=
8
,
.
pcm_playback_analog_channels
=
2
,
.
midi_capture_ports
=
2
,
.
midi_playback_ports
=
4
,
},
};
static
int
identify_model
(
struct
snd_tscm
*
tscm
)
...
...
sound/firewire/tascam/tascam.h
View file @
9b88daa5
...
...
@@ -39,7 +39,6 @@ struct snd_tscm_spec {
unsigned
int
pcm_playback_analog_channels
;
unsigned
int
midi_capture_ports
;
unsigned
int
midi_playback_ports
;
bool
is_controller
;
};
#define TSCM_MIDI_IN_PORT_MAX 4
...
...
@@ -72,9 +71,6 @@ struct snd_tscm {
struct
snd_fw_async_midi_port
out_ports
[
TSCM_MIDI_OUT_PORT_MAX
];
u8
running_status
[
TSCM_MIDI_OUT_PORT_MAX
];
bool
on_sysex
[
TSCM_MIDI_OUT_PORT_MAX
];
/* For control messages. */
struct
snd_firewire_tascam_status
*
status
;
};
#define TSCM_ADDR_BASE 0xffff00000000ull
...
...
sound/pci/hda/hda_generic.c
View file @
9b88daa5
...
...
@@ -4028,9 +4028,9 @@ static void pin_power_callback(struct hda_codec *codec,
struct
hda_jack_callback
*
jack
,
bool
on
)
{
if
(
jack
&&
jack
->
tbl
->
nid
)
if
(
jack
&&
jack
->
nid
)
sync_power_state_change
(
codec
,
set_pin_power_jack
(
codec
,
jack
->
tbl
->
nid
,
on
));
set_pin_power_jack
(
codec
,
jack
->
nid
,
on
));
}
/* callback only doing power up -- called at first */
...
...
sound/pci/hda/hda_jack.c
View file @
9b88daa5
...
...
@@ -259,7 +259,7 @@ snd_hda_jack_detect_enable_callback(struct hda_codec *codec, hda_nid_t nid,
if
(
!
callback
)
return
ERR_PTR
(
-
ENOMEM
);
callback
->
func
=
func
;
callback
->
tbl
=
jack
;
callback
->
nid
=
jack
->
nid
;
callback
->
next
=
jack
->
callback
;
jack
->
callback
=
callback
;
}
...
...
sound/pci/hda/hda_jack.h
View file @
9b88daa5
...
...
@@ -21,7 +21,7 @@ struct hda_jack_callback;
typedef
void
(
*
hda_jack_callback_fn
)
(
struct
hda_codec
*
,
struct
hda_jack_callback
*
);
struct
hda_jack_callback
{
struct
hda_jack_tbl
*
tbl
;
hda_nid_t
nid
;
hda_jack_callback_fn
func
;
unsigned
int
private_data
;
/* arbitrary data */
struct
hda_jack_callback
*
next
;
...
...
sound/pci/hda/patch_ca0132.c
View file @
9b88daa5
...
...
@@ -4427,13 +4427,16 @@ static void ca0132_process_dsp_response(struct hda_codec *codec,
static
void
hp_callback
(
struct
hda_codec
*
codec
,
struct
hda_jack_callback
*
cb
)
{
struct
ca0132_spec
*
spec
=
codec
->
spec
;
struct
hda_jack_tbl
*
tbl
;
/* Delay enabling the HP amp, to let the mic-detection
* state machine run.
*/
cancel_delayed_work_sync
(
&
spec
->
unsol_hp_work
);
schedule_delayed_work
(
&
spec
->
unsol_hp_work
,
msecs_to_jiffies
(
500
));
cb
->
tbl
->
block_report
=
1
;
tbl
=
snd_hda_jack_tbl_get
(
codec
,
cb
->
nid
);
if
(
tbl
)
tbl
->
block_report
=
1
;
}
static
void
amic_callback
(
struct
hda_codec
*
codec
,
struct
hda_jack_callback
*
cb
)
...
...
sound/pci/hda/patch_hdmi.c
View file @
9b88daa5
...
...
@@ -448,7 +448,8 @@ static int hdmi_eld_ctl_get(struct snd_kcontrol *kcontrol,
eld
=
&
per_pin
->
sink_eld
;
mutex_lock
(
&
per_pin
->
lock
);
if
(
eld
->
eld_size
>
ARRAY_SIZE
(
ucontrol
->
value
.
bytes
.
data
))
{
if
(
eld
->
eld_size
>
ARRAY_SIZE
(
ucontrol
->
value
.
bytes
.
data
)
||
eld
->
eld_size
>
ELD_MAX_SIZE
)
{
mutex_unlock
(
&
per_pin
->
lock
);
snd_BUG
();
return
-
EINVAL
;
...
...
@@ -1193,7 +1194,7 @@ static void check_presence_and_report(struct hda_codec *codec, hda_nid_t nid)
static
void
jack_callback
(
struct
hda_codec
*
codec
,
struct
hda_jack_callback
*
jack
)
{
check_presence_and_report
(
codec
,
jack
->
tbl
->
nid
);
check_presence_and_report
(
codec
,
jack
->
nid
);
}
static
void
hdmi_intrinsic_event
(
struct
hda_codec
*
codec
,
unsigned
int
res
)
...
...
sound/pci/hda/patch_realtek.c
View file @
9b88daa5
...
...
@@ -282,7 +282,7 @@ static void alc_update_knob_master(struct hda_codec *codec,
uctl
=
kzalloc
(
sizeof
(
*
uctl
),
GFP_KERNEL
);
if
(
!
uctl
)
return
;
val
=
snd_hda_codec_read
(
codec
,
jack
->
tbl
->
nid
,
0
,
val
=
snd_hda_codec_read
(
codec
,
jack
->
nid
,
0
,
AC_VERB_GET_VOLUME_KNOB_CONTROL
,
0
);
val
&=
HDA_AMP_VOLMASK
;
uctl
->
value
.
integer
.
value
[
0
]
=
val
;
...
...
@@ -1787,7 +1787,6 @@ enum {
ALC882_FIXUP_NO_PRIMARY_HP
,
ALC887_FIXUP_ASUS_BASS
,
ALC887_FIXUP_BASS_CHMAP
,
ALC882_FIXUP_DISABLE_AAMIX
,
};
static
void
alc889_fixup_coef
(
struct
hda_codec
*
codec
,
...
...
@@ -1949,8 +1948,6 @@ static void alc882_fixup_no_primary_hp(struct hda_codec *codec,
static
void
alc_fixup_bass_chmap
(
struct
hda_codec
*
codec
,
const
struct
hda_fixup
*
fix
,
int
action
);
static
void
alc_fixup_disable_aamix
(
struct
hda_codec
*
codec
,
const
struct
hda_fixup
*
fix
,
int
action
);
static
const
struct
hda_fixup
alc882_fixups
[]
=
{
[
ALC882_FIXUP_ABIT_AW9D_MAX
]
=
{
...
...
@@ -2188,10 +2185,6 @@ static const struct hda_fixup alc882_fixups[] = {
.
type
=
HDA_FIXUP_FUNC
,
.
v
.
func
=
alc_fixup_bass_chmap
,
},
[
ALC882_FIXUP_DISABLE_AAMIX
]
=
{
.
type
=
HDA_FIXUP_FUNC
,
.
v
.
func
=
alc_fixup_disable_aamix
,
},
};
static
const
struct
snd_pci_quirk
alc882_fixup_tbl
[]
=
{
...
...
@@ -2230,6 +2223,7 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x104d
,
0x9047
,
"Sony Vaio TT"
,
ALC889_FIXUP_VAIO_TT
),
SND_PCI_QUIRK
(
0x104d
,
0x905a
,
"Sony Vaio Z"
,
ALC882_FIXUP_NO_PRIMARY_HP
),
SND_PCI_QUIRK
(
0x104d
,
0x9043
,
"Sony Vaio VGC-LN51JGB"
,
ALC882_FIXUP_NO_PRIMARY_HP
),
SND_PCI_QUIRK
(
0x104d
,
0x9044
,
"Sony VAIO AiO"
,
ALC882_FIXUP_NO_PRIMARY_HP
),
/* All Apple entries are in codec SSIDs */
SND_PCI_QUIRK
(
0x106b
,
0x00a0
,
"MacBookPro 3,1"
,
ALC889_FIXUP_MBP_VREF
),
...
...
@@ -2259,7 +2253,6 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
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/Z87X-UD3H"
,
ALC889_FIXUP_FRONT_HP_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x1458
,
0xa182
,
"Gigabyte Z170X-UD3"
,
ALC882_FIXUP_DISABLE_AAMIX
),
SND_PCI_QUIRK
(
0x147b
,
0x107a
,
"Abit AW9D-MAX"
,
ALC882_FIXUP_ABIT_AW9D_MAX
),
SND_PCI_QUIRK_VENDOR
(
0x1558
,
"Clevo laptop"
,
ALC882_FIXUP_EAPD
),
SND_PCI_QUIRK
(
0x161f
,
0x2054
,
"Medion laptop"
,
ALC883_FIXUP_EAPD
),
...
...
sound/pci/hda/patch_sigmatel.c
View file @
9b88daa5
...
...
@@ -493,9 +493,9 @@ static void jack_update_power(struct hda_codec *codec,
if
(
!
spec
->
num_pwrs
)
return
;
if
(
jack
&&
jack
->
tbl
->
nid
)
{
stac_toggle_power_map
(
codec
,
jack
->
tbl
->
nid
,
snd_hda_jack_detect
(
codec
,
jack
->
tbl
->
nid
),
if
(
jack
&&
jack
->
nid
)
{
stac_toggle_power_map
(
codec
,
jack
->
nid
,
snd_hda_jack_detect
(
codec
,
jack
->
nid
),
true
);
return
;
}
...
...
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