diff options
author | Richard Zhao <richard.zhao@linaro.org> | 2012-03-05 09:30:52 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-03-05 19:02:55 -0500 |
commit | 3bc34a6143359d2bf19a5e79b9017aeffc6660ad (patch) | |
tree | 961e834e2a3fde9c3fe57e634f0a784d703627dc /arch/arm/mach-imx/mm-imx5.c | |
parent | 2405fc9728a3ed7dffc36bee68f0c36e4488212d (diff) |
ARM: imx: convert audmux to a platform driver
It coverts audmux to a platform driver, so that it can be moved into
sound/soc/imx and adopt device tree support later.
Signed-off-by: Richard Zhao <richard.zhao@linaro.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'arch/arm/mach-imx/mm-imx5.c')
-rw-r--r-- | arch/arm/mach-imx/mm-imx5.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/mm-imx5.c b/arch/arm/mach-imx/mm-imx5.c index bc17dfea3817..90d7880bb372 100644 --- a/arch/arm/mach-imx/mm-imx5.c +++ b/arch/arm/mach-imx/mm-imx5.c | |||
@@ -170,6 +170,18 @@ static struct sdma_platform_data imx53_sdma_pdata __initdata = { | |||
170 | .script_addrs = &imx53_sdma_script, | 170 | .script_addrs = &imx53_sdma_script, |
171 | }; | 171 | }; |
172 | 172 | ||
173 | static const struct resource imx50_audmux_res[] __initconst = { | ||
174 | DEFINE_RES_MEM(MX50_AUDMUX_BASE_ADDR, SZ_16K), | ||
175 | }; | ||
176 | |||
177 | static const struct resource imx51_audmux_res[] __initconst = { | ||
178 | DEFINE_RES_MEM(MX51_AUDMUX_BASE_ADDR, SZ_16K), | ||
179 | }; | ||
180 | |||
181 | static const struct resource imx53_audmux_res[] __initconst = { | ||
182 | DEFINE_RES_MEM(MX53_AUDMUX_BASE_ADDR, SZ_16K), | ||
183 | }; | ||
184 | |||
173 | void __init imx50_soc_init(void) | 185 | void __init imx50_soc_init(void) |
174 | { | 186 | { |
175 | /* i.mx50 has the i.mx31 type gpio */ | 187 | /* i.mx50 has the i.mx31 type gpio */ |
@@ -179,6 +191,10 @@ void __init imx50_soc_init(void) | |||
179 | mxc_register_gpio("imx31-gpio", 3, MX50_GPIO4_BASE_ADDR, SZ_16K, MX50_INT_GPIO4_LOW, MX50_INT_GPIO4_HIGH); | 191 | mxc_register_gpio("imx31-gpio", 3, MX50_GPIO4_BASE_ADDR, SZ_16K, MX50_INT_GPIO4_LOW, MX50_INT_GPIO4_HIGH); |
180 | mxc_register_gpio("imx31-gpio", 4, MX50_GPIO5_BASE_ADDR, SZ_16K, MX50_INT_GPIO5_LOW, MX50_INT_GPIO5_HIGH); | 192 | mxc_register_gpio("imx31-gpio", 4, MX50_GPIO5_BASE_ADDR, SZ_16K, MX50_INT_GPIO5_LOW, MX50_INT_GPIO5_HIGH); |
181 | mxc_register_gpio("imx31-gpio", 5, MX50_GPIO6_BASE_ADDR, SZ_16K, MX50_INT_GPIO6_LOW, MX50_INT_GPIO6_HIGH); | 193 | mxc_register_gpio("imx31-gpio", 5, MX50_GPIO6_BASE_ADDR, SZ_16K, MX50_INT_GPIO6_LOW, MX50_INT_GPIO6_HIGH); |
194 | |||
195 | /* i.mx50 has the i.mx31 type audmux */ | ||
196 | platform_device_register_simple("imx31-audmux", 0, imx50_audmux_res, | ||
197 | ARRAY_SIZE(imx50_audmux_res)); | ||
182 | } | 198 | } |
183 | 199 | ||
184 | void __init imx51_soc_init(void) | 200 | void __init imx51_soc_init(void) |
@@ -191,6 +207,9 @@ void __init imx51_soc_init(void) | |||
191 | 207 | ||
192 | /* i.mx51 has the i.mx35 type sdma */ | 208 | /* i.mx51 has the i.mx35 type sdma */ |
193 | imx_add_imx_sdma("imx35-sdma", MX51_SDMA_BASE_ADDR, MX51_INT_SDMA, &imx51_sdma_pdata); | 209 | imx_add_imx_sdma("imx35-sdma", MX51_SDMA_BASE_ADDR, MX51_INT_SDMA, &imx51_sdma_pdata); |
210 | /* i.mx51 has the i.mx31 type audmux */ | ||
211 | platform_device_register_simple("imx31-audmux", 0, imx51_audmux_res, | ||
212 | ARRAY_SIZE(imx51_audmux_res)); | ||
194 | } | 213 | } |
195 | 214 | ||
196 | void __init imx53_soc_init(void) | 215 | void __init imx53_soc_init(void) |
@@ -206,4 +225,7 @@ void __init imx53_soc_init(void) | |||
206 | 225 | ||
207 | /* i.mx53 has the i.mx35 type sdma */ | 226 | /* i.mx53 has the i.mx35 type sdma */ |
208 | imx_add_imx_sdma("imx35-sdma", MX53_SDMA_BASE_ADDR, MX53_INT_SDMA, &imx53_sdma_pdata); | 227 | imx_add_imx_sdma("imx35-sdma", MX53_SDMA_BASE_ADDR, MX53_INT_SDMA, &imx53_sdma_pdata); |
228 | /* i.mx53 has the i.mx31 type audmux */ | ||
229 | platform_device_register_simple("imx31-audmux", 0, imx53_audmux_res, | ||
230 | ARRAY_SIZE(imx53_audmux_res)); | ||
209 | } | 231 | } |