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
e6d06e08
Commit
e6d06e08
authored
Nov 03, 2010
by
Takashi Iwai
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'fix/misc' into topic/misc
parents
c8ddb271
87232dd4
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
45 additions
and
32 deletions
+45
-32
sound/pci/asihpi/hpi6000.c
sound/pci/asihpi/hpi6000.c
+2
-0
sound/pci/asihpi/hpi6205.c
sound/pci/asihpi/hpi6205.c
+2
-0
sound/pci/asihpi/hpicmn.c
sound/pci/asihpi/hpicmn.c
+9
-3
sound/pci/cs46xx/dsp_spos.c
sound/pci/cs46xx/dsp_spos.c
+11
-22
sound/pci/hda/patch_cirrus.c
sound/pci/hda/patch_cirrus.c
+1
-0
sound/pci/lx6464es/lx6464es.c
sound/pci/lx6464es/lx6464es.c
+2
-2
sound/pci/lx6464es/lx6464es.h
sound/pci/lx6464es/lx6464es.h
+1
-1
sound/pci/lx6464es/lx_core.c
sound/pci/lx6464es/lx_core.c
+1
-1
sound/usb/mixer_quirks.c
sound/usb/mixer_quirks.c
+13
-2
sound/usb/pcm.c
sound/usb/pcm.c
+3
-1
No files found.
sound/pci/asihpi/hpi6000.c
View file @
e6d06e08
...
...
@@ -625,6 +625,8 @@ static short create_adapter_obj(struct hpi_adapter_obj *pao,
control_cache_size
,
(
struct
hpi_control_cache_info
*
)
&
phw
->
control_cache
[
0
]
);
if
(
!
phw
->
p_cache
)
pao
->
has_control_cache
=
0
;
}
else
pao
->
has_control_cache
=
0
;
...
...
sound/pci/asihpi/hpi6205.c
View file @
e6d06e08
...
...
@@ -644,6 +644,8 @@ static u16 create_adapter_obj(struct hpi_adapter_obj *pao,
interface
->
control_cache
.
size_in_bytes
,
(
struct
hpi_control_cache_info
*
)
p_control_cache_virtual
);
if
(
!
phw
->
p_cache
)
err
=
HPI_ERROR_MEMORY_ALLOC
;
}
if
(
!
err
)
{
err
=
hpios_locked_mem_get_phys_addr
(
&
phw
->
...
...
sound/pci/asihpi/hpicmn.c
View file @
e6d06e08
...
...
@@ -571,14 +571,20 @@ struct hpi_control_cache *hpi_alloc_control_cache(const u32
{
struct
hpi_control_cache
*
p_cache
=
kmalloc
(
sizeof
(
*
p_cache
),
GFP_KERNEL
);
if
(
!
p_cache
)
return
NULL
;
p_cache
->
p_info
=
kmalloc
(
sizeof
(
*
p_cache
->
p_info
)
*
number_of_controls
,
GFP_KERNEL
);
if
(
!
p_cache
->
p_info
)
{
kfree
(
p_cache
);
return
NULL
;
}
p_cache
->
cache_size_in_bytes
=
size_in_bytes
;
p_cache
->
control_count
=
number_of_controls
;
p_cache
->
p_cache
=
(
struct
hpi_control_cache_single
*
)
pDSP_control_buffer
;
p_cache
->
init
=
0
;
p_cache
->
p_info
=
kmalloc
(
sizeof
(
*
p_cache
->
p_info
)
*
p_cache
->
control_count
,
GFP_KERNEL
);
return
p_cache
;
}
...
...
sound/pci/cs46xx/dsp_spos.c
View file @
e6d06e08
...
...
@@ -225,39 +225,25 @@ struct dsp_spos_instance *cs46xx_dsp_spos_create (struct snd_cs46xx * chip)
{
struct
dsp_spos_instance
*
ins
=
kzalloc
(
sizeof
(
struct
dsp_spos_instance
),
GFP_KERNEL
);
if
(
ins
==
NULL
)
if
(
ins
==
NULL
)
return
NULL
;
/* better to use vmalloc for this big table */
ins
->
symbol_table
.
nsymbols
=
0
;
ins
->
symbol_table
.
symbols
=
vmalloc
(
sizeof
(
struct
dsp_symbol_entry
)
*
DSP_MAX_SYMBOLS
);
ins
->
symbol_table
.
highest_frag_index
=
0
;
if
(
ins
->
symbol_table
.
symbols
==
NULL
)
{
ins
->
code
.
data
=
kmalloc
(
DSP_CODE_BYTE_SIZE
,
GFP_KERNEL
)
;
ins
->
modules
=
kmalloc
(
sizeof
(
struct
dsp_module_desc
)
*
DSP_MAX_MODULES
,
GFP_KERNEL
);
if
(
!
ins
->
symbol_table
.
symbols
||
!
ins
->
code
.
data
||
!
ins
->
modules
)
{
cs46xx_dsp_spos_destroy
(
chip
);
goto
error
;
}
ins
->
symbol_table
.
nsymbols
=
0
;
ins
->
symbol_table
.
highest_frag_index
=
0
;
ins
->
code
.
offset
=
0
;
ins
->
code
.
size
=
0
;
ins
->
code
.
data
=
kmalloc
(
DSP_CODE_BYTE_SIZE
,
GFP_KERNEL
);
if
(
ins
->
code
.
data
==
NULL
)
{
cs46xx_dsp_spos_destroy
(
chip
);
goto
error
;
}
ins
->
nscb
=
0
;
ins
->
ntask
=
0
;
ins
->
nmodules
=
0
;
ins
->
modules
=
kmalloc
(
sizeof
(
struct
dsp_module_desc
)
*
DSP_MAX_MODULES
,
GFP_KERNEL
);
if
(
ins
->
modules
==
NULL
)
{
cs46xx_dsp_spos_destroy
(
chip
);
goto
error
;
}
/* default SPDIF input sample rate
to 48000 khz */
...
...
@@ -271,8 +257,8 @@ struct dsp_spos_instance *cs46xx_dsp_spos_create (struct snd_cs46xx * chip)
/* set left and right validity bits and
default channel status */
ins
->
spdif_csuv_default
=
ins
->
spdif_csuv_stream
=
ins
->
spdif_csuv_default
=
ins
->
spdif_csuv_stream
=
/* byte 0 */
((
unsigned
int
)
_wrap_all_bits
(
(
SNDRV_PCM_DEFAULT_CON_SPDIF
&
0xff
))
<<
24
)
|
/* byte 1 */
((
unsigned
int
)
_wrap_all_bits
(
((
SNDRV_PCM_DEFAULT_CON_SPDIF
>>
8
)
&
0xff
))
<<
16
)
|
/* byte 3 */
(
unsigned
int
)
_wrap_all_bits
(
(
SNDRV_PCM_DEFAULT_CON_SPDIF
>>
24
)
&
0xff
)
|
...
...
@@ -281,6 +267,9 @@ struct dsp_spos_instance *cs46xx_dsp_spos_create (struct snd_cs46xx * chip)
return
ins
;
error:
kfree
(
ins
->
modules
);
kfree
(
ins
->
code
.
data
);
vfree
(
ins
->
symbol_table
.
symbols
);
kfree
(
ins
);
return
NULL
;
}
...
...
sound/pci/hda/patch_cirrus.c
View file @
e6d06e08
...
...
@@ -1166,6 +1166,7 @@ static const char *cs420x_models[CS420X_MODELS] = {
static
struct
snd_pci_quirk
cs420x_cfg_tbl
[]
=
{
SND_PCI_QUIRK
(
0x10de
,
0x0ac0
,
"MacBookPro 5,3"
,
CS420X_MBP53
),
SND_PCI_QUIRK
(
0x10de
,
0x0d94
,
"MacBookAir 3,1(2)"
,
CS420X_MBP55
),
SND_PCI_QUIRK
(
0x10de
,
0xcb79
,
"MacBookPro 5,5"
,
CS420X_MBP55
),
SND_PCI_QUIRK
(
0x10de
,
0xcb89
,
"MacBookPro 7,1"
,
CS420X_MBP55
),
SND_PCI_QUIRK
(
0x8086
,
0x7270
,
"IMac 27 Inch"
,
CS420X_IMAC27
),
...
...
sound/pci/lx6464es/lx6464es.c
View file @
e6d06e08
...
...
@@ -425,7 +425,7 @@ static int lx_pcm_hw_free(struct snd_pcm_substream *substream)
static
void
lx_trigger_start
(
struct
lx6464es
*
chip
,
struct
lx_stream
*
lx_stream
)
{
struct
snd_pcm_substream
*
substream
=
lx_stream
->
stream
;
const
int
is_capture
=
lx_stream
->
is_capture
;
const
unsigned
int
is_capture
=
lx_stream
->
is_capture
;
int
err
;
...
...
@@ -473,7 +473,7 @@ static void lx_trigger_start(struct lx6464es *chip, struct lx_stream *lx_stream)
static
void
lx_trigger_stop
(
struct
lx6464es
*
chip
,
struct
lx_stream
*
lx_stream
)
{
const
int
is_capture
=
lx_stream
->
is_capture
;
const
unsigned
int
is_capture
=
lx_stream
->
is_capture
;
int
err
;
snd_printd
(
LXP
"stopping: stopping stream
\n
"
);
...
...
sound/pci/lx6464es/lx6464es.h
View file @
e6d06e08
...
...
@@ -60,7 +60,7 @@ struct lx_stream {
snd_pcm_uframes_t
frame_pos
;
enum
lx_stream_status
status
;
/* free, open, running, draining
* pause */
int
is_capture
:
1
;
unsigned
int
is_capture
:
1
;
};
...
...
sound/pci/lx6464es/lx_core.c
View file @
e6d06e08
...
...
@@ -1152,7 +1152,7 @@ static int lx_interrupt_request_new_buffer(struct lx6464es *chip,
struct
lx_stream
*
lx_stream
)
{
struct
snd_pcm_substream
*
substream
=
lx_stream
->
stream
;
int
is_capture
=
lx_stream
->
is_capture
;
const
unsigned
int
is_capture
=
lx_stream
->
is_capture
;
int
err
;
unsigned
long
flags
;
...
...
sound/usb/mixer_quirks.c
View file @
e6d06e08
...
...
@@ -60,7 +60,7 @@ static const struct rc_config {
{
USB_ID
(
0x041e
,
0x3000
),
0
,
1
,
2
,
1
,
18
,
0x0013
},
/* Extigy */
{
USB_ID
(
0x041e
,
0x3020
),
2
,
1
,
6
,
6
,
18
,
0x0013
},
/* Audigy 2 NX */
{
USB_ID
(
0x041e
,
0x3040
),
2
,
2
,
6
,
6
,
2
,
0x6e91
},
/* Live! 24-bit */
{
USB_ID
(
0x041e
,
0x3042
),
0
,
1
,
1
,
1
,
1
,
0x000d
},
/* Usb X-Fi */
{
USB_ID
(
0x041e
,
0x3042
),
0
,
1
,
1
,
1
,
1
,
0x000d
},
/* Usb X-Fi
S51
*/
{
USB_ID
(
0x041e
,
0x3048
),
2
,
2
,
6
,
6
,
2
,
0x6e91
},
/* Toshiba SB0500 */
};
...
...
@@ -183,7 +183,13 @@ static int snd_audigy2nx_led_put(struct snd_kcontrol *kcontrol, struct snd_ctl_e
if
(
value
>
1
)
return
-
EINVAL
;
changed
=
value
!=
mixer
->
audigy2nx_leds
[
index
];
err
=
snd_usb_ctl_msg
(
mixer
->
chip
->
dev
,
if
(
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3042
))
err
=
snd_usb_ctl_msg
(
mixer
->
chip
->
dev
,
usb_sndctrlpipe
(
mixer
->
chip
->
dev
,
0
),
0x24
,
USB_DIR_OUT
|
USB_TYPE_VENDOR
|
USB_RECIP_OTHER
,
!
value
,
0
,
NULL
,
0
,
100
);
else
err
=
snd_usb_ctl_msg
(
mixer
->
chip
->
dev
,
usb_sndctrlpipe
(
mixer
->
chip
->
dev
,
0
),
0x24
,
USB_DIR_OUT
|
USB_TYPE_VENDOR
|
USB_RECIP_OTHER
,
value
,
index
+
2
,
NULL
,
0
,
100
);
...
...
@@ -225,8 +231,12 @@ static int snd_audigy2nx_controls_create(struct usb_mixer_interface *mixer)
int
i
,
err
;
for
(
i
=
0
;
i
<
ARRAY_SIZE
(
snd_audigy2nx_controls
);
++
i
)
{
/* USB X-Fi S51 doesn't have a CMSS LED */
if
((
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3042
))
&&
i
==
0
)
continue
;
if
(
i
>
1
&&
/* Live24ext has 2 LEDs only */
(
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3040
)
||
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3042
)
||
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3048
)))
break
;
err
=
snd_ctl_add
(
mixer
->
chip
->
card
,
...
...
@@ -365,6 +375,7 @@ int snd_usb_mixer_apply_create_quirk(struct usb_mixer_interface *mixer)
if
(
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3020
)
||
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3040
)
||
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3042
)
||
mixer
->
chip
->
usb_id
==
USB_ID
(
0x041e
,
0x3048
))
{
if
((
err
=
snd_audigy2nx_controls_create
(
mixer
))
<
0
)
return
err
;
...
...
sound/usb/pcm.c
View file @
e6d06e08
...
...
@@ -676,8 +676,10 @@ static int snd_usb_pcm_check_knot(struct snd_pcm_runtime *runtime,
if
(
!
needs_knot
)
return
0
;
subs
->
rate_list
.
count
=
count
;
subs
->
rate_list
.
list
=
kmalloc
(
sizeof
(
int
)
*
count
,
GFP_KERNEL
);
if
(
!
subs
->
rate_list
.
list
)
return
-
ENOMEM
;
subs
->
rate_list
.
count
=
count
;
subs
->
rate_list
.
mask
=
0
;
count
=
0
;
list_for_each_entry
(
fp
,
&
subs
->
fmt_list
,
list
)
{
...
...
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