diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2010-08-31 01:46:53 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-09-01 06:18:09 -0400 |
commit | 41a686eedfcec74f5facd487835deff8fb5cef60 (patch) | |
tree | 8961ca056eff6ff01abe7c7ecbdb6efdfd356fab /sound/soc/sh | |
parent | 6d86577124bd674209954517a074a472456c758b (diff) |
ASoC: fsi-codec: Add FSI - HDMI support
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/sh')
-rw-r--r-- | sound/soc/sh/Kconfig | 7 | ||||
-rw-r--r-- | sound/soc/sh/Makefile | 2 | ||||
-rw-r--r-- | sound/soc/sh/fsi-hdmi.c | 61 |
3 files changed, 70 insertions, 0 deletions
diff --git a/sound/soc/sh/Kconfig b/sound/soc/sh/Kconfig index 52d7e8ed9c1f..6b224d21e51b 100644 --- a/sound/soc/sh/Kconfig +++ b/sound/soc/sh/Kconfig | |||
@@ -62,6 +62,13 @@ config SND_FSI_DA7210 | |||
62 | This option enables generic sound support for the | 62 | This option enables generic sound support for the |
63 | FSI - DA7210 unit | 63 | FSI - DA7210 unit |
64 | 64 | ||
65 | config SND_FSI_HDMI | ||
66 | bool "FSI-HDMI sound support" | ||
67 | depends on SND_SOC_SH4_FSI && FB_SH_MOBILE_HDMI | ||
68 | help | ||
69 | This option enables generic sound support for the | ||
70 | FSI - HDMI unit | ||
71 | |||
65 | config SND_SIU_MIGOR | 72 | config SND_SIU_MIGOR |
66 | tristate "SIU sound support on Migo-R" | 73 | tristate "SIU sound support on Migo-R" |
67 | depends on SH_MIGOR | 74 | depends on SH_MIGOR |
diff --git a/sound/soc/sh/Makefile b/sound/soc/sh/Makefile index 8a5a19293bda..94476d4c0fd5 100644 --- a/sound/soc/sh/Makefile +++ b/sound/soc/sh/Makefile | |||
@@ -16,9 +16,11 @@ obj-$(CONFIG_SND_SOC_SH4_SIU) += snd-soc-siu.o | |||
16 | snd-soc-sh7760-ac97-objs := sh7760-ac97.o | 16 | snd-soc-sh7760-ac97-objs := sh7760-ac97.o |
17 | snd-soc-fsi-ak4642-objs := fsi-ak4642.o | 17 | snd-soc-fsi-ak4642-objs := fsi-ak4642.o |
18 | snd-soc-fsi-da7210-objs := fsi-da7210.o | 18 | snd-soc-fsi-da7210-objs := fsi-da7210.o |
19 | snd-soc-fsi-hdmi-objs := fsi-hdmi.o | ||
19 | snd-soc-migor-objs := migor.o | 20 | snd-soc-migor-objs := migor.o |
20 | 21 | ||
21 | obj-$(CONFIG_SND_SH7760_AC97) += snd-soc-sh7760-ac97.o | 22 | obj-$(CONFIG_SND_SH7760_AC97) += snd-soc-sh7760-ac97.o |
22 | obj-$(CONFIG_SND_FSI_AK4642) += snd-soc-fsi-ak4642.o | 23 | obj-$(CONFIG_SND_FSI_AK4642) += snd-soc-fsi-ak4642.o |
23 | obj-$(CONFIG_SND_FSI_DA7210) += snd-soc-fsi-da7210.o | 24 | obj-$(CONFIG_SND_FSI_DA7210) += snd-soc-fsi-da7210.o |
25 | obj-$(CONFIG_SND_FSI_HDMI) += snd-soc-fsi-hdmi.o | ||
24 | obj-$(CONFIG_SND_SIU_MIGOR) += snd-soc-migor.o | 26 | obj-$(CONFIG_SND_SIU_MIGOR) += snd-soc-migor.o |
diff --git a/sound/soc/sh/fsi-hdmi.c b/sound/soc/sh/fsi-hdmi.c new file mode 100644 index 000000000000..950e3e0c971d --- /dev/null +++ b/sound/soc/sh/fsi-hdmi.c | |||
@@ -0,0 +1,61 @@ | |||
1 | /* | ||
2 | * FSI - HDMI sound support | ||
3 | * | ||
4 | * Copyright (C) 2010 Renesas Solutions Corp. | ||
5 | * Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | ||
6 | * | ||
7 | * This file is subject to the terms and conditions of the GNU General Public | ||
8 | * License. See the file "COPYING" in the main directory of this archive | ||
9 | * for more details. | ||
10 | */ | ||
11 | |||
12 | #include <linux/platform_device.h> | ||
13 | #include <sound/sh_fsi.h> | ||
14 | #include <video/sh_mobile_hdmi.h> | ||
15 | |||
16 | static struct snd_soc_dai_link fsi_dai_link = { | ||
17 | .name = "HDMI", | ||
18 | .stream_name = "HDMI", | ||
19 | .cpu_dai_name = "fsib-dai", /* fsi B */ | ||
20 | .codec_dai_name = "sh_mobile_hdmi-hifi", | ||
21 | .platform_name = "sh_fsi2", | ||
22 | .codec_name = "sh-mobile-hdmi", | ||
23 | }; | ||
24 | |||
25 | static struct snd_soc_card fsi_soc_card = { | ||
26 | .name = "FSI", | ||
27 | .dai_link = &fsi_dai_link, | ||
28 | .num_links = 1, | ||
29 | }; | ||
30 | |||
31 | static struct platform_device *fsi_snd_device; | ||
32 | |||
33 | static int __init fsi_hdmi_init(void) | ||
34 | { | ||
35 | int ret = -ENOMEM; | ||
36 | |||
37 | fsi_snd_device = platform_device_alloc("soc-audio", FSI_PORT_B); | ||
38 | if (!fsi_snd_device) | ||
39 | goto out; | ||
40 | |||
41 | platform_set_drvdata(fsi_snd_device, &fsi_soc_card); | ||
42 | ret = platform_device_add(fsi_snd_device); | ||
43 | |||
44 | if (ret) | ||
45 | platform_device_put(fsi_snd_device); | ||
46 | |||
47 | out: | ||
48 | return ret; | ||
49 | } | ||
50 | |||
51 | static void __exit fsi_hdmi_exit(void) | ||
52 | { | ||
53 | platform_device_unregister(fsi_snd_device); | ||
54 | } | ||
55 | |||
56 | module_init(fsi_hdmi_init); | ||
57 | module_exit(fsi_hdmi_exit); | ||
58 | |||
59 | MODULE_LICENSE("GPL"); | ||
60 | MODULE_DESCRIPTION("Generic SH4 FSI-HDMI sound card"); | ||
61 | MODULE_AUTHOR("Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>"); | ||