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
ceb8ef5e
Commit
ceb8ef5e
authored
Dec 10, 2012
by
Mark Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'asoc/topic/samsung' into asoc-next
parents
a5034515
a08485d8
Changes
46
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
46 changed files
with
292 additions
and
157 deletions
+292
-157
arch/arm/mach-exynos/mach-armlex4210.c
arch/arm/mach-exynos/mach-armlex4210.c
+0
-1
arch/arm/mach-exynos/mach-smdkv310.c
arch/arm/mach-exynos/mach-smdkv310.c
+0
-1
arch/arm/mach-s3c24xx/mach-gta02.c
arch/arm/mach-s3c24xx/mach-gta02.c
+0
-1
arch/arm/mach-s3c24xx/mach-h1940.c
arch/arm/mach-s3c24xx/mach-h1940.c
+0
-1
arch/arm/mach-s3c24xx/mach-mini2440.c
arch/arm/mach-s3c24xx/mach-mini2440.c
+0
-1
arch/arm/mach-s3c24xx/mach-rx1950.c
arch/arm/mach-s3c24xx/mach-rx1950.c
+0
-1
arch/arm/mach-s3c64xx/mach-crag6410.c
arch/arm/mach-s3c64xx/mach-crag6410.c
+0
-1
arch/arm/mach-s3c64xx/mach-smdk6410.c
arch/arm/mach-s3c64xx/mach-smdk6410.c
+0
-1
arch/arm/mach-s5p64x0/mach-smdk6440.c
arch/arm/mach-s5p64x0/mach-smdk6440.c
+0
-1
arch/arm/mach-s5p64x0/mach-smdk6450.c
arch/arm/mach-s5p64x0/mach-smdk6450.c
+0
-1
arch/arm/mach-s5pc100/mach-smdkc100.c
arch/arm/mach-s5pc100/mach-smdkc100.c
+0
-1
arch/arm/mach-s5pv210/mach-smdkc110.c
arch/arm/mach-s5pv210/mach-smdkc110.c
+0
-1
arch/arm/mach-s5pv210/mach-smdkv210.c
arch/arm/mach-s5pv210/mach-smdkv210.c
+0
-1
arch/arm/plat-samsung/devs.c
arch/arm/plat-samsung/devs.c
+0
-9
arch/arm/plat-samsung/include/plat/devs.h
arch/arm/plat-samsung/include/plat/devs.h
+0
-1
include/linux/platform_data/asoc-s3c.h
include/linux/platform_data/asoc-s3c.h
+0
-6
sound/soc/samsung/ac97.c
sound/soc/samsung/ac97.c
+12
-4
sound/soc/samsung/bells.c
sound/soc/samsung/bells.c
+165
-57
sound/soc/samsung/dma.c
sound/soc/samsung/dma.c
+6
-18
sound/soc/samsung/dma.h
sound/soc/samsung/dma.h
+3
-0
sound/soc/samsung/goni_wm8994.c
sound/soc/samsung/goni_wm8994.c
+1
-1
sound/soc/samsung/h1940_uda1380.c
sound/soc/samsung/h1940_uda1380.c
+1
-1
sound/soc/samsung/i2s.c
sound/soc/samsung/i2s.c
+14
-10
sound/soc/samsung/jive_wm8750.c
sound/soc/samsung/jive_wm8750.c
+1
-1
sound/soc/samsung/littlemill.c
sound/soc/samsung/littlemill.c
+1
-1
sound/soc/samsung/ln2440sbc_alc650.c
sound/soc/samsung/ln2440sbc_alc650.c
+1
-1
sound/soc/samsung/lowland.c
sound/soc/samsung/lowland.c
+1
-1
sound/soc/samsung/neo1973_wm8753.c
sound/soc/samsung/neo1973_wm8753.c
+1
-1
sound/soc/samsung/pcm.c
sound/soc/samsung/pcm.c
+15
-6
sound/soc/samsung/rx1950_uda1380.c
sound/soc/samsung/rx1950_uda1380.c
+1
-1
sound/soc/samsung/s3c2412-i2s.c
sound/soc/samsung/s3c2412-i2s.c
+19
-1
sound/soc/samsung/s3c24xx-i2s.c
sound/soc/samsung/s3c24xx-i2s.c
+19
-1
sound/soc/samsung/s3c24xx_simtec_hermes.c
sound/soc/samsung/s3c24xx_simtec_hermes.c
+1
-1
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
+1
-1
sound/soc/samsung/s3c24xx_uda134x.c
sound/soc/samsung/s3c24xx_uda134x.c
+1
-1
sound/soc/samsung/smartq_wm8987.c
sound/soc/samsung/smartq_wm8987.c
+1
-1
sound/soc/samsung/smdk2443_wm9710.c
sound/soc/samsung/smdk2443_wm9710.c
+1
-1
sound/soc/samsung/smdk_spdif.c
sound/soc/samsung/smdk_spdif.c
+1
-1
sound/soc/samsung/smdk_wm8580.c
sound/soc/samsung/smdk_wm8580.c
+3
-3
sound/soc/samsung/smdk_wm8580pcm.c
sound/soc/samsung/smdk_wm8580pcm.c
+1
-1
sound/soc/samsung/smdk_wm8994.c
sound/soc/samsung/smdk_wm8994.c
+2
-2
sound/soc/samsung/smdk_wm8994pcm.c
sound/soc/samsung/smdk_wm8994pcm.c
+1
-1
sound/soc/samsung/smdk_wm9713.c
sound/soc/samsung/smdk_wm9713.c
+1
-1
sound/soc/samsung/spdif.c
sound/soc/samsung/spdif.c
+15
-7
sound/soc/samsung/speyside.c
sound/soc/samsung/speyside.c
+1
-1
sound/soc/samsung/tobermory.c
sound/soc/samsung/tobermory.c
+1
-1
No files found.
arch/arm/mach-exynos/mach-armlex4210.c
View file @
ceb8ef5e
...
...
@@ -147,7 +147,6 @@ static struct platform_device *armlex4210_devices[] __initdata = {
&
s3c_device_hsmmc3
,
&
s3c_device_rtc
,
&
s3c_device_wdt
,
&
samsung_asoc_dma
,
&
armlex4210_smsc911x
,
&
exynos4_device_ahci
,
};
...
...
arch/arm/mach-exynos/mach-smdkv310.c
View file @
ceb8ef5e
...
...
@@ -311,7 +311,6 @@ static struct platform_device *smdkv310_devices[] __initdata = {
&
s5p_device_mfc_l
,
&
s5p_device_mfc_r
,
&
exynos4_device_spdif
,
&
samsung_asoc_dma
,
&
samsung_asoc_idma
,
&
s5p_device_fimd0
,
&
smdkv310_device_audio
,
...
...
arch/arm/mach-s3c24xx/mach-gta02.c
View file @
ceb8ef5e
...
...
@@ -521,7 +521,6 @@ static struct platform_device *gta02_devices[] __initdata = {
&
gta02_nor_flash
,
&
s3c24xx_pwm_device
,
&
s3c_device_iis
,
&
samsung_asoc_dma
,
&
s3c_device_i2c0
,
&
gta02_dfbmcs320_device
,
&
gta02_buttons_device
,
...
...
arch/arm/mach-s3c24xx/mach-h1940.c
View file @
ceb8ef5e
...
...
@@ -632,7 +632,6 @@ static struct platform_device *h1940_devices[] __initdata = {
&
s3c_device_wdt
,
&
s3c_device_i2c0
,
&
s3c_device_iis
,
&
samsung_asoc_dma
,
&
s3c_device_usbgadget
,
&
h1940_device_leds
,
&
h1940_device_bluetooth
,
...
...
arch/arm/mach-s3c24xx/mach-mini2440.c
View file @
ceb8ef5e
...
...
@@ -519,7 +519,6 @@ static struct platform_device *mini2440_devices[] __initdata = {
&
s3c_device_iis
,
&
uda1340_codec
,
&
mini2440_audio
,
&
samsung_asoc_dma
,
};
static
void
__init
mini2440_map_io
(
void
)
...
...
arch/arm/mach-s3c24xx/mach-rx1950.c
View file @
ceb8ef5e
...
...
@@ -712,7 +712,6 @@ static struct platform_device *rx1950_devices[] __initdata = {
&
s3c_device_wdt
,
&
s3c_device_i2c0
,
&
s3c_device_iis
,
&
samsung_asoc_dma
,
&
s3c_device_usbgadget
,
&
s3c_device_rtc
,
&
s3c_device_nand
,
...
...
arch/arm/mach-s3c64xx/mach-crag6410.c
View file @
ceb8ef5e
...
...
@@ -357,7 +357,6 @@ static struct platform_device *crag6410_devices[] __initdata = {
&
s3c_device_timer
[
0
],
&
s3c64xx_device_iis0
,
&
s3c64xx_device_iis1
,
&
samsung_asoc_dma
,
&
samsung_device_keypad
,
&
crag6410_gpio_keydev
,
&
crag6410_dm9k_device
,
...
...
arch/arm/mach-s3c64xx/mach-smdk6410.c
View file @
ceb8ef5e
...
...
@@ -275,7 +275,6 @@ static struct platform_device *smdk6410_devices[] __initdata = {
&
s3c_device_fb
,
&
s3c_device_ohci
,
&
s3c_device_usb_hsotg
,
&
samsung_asoc_dma
,
&
s3c64xx_device_iisv4
,
&
samsung_device_keypad
,
...
...
arch/arm/mach-s5p64x0/mach-smdk6440.c
View file @
ceb8ef5e
...
...
@@ -165,7 +165,6 @@ static struct platform_device *smdk6440_devices[] __initdata = {
&
s3c_device_i2c1
,
&
s3c_device_ts
,
&
s3c_device_wdt
,
&
samsung_asoc_dma
,
&
s5p6440_device_iis
,
&
s3c_device_fb
,
&
smdk6440_lcd_lte480wv
,
...
...
arch/arm/mach-s5p64x0/mach-smdk6450.c
View file @
ceb8ef5e
...
...
@@ -183,7 +183,6 @@ static struct platform_device *smdk6450_devices[] __initdata = {
&
s3c_device_i2c1
,
&
s3c_device_ts
,
&
s3c_device_wdt
,
&
samsung_asoc_dma
,
&
s5p6450_device_iis0
,
&
s3c_device_fb
,
&
smdk6450_lcd_lte480wv
,
...
...
arch/arm/mach-s5pc100/mach-smdkc100.c
View file @
ceb8ef5e
...
...
@@ -197,7 +197,6 @@ static struct platform_device *smdkc100_devices[] __initdata = {
&
s3c_device_ts
,
&
s3c_device_wdt
,
&
smdkc100_lcd_powerdev
,
&
samsung_asoc_dma
,
&
s5pc100_device_iis0
,
&
samsung_device_keypad
,
&
s5pc100_device_ac97
,
...
...
arch/arm/mach-s5pv210/mach-smdkc110.c
View file @
ceb8ef5e
...
...
@@ -85,7 +85,6 @@ static struct s3c_ide_platdata smdkc110_ide_pdata __initdata = {
};
static
struct
platform_device
*
smdkc110_devices
[]
__initdata
=
{
&
samsung_asoc_dma
,
&
s5pv210_device_iis0
,
&
s5pv210_device_ac97
,
&
s5pv210_device_spdif
,
...
...
arch/arm/mach-s5pv210/mach-smdkv210.c
View file @
ceb8ef5e
...
...
@@ -234,7 +234,6 @@ static struct platform_device *smdkv210_devices[] __initdata = {
&
s5pv210_device_ac97
,
&
s5pv210_device_iis0
,
&
s5pv210_device_spdif
,
&
samsung_asoc_dma
,
&
samsung_asoc_idma
,
&
samsung_device_keypad
,
&
smdkv210_dm9000
,
...
...
arch/arm/plat-samsung/devs.c
View file @
ceb8ef5e
...
...
@@ -146,15 +146,6 @@ struct platform_device s3c_device_camif = {
/* ASOC DMA */
struct
platform_device
samsung_asoc_dma
=
{
.
name
=
"samsung-audio"
,
.
id
=
-
1
,
.
dev
=
{
.
dma_mask
=
&
samsung_device_dma_mask
,
.
coherent_dma_mask
=
DMA_BIT_MASK
(
32
),
}
};
struct
platform_device
samsung_asoc_idma
=
{
.
name
=
"samsung-idma"
,
.
id
=
-
1
,
...
...
arch/arm/plat-samsung/include/plat/devs.h
View file @
ceb8ef5e
...
...
@@ -135,7 +135,6 @@ extern struct platform_device exynos4_device_spdif;
extern
struct
platform_device
exynos_device_drm
;
extern
struct
platform_device
samsung_asoc_dma
;
extern
struct
platform_device
samsung_asoc_idma
;
extern
struct
platform_device
samsung_device_keypad
;
...
...
include/linux/platform_data/asoc-s3c.h
View file @
ceb8ef5e
...
...
@@ -38,12 +38,6 @@ struct samsung_i2s {
#define QUIRK_NEED_RSTCLR (1 << 3)
/* Quirks of the I2S controller */
u32
quirks
;
/*
* Array of clock names that can be used to generate I2S signals.
* Also corresponds to clocks of I2SMOD[10]
*/
const
char
**
src_clk
;
dma_addr_t
idma_addr
;
};
...
...
sound/soc/samsung/ac97.c
View file @
ceb8ef5e
...
...
@@ -442,7 +442,7 @@ static __devinit int s3c_ac97_probe(struct platform_device *pdev)
ret
=
-
ENODEV
;
goto
err2
;
}
clk_enable
(
s3c_ac97
.
ac97_clk
);
clk_
prepare_
enable
(
s3c_ac97
.
ac97_clk
);
if
(
ac97_pdata
->
cfg_gpio
(
pdev
))
{
dev_err
(
&
pdev
->
dev
,
"Unable to configure gpio
\n
"
);
...
...
@@ -462,13 +462,20 @@ static __devinit int s3c_ac97_probe(struct platform_device *pdev)
if
(
ret
)
goto
err5
;
return
0
;
ret
=
asoc_dma_platform_register
(
&
pdev
->
dev
);
if
(
ret
)
{
dev_err
(
&
pdev
->
dev
,
"failed to get register DMA: %d
\n
"
,
ret
);
goto
err6
;
}
return
0
;
err6:
snd_soc_unregister_dais
(
&
pdev
->
dev
,
ARRAY_SIZE
(
s3c_ac97_dai
));
err5:
free_irq
(
irq_res
->
start
,
NULL
);
err4:
err3:
clk_disable
(
s3c_ac97
.
ac97_clk
);
clk_disable
_unprepare
(
s3c_ac97
.
ac97_clk
);
clk_put
(
s3c_ac97
.
ac97_clk
);
err2:
iounmap
(
s3c_ac97
.
regs
);
...
...
@@ -482,13 +489,14 @@ static __devexit int s3c_ac97_remove(struct platform_device *pdev)
{
struct
resource
*
mem_res
,
*
irq_res
;
asoc_dma_platform_unregister
(
&
pdev
->
dev
);
snd_soc_unregister_dais
(
&
pdev
->
dev
,
ARRAY_SIZE
(
s3c_ac97_dai
));
irq_res
=
platform_get_resource
(
pdev
,
IORESOURCE_IRQ
,
0
);
if
(
irq_res
)
free_irq
(
irq_res
->
start
,
NULL
);
clk_disable
(
s3c_ac97
.
ac97_clk
);
clk_disable
_unprepare
(
s3c_ac97
.
ac97_clk
);
clk_put
(
s3c_ac97
.
ac97_clk
);
iounmap
(
s3c_ac97
.
regs
);
...
...
sound/soc/samsung/bells.c
View file @
ceb8ef5e
This diff is collapsed.
Click to expand it.
sound/soc/samsung/dma.c
View file @
ceb8ef5e
...
...
@@ -432,30 +432,18 @@ static struct snd_soc_platform_driver samsung_asoc_platform = {
.
pcm_free
=
dma_free_dma_buffers
,
};
static
int
__devinit
samsung_asoc_platform_probe
(
struct
platform_device
*
p
dev
)
int
__devinit
asoc_dma_platform_register
(
struct
device
*
dev
)
{
return
snd_soc_register_platform
(
&
pdev
->
dev
,
&
samsung_asoc_platform
);
return
snd_soc_register_platform
(
dev
,
&
samsung_asoc_platform
);
}
EXPORT_SYMBOL_GPL
(
asoc_dma_platform_register
);
static
int
__devexit
samsung_asoc_platform_remove
(
struct
platform_device
*
p
dev
)
void
__devexit
asoc_dma_platform_unregister
(
struct
device
*
dev
)
{
snd_soc_unregister_platform
(
&
pdev
->
dev
);
return
0
;
snd_soc_unregister_platform
(
dev
);
}
static
struct
platform_driver
asoc_dma_driver
=
{
.
driver
=
{
.
name
=
"samsung-audio"
,
.
owner
=
THIS_MODULE
,
},
.
probe
=
samsung_asoc_platform_probe
,
.
remove
=
__devexit_p
(
samsung_asoc_platform_remove
),
};
module_platform_driver
(
asoc_dma_driver
);
EXPORT_SYMBOL_GPL
(
asoc_dma_platform_unregister
);
MODULE_AUTHOR
(
"Ben Dooks, <ben@simtec.co.uk>"
);
MODULE_DESCRIPTION
(
"Samsung ASoC DMA Driver"
);
MODULE_LICENSE
(
"GPL"
);
MODULE_ALIAS
(
"platform:samsung-audio"
);
sound/soc/samsung/dma.h
View file @
ceb8ef5e
...
...
@@ -21,4 +21,7 @@ struct s3c_dma_params {
struct
samsung_dma_ops
*
ops
;
};
int
asoc_dma_platform_register
(
struct
device
*
dev
);
void
asoc_dma_platform_unregister
(
struct
device
*
dev
);
#endif
sound/soc/samsung/goni_wm8994.c
View file @
ceb8ef5e
...
...
@@ -228,7 +228,7 @@ static struct snd_soc_dai_link goni_dai[] = {
.
stream_name
=
"WM8994 HiFi"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm8994-aif1"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm8994-codec.0-001a"
,
.
init
=
goni_wm8994_init
,
.
ops
=
&
goni_hifi_ops
,
...
...
sound/soc/samsung/h1940_uda1380.c
View file @
ceb8ef5e
...
...
@@ -207,7 +207,7 @@ static struct snd_soc_dai_link h1940_uda1380_dai[] = {
.
cpu_dai_name
=
"s3c24xx-iis"
,
.
codec_dai_name
=
"uda1380-hifi"
,
.
init
=
h1940_uda1380_init
,
.
platform_name
=
"s
amsung-audio
"
,
.
platform_name
=
"s
3c24xx-iis
"
,
.
codec_name
=
"uda1380-codec.0-001a"
,
.
ops
=
&
h1940_ops
,
},
...
...
sound/soc/samsung/i2s.c
View file @
ceb8ef5e
...
...
@@ -49,8 +49,6 @@ struct i2s_dai {
struct
clk
*
clk
;
/* Clock for generating I2S signals */
struct
clk
*
op_clk
;
/* Array of clock names for op_clk */
const
char
**
src_clk
;
/* Pointer to the Primary_Fifo if this is Sec_Fifo, NULL otherwise */
struct
i2s_dai
*
pri_dai
;
/* Pointer to the Secondary_Fifo if it has one, NULL otherwise */
...
...
@@ -423,7 +421,7 @@ static int i2s_set_sysclk(struct snd_soc_dai *dai,
if
(
i2s
->
op_clk
)
{
if
((
clk_id
&&
!
(
mod
&
MOD_IMS_SYSMUX
))
||
(
!
clk_id
&&
(
mod
&
MOD_IMS_SYSMUX
)))
{
clk_disable
(
i2s
->
op_clk
);
clk_disable
_unprepare
(
i2s
->
op_clk
);
clk_put
(
i2s
->
op_clk
);
}
else
{
i2s
->
rclk_srcrate
=
...
...
@@ -432,9 +430,13 @@ static int i2s_set_sysclk(struct snd_soc_dai *dai,
}
}
i2s
->
op_clk
=
clk_get
(
&
i2s
->
pdev
->
dev
,
i2s
->
src_clk
[
clk_id
]);
clk_enable
(
i2s
->
op_clk
);
if
(
clk_id
)
i2s
->
op_clk
=
clk_get
(
&
i2s
->
pdev
->
dev
,
"i2s_opclk1"
);
else
i2s
->
op_clk
=
clk_get
(
&
i2s
->
pdev
->
dev
,
"i2s_opclk0"
);
clk_prepare_enable
(
i2s
->
op_clk
);
i2s
->
rclk_srcrate
=
clk_get_rate
(
i2s
->
op_clk
);
/* Over-ride the other's */
...
...
@@ -880,7 +882,7 @@ static int samsung_i2s_dai_probe(struct snd_soc_dai *dai)
iounmap
(
i2s
->
addr
);
return
-
ENOENT
;
}
clk_enable
(
i2s
->
clk
);
clk_
prepare_
enable
(
i2s
->
clk
);
if
(
other
)
{
other
->
addr
=
i2s
->
addr
;
...
...
@@ -922,7 +924,7 @@ static int samsung_i2s_dai_remove(struct snd_soc_dai *dai)
if
(
i2s
->
quirks
&
QUIRK_NEED_RSTCLR
)
writel
(
0
,
i2s
->
addr
+
I2SCON
);
clk_disable
(
i2s
->
clk
);
clk_disable
_unprepare
(
i2s
->
clk
);
clk_put
(
i2s
->
clk
);
iounmap
(
i2s
->
addr
);
...
...
@@ -1007,6 +1009,7 @@ static __devinit int samsung_i2s_probe(struct platform_device *pdev)
sec_dai
=
dev_get_drvdata
(
&
pdev
->
dev
);
snd_soc_register_dai
(
&
sec_dai
->
pdev
->
dev
,
&
sec_dai
->
i2s_dai_drv
);
asoc_dma_platform_register
(
&
pdev
->
dev
);
return
0
;
}
...
...
@@ -1067,7 +1070,6 @@ static __devinit int samsung_i2s_probe(struct platform_device *pdev)
(
struct
s3c2410_dma_client
*
)
&
pri_dai
->
dma_capture
;
pri_dai
->
dma_playback
.
channel
=
dma_pl_chan
;
pri_dai
->
dma_capture
.
channel
=
dma_cp_chan
;
pri_dai
->
src_clk
=
i2s_cfg
->
src_clk
;
pri_dai
->
dma_playback
.
dma_size
=
4
;
pri_dai
->
dma_capture
.
dma_size
=
4
;
pri_dai
->
base
=
regs_base
;
...
...
@@ -1088,7 +1090,6 @@ static __devinit int samsung_i2s_probe(struct platform_device *pdev)
(
struct
s3c2410_dma_client
*
)
&
sec_dai
->
dma_playback
;
/* Use iDMA always if SysDMA not provided */
sec_dai
->
dma_playback
.
channel
=
dma_pl_sec_chan
?
:
-
1
;
sec_dai
->
src_clk
=
i2s_cfg
->
src_clk
;
sec_dai
->
dma_playback
.
dma_size
=
4
;
sec_dai
->
base
=
regs_base
;
sec_dai
->
quirks
=
quirks
;
...
...
@@ -1107,6 +1108,8 @@ static __devinit int samsung_i2s_probe(struct platform_device *pdev)
pm_runtime_enable
(
&
pdev
->
dev
);
asoc_dma_platform_register
(
&
pdev
->
dev
);
return
0
;
err:
release_mem_region
(
regs_base
,
resource_size
(
res
));
...
...
@@ -1135,6 +1138,7 @@ static __devexit int samsung_i2s_remove(struct platform_device *pdev)
i2s
->
pri_dai
=
NULL
;
i2s
->
sec_dai
=
NULL
;
asoc_dma_platform_unregister
(
&
pdev
->
dev
);
snd_soc_unregister_dai
(
&
pdev
->
dev
);
return
0
;
...
...
sound/soc/samsung/jive_wm8750.c
View file @
ceb8ef5e
...
...
@@ -118,7 +118,7 @@ static struct snd_soc_dai_link jive_dai = {
.
stream_name
=
"WM8750"
,
.
cpu_dai_name
=
"s3c2412-i2s"
,
.
codec_dai_name
=
"wm8750-hifi"
,
.
platform_name
=
"s
amsung-audio
"
,
.
platform_name
=
"s
3c2412-i2s
"
,
.
codec_name
=
"wm8750.0-001a"
,
.
init
=
jive_wm8750_init
,
.
ops
=
&
jive_ops
,
...
...
sound/soc/samsung/littlemill.c
View file @
ceb8ef5e
...
...
@@ -145,7 +145,7 @@ static struct snd_soc_dai_link littlemill_dai[] = {
.
stream_name
=
"CPU"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm8994-aif1"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm8994-codec"
,
.
dai_fmt
=
SND_SOC_DAIFMT_I2S
|
SND_SOC_DAIFMT_NB_NF
|
SND_SOC_DAIFMT_CBM_CFM
,
...
...
sound/soc/samsung/ln2440sbc_alc650.c
View file @
ceb8ef5e
...
...
@@ -28,7 +28,7 @@ static struct snd_soc_dai_link ln2440sbc_dai[] = {
.
cpu_dai_name
=
"samsung-ac97"
,
.
codec_dai_name
=
"ac97-hifi"
,
.
codec_name
=
"ac97-codec"
,
.
platform_name
=
"samsung-a
udio
"
,
.
platform_name
=
"samsung-a
c97
"
,
},
};
...
...
sound/soc/samsung/lowland.c
View file @
ceb8ef5e
...
...
@@ -99,7 +99,7 @@ static struct snd_soc_dai_link lowland_dai[] = {
.
stream_name
=
"CPU"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm5100-aif1"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm5100.1-001a"
,
.
dai_fmt
=
SND_SOC_DAIFMT_I2S
|
SND_SOC_DAIFMT_NB_NF
|
SND_SOC_DAIFMT_CBM_CFM
,
...
...
sound/soc/samsung/neo1973_wm8753.c
View file @
ceb8ef5e
...
...
@@ -364,7 +364,7 @@ static struct snd_soc_dai_link neo1973_dai[] = {
{
/* Hifi Playback - for similatious use with voice below */
.
name
=
"WM8753"
,
.
stream_name
=
"WM8753 HiFi"
,
.
platform_name
=
"s
amsung-audio
"
,
.
platform_name
=
"s
3c24xx-iis
"
,
.
cpu_dai_name
=
"s3c24xx-iis"
,
.
codec_dai_name
=
"wm8753-hifi"
,
.
codec_name
=
"wm8753.0-001a"
,
...
...
sound/soc/samsung/pcm.c
View file @
ceb8ef5e
...
...
@@ -543,7 +543,7 @@ static __devinit int s3c_pcm_dev_probe(struct platform_device *pdev)
ret
=
PTR_ERR
(
pcm
->
cclk
);
goto
err1
;
}
clk_enable
(
pcm
->
cclk
);
clk_
prepare_
enable
(
pcm
->
cclk
);
/* record our pcm structure for later use in the callbacks */
dev_set_drvdata
(
&
pdev
->
dev
,
pcm
);
...
...
@@ -568,7 +568,7 @@ static __devinit int s3c_pcm_dev_probe(struct platform_device *pdev)
ret
=
-
ENOENT
;
goto
err4
;
}
clk_enable
(
pcm
->
pclk
);
clk_
prepare_
enable
(
pcm
->
pclk
);
s3c_pcm_stereo_in
[
pdev
->
id
].
dma_addr
=
mem_res
->
start
+
S3C_PCM_RXFIFO
;
...
...
@@ -589,17 +589,25 @@ static __devinit int s3c_pcm_dev_probe(struct platform_device *pdev)
goto
err5
;
}
ret
=
asoc_dma_platform_register
(
&
pdev
->
dev
);
if
(
ret
)
{
dev_err
(
&
pdev
->
dev
,
"failed to get register DMA: %d
\n
"
,
ret
);
goto
err6
;
}
return
0
;
err6:
snd_soc_unregister_dai
(
&
pdev
->
dev
);
err5:
clk_disable
(
pcm
->
pclk
);
clk_disable
_unprepare
(
pcm
->
pclk
);
clk_put
(
pcm
->
pclk
);
err4:
iounmap
(
pcm
->
regs
);
err3:
release_mem_region
(
mem_res
->
start
,
resource_size
(
mem_res
));
err2:
clk_disable
(
pcm
->
cclk
);
clk_disable
_unprepare
(
pcm
->
cclk
);
clk_put
(
pcm
->
cclk
);
err1:
return
ret
;
...
...
@@ -610,6 +618,7 @@ static __devexit int s3c_pcm_dev_remove(struct platform_device *pdev)
struct
s3c_pcm_info
*
pcm
=
&
s3c_pcm
[
pdev
->
id
];
struct
resource
*
mem_res
;
asoc_dma_platform_unregister
(
&
pdev
->
dev
);
snd_soc_unregister_dai
(
&
pdev
->
dev
);
pm_runtime_disable
(
&
pdev
->
dev
);
...
...
@@ -619,8 +628,8 @@ static __devexit int s3c_pcm_dev_remove(struct platform_device *pdev)
mem_res
=
platform_get_resource
(
pdev
,
IORESOURCE_MEM
,
0
);
release_mem_region
(
mem_res
->
start
,
resource_size
(
mem_res
));
clk_disable
(
pcm
->
cclk
);
clk_disable
(
pcm
->
pclk
);
clk_disable
_unprepare
(
pcm
->
cclk
);
clk_disable
_unprepare
(
pcm
->
pclk
);
clk_put
(
pcm
->
pclk
);
clk_put
(
pcm
->
cclk
);
...
...
sound/soc/samsung/rx1950_uda1380.c
View file @
ceb8ef5e
...
...
@@ -85,7 +85,7 @@ static struct snd_soc_dai_link rx1950_uda1380_dai[] = {
.
cpu_dai_name
=
"s3c24xx-iis"
,
.
codec_dai_name
=
"uda1380-hifi"
,
.
init
=
rx1950_uda1380_init
,
.
platform_name
=
"s
amsung-audio
"
,
.
platform_name
=
"s
3c24xx-iis
"
,
.
codec_name
=
"uda1380-codec.0-001a"
,
.
ops
=
&
rx1950_ops
,
},
...
...
sound/soc/samsung/s3c2412-i2s.c
View file @
ceb8ef5e
...
...
@@ -162,11 +162,29 @@ static struct snd_soc_dai_driver s3c2412_i2s_dai = {
static
__devinit
int
s3c2412_iis_dev_probe
(
struct
platform_device
*
pdev
)
{
return
s3c_i2sv2_register_dai
(
&
pdev
->
dev
,
-
1
,
&
s3c2412_i2s_dai
);
int
ret
=
0
;
ret
=
s3c_i2sv2_register_dai
(
&
pdev
->
dev
,
-
1
,
&
s3c2412_i2s_dai
);
if
(
ret
)
{
pr_err
(
"failed to register the dai
\n
"
);
return
ret
;
}
ret
=
asoc_dma_platform_register
(
&
pdev
->
dev
);
if
(
ret
)
{
pr_err
(
"failed to register the DMA: %d
\n
"
,
ret
);
goto
err
;
}
return
0
;
err:
snd_soc_unregister_dai
(
&
pdev
->
dev
);
return
ret
;
}
static
__devexit
int
s3c2412_iis_dev_remove
(
struct
platform_device
*
pdev
)
{
asoc_dma_platform_unregister
(
&
pdev
->
dev
);
snd_soc_unregister_dai
(
&
pdev
->
dev
);
return
0
;
}
...
...
sound/soc/samsung/s3c24xx-i2s.c
View file @
ceb8ef5e
...
...
@@ -467,11 +467,29 @@ static struct snd_soc_dai_driver s3c24xx_i2s_dai = {
static
__devinit
int
s3c24xx_iis_dev_probe
(
struct
platform_device
*
pdev
)
{
return
snd_soc_register_dai
(
&
pdev
->
dev
,
&
s3c24xx_i2s_dai
);
int
ret
=
0
;
ret
=
s3c_i2sv2_register_dai
(
&
pdev
->
dev
,
-
1
,
&
s3c2412_i2s_dai
);
if
(
ret
)
{
pr_err
(
"failed to register the dai
\n
"
);
return
ret
;
}
ret
=
asoc_dma_platform_register
(
&
pdev
->
dev
);
if
(
ret
)
{
pr_err
(
"failed to register the dma: %d
\n
"
,
ret
);
goto
err
;
}
return
0
;
err:
snd_soc_unregister_dai
(
&
pdev
->
dev
);
return
ret
;
}
static
__devexit
int
s3c24xx_iis_dev_remove
(
struct
platform_device
*
pdev
)
{
asoc_dma_platform_unregister
(
&
pdev
->
dev
);
snd_soc_unregister_dai
(
&
pdev
->
dev
);
return
0
;
}
...
...
sound/soc/samsung/s3c24xx_simtec_hermes.c
View file @
ceb8ef5e
...
...
@@ -82,7 +82,7 @@ static struct snd_soc_dai_link simtec_dai_aic33 = {
.
codec_name
=
"tlv320aic3x-codec.0-001a"
,
.
cpu_dai_name
=
"s3c24xx-iis"
,
.
codec_dai_name
=
"tlv320aic3x-hifi"
,
.
platform_name
=
"s
amsung-audio
"
,
.
platform_name
=
"s
3c24xx-iis
"
,
.
init
=
simtec_hermes_init
,
};
...
...
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
View file @
ceb8ef5e
...
...
@@ -71,7 +71,7 @@ static struct snd_soc_dai_link simtec_dai_aic23 = {
.
codec_name
=
"tlv320aic3x-codec.0-001a"
,
.
cpu_dai_name
=
"s3c24xx-iis"
,
.
codec_dai_name
=
"tlv320aic3x-hifi"
,
.
platform_name
=
"s
amsung-audio
"
,
.
platform_name
=
"s
3c24xx-iis
"
,
.
init
=
simtec_tlv320aic23_init
,
};
...
...
sound/soc/samsung/s3c24xx_uda134x.c
View file @
ceb8ef5e
...
...
@@ -224,7 +224,7 @@ static struct snd_soc_dai_link s3c24xx_uda134x_dai_link = {
.
codec_dai_name
=
"uda134x-hifi"
,
.
cpu_dai_name
=
"s3c24xx-iis"
,
.
ops
=
&
s3c24xx_uda134x_ops
,
.
platform_name
=
"s
amsung-audio
"
,
.
platform_name
=
"s
3c24xx-iis
"
,
};
static
struct
snd_soc_card
snd_soc_s3c24xx_uda134x
=
{
...
...
sound/soc/samsung/smartq_wm8987.c
View file @
ceb8ef5e
...
...
@@ -189,7 +189,7 @@ static struct snd_soc_dai_link smartq_dai[] = {
.
stream_name
=
"SmartQ Hi-Fi"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm8750-hifi"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm8750.0-0x1a"
,
.
init
=
smartq_wm8987_init
,
.
ops
=
&
smartq_hifi_ops
,
...
...
sound/soc/samsung/smdk2443_wm9710.c
View file @
ceb8ef5e
...
...
@@ -24,7 +24,7 @@ static struct snd_soc_dai_link smdk2443_dai[] = {
.
cpu_dai_name
=
"samsung-ac97"
,
.
codec_dai_name
=
"ac97-hifi"
,
.
codec_name
=
"ac97-codec"
,
.
platform_name
=
"samsung-a
udio
"
,
.
platform_name
=
"samsung-a
c97
"
,
},
};
...
...
sound/soc/samsung/smdk_spdif.c
View file @
ceb8ef5e
...
...
@@ -151,7 +151,7 @@ static struct snd_soc_ops smdk_spdif_ops = {
static
struct
snd_soc_dai_link
smdk_dai
=
{
.
name
=
"S/PDIF"
,
.
stream_name
=
"S/PDIF PCM Playback"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
spdif
"
,
.
cpu_dai_name
=
"samsung-spdif"
,
.
codec_dai_name
=
"dit-hifi"
,
.
codec_name
=
"spdif-dit"
,
...
...
sound/soc/samsung/smdk_wm8580.c
View file @
ceb8ef5e
...
...
@@ -176,7 +176,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
.
stream_name
=
"Playback"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm8580-hifi-playback"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm8580.0-001b"
,
.
ops
=
&
smdk_ops
,
},
...
...
@@ -185,7 +185,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
.
stream_name
=
"Capture"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm8580-hifi-capture"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm8580.0-001b"
,
.
init
=
smdk_wm8580_init_paiftx
,
.
ops
=
&
smdk_ops
,
...
...
@@ -195,7 +195,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
.
stream_name
=
"Playback"
,
.
cpu_dai_name
=
"samsung-i2s.x"
,
.
codec_dai_name
=
"wm8580-hifi-playback"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.x
"
,
.
codec_name
=
"wm8580.0-001b"
,
.
ops
=
&
smdk_ops
,
},
...
...
sound/soc/samsung/smdk_wm8580pcm.c
View file @
ceb8ef5e
...
...
@@ -135,7 +135,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
.
stream_name
=
"Capture"
,
.
cpu_dai_name
=
"samsung-pcm.0"
,
.
codec_dai_name
=
"wm8580-hifi-capture"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
pcm.0
"
,
.
codec_name
=
"wm8580.0-001b"
,
.
ops
=
&
smdk_wm8580_pcm_ops
,
},
...
...
sound/soc/samsung/smdk_wm8994.c
View file @
ceb8ef5e
...
...
@@ -127,7 +127,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
.
stream_name
=
"Pri_Dai"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm8994-aif1"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm8994-codec"
,
.
init
=
smdk_wm8994_init_paiftx
,
.
ops
=
&
smdk_ops
,
...
...
@@ -136,7 +136,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
.
stream_name
=
"Sec_Dai"
,
.
cpu_dai_name
=
"samsung-i2s.4"
,
.
codec_dai_name
=
"wm8994-aif1"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.4
"
,
.
codec_name
=
"wm8994-codec"
,
.
ops
=
&
smdk_ops
,
},
...
...
sound/soc/samsung/smdk_wm8994pcm.c
View file @
ceb8ef5e
...
...
@@ -116,7 +116,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
.
stream_name
=
"Primary PCM"
,
.
cpu_dai_name
=
"samsung-pcm.0"
,
.
codec_dai_name
=
"wm8994-aif1"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
pcm.0
"
,
.
codec_name
=
"wm8994-codec"
,
.
ops
=
&
smdk_wm8994_pcm_ops
,
},
...
...
sound/soc/samsung/smdk_wm9713.c
View file @
ceb8ef5e
...
...
@@ -42,7 +42,7 @@ static struct snd_soc_card smdk;
static
struct
snd_soc_dai_link
smdk_dai
=
{
.
name
=
"AC97"
,
.
stream_name
=
"AC97 PCM"
,
.
platform_name
=
"samsung-a
udio
"
,
.
platform_name
=
"samsung-a
c97
"
,
.
cpu_dai_name
=
"samsung-ac97"
,
.
codec_dai_name
=
"wm9713-hifi"
,
.
codec_name
=
"wm9713-codec"
,
...
...
sound/soc/samsung/spdif.c
View file @
ceb8ef5e
...
...
@@ -397,7 +397,7 @@ static __devinit int spdif_probe(struct platform_device *pdev)
ret
=
-
ENOENT
;
goto
err0
;
}
clk_enable
(
spdif
->
pclk
);
clk_
prepare_
enable
(
spdif
->
pclk
);
spdif
->
sclk
=
clk_get
(
&
pdev
->
dev
,
"sclk_spdif"
);
if
(
IS_ERR
(
spdif
->
sclk
))
{
...
...
@@ -405,7 +405,7 @@ static __devinit int spdif_probe(struct platform_device *pdev)
ret
=
-
ENOENT
;
goto
err1
;
}
clk_enable
(
spdif
->
sclk
);
clk_
prepare_
enable
(
spdif
->
sclk
);
/* Request S/PDIF Register's memory region */
if
(
!
request_mem_region
(
mem_res
->
start
,
...
...
@@ -437,17 +437,24 @@ static __devinit int spdif_probe(struct platform_device *pdev)
spdif
->
dma_playback
=
&
spdif_stereo_out
;
return
0
;
ret
=
asoc_dma_platform_register
(
&
pdev
->
dev
);
if
(
ret
)
{
dev_err
(
&
pdev
->
dev
,
"failed to register DMA: %d
\n
"
,
ret
);
goto
err5
;
}
return
0
;
err5:
snd_soc_unregister_dai
(
&
pdev
->
dev
);
err4:
iounmap
(
spdif
->
regs
);
err3:
release_mem_region
(
mem_res
->
start
,
resource_size
(
mem_res
));
err2:
clk_disable
(
spdif
->
sclk
);
clk_disable
_unprepare
(
spdif
->
sclk
);
clk_put
(
spdif
->
sclk
);
err1:
clk_disable
(
spdif
->
pclk
);
clk_disable
_unprepare
(
spdif
->
pclk
);
clk_put
(
spdif
->
pclk
);
err0:
return
ret
;
...
...
@@ -458,6 +465,7 @@ static __devexit int spdif_remove(struct platform_device *pdev)
struct
samsung_spdif_info
*
spdif
=
&
spdif_info
;
struct
resource
*
mem_res
;
asoc_dma_platform_unregister
(
&
pdev
->
dev
);
snd_soc_unregister_dai
(
&
pdev
->
dev
);
iounmap
(
spdif
->
regs
);
...
...
@@ -466,9 +474,9 @@ static __devexit int spdif_remove(struct platform_device *pdev)
if
(
mem_res
)
release_mem_region
(
mem_res
->
start
,
resource_size
(
mem_res
));
clk_disable
(
spdif
->
sclk
);
clk_disable
_unprepare
(
spdif
->
sclk
);
clk_put
(
spdif
->
sclk
);
clk_disable
(
spdif
->
pclk
);
clk_disable
_unprepare
(
spdif
->
pclk
);
clk_put
(
spdif
->
pclk
);
return
0
;
...
...
sound/soc/samsung/speyside.c
View file @
ceb8ef5e
...
...
@@ -198,7 +198,7 @@ static struct snd_soc_dai_link speyside_dai[] = {
.
stream_name
=
"CPU-DSP"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm0010-sdi1"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"spi0.0"
,
.
init
=
speyside_wm0010_init
,
.
dai_fmt
=
SND_SOC_DAIFMT_I2S
|
SND_SOC_DAIFMT_NB_NF
...
...
sound/soc/samsung/tobermory.c
View file @
ceb8ef5e
...
...
@@ -110,7 +110,7 @@ static struct snd_soc_dai_link tobermory_dai[] = {
.
stream_name
=
"CPU"
,
.
cpu_dai_name
=
"samsung-i2s.0"
,
.
codec_dai_name
=
"wm8962"
,
.
platform_name
=
"samsung-
audio
"
,
.
platform_name
=
"samsung-
i2s.0
"
,
.
codec_name
=
"wm8962.1-001a"
,
.
dai_fmt
=
SND_SOC_DAIFMT_I2S
|
SND_SOC_DAIFMT_NB_NF
|
SND_SOC_DAIFMT_CBM_CFM
,
...
...
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