ARM: OMAP: Aic23 alsa platform driver code for board-innovator
Add platform driver init-code required by the aic23-alsa driver to omap-innovator. Signed-off-by: Mika Laitio <lamikr@cc.jyu.fi> Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
@@ -37,6 +37,8 @@
|
|||||||
#include <asm/arch/usb.h>
|
#include <asm/arch/usb.h>
|
||||||
#include <asm/arch/keypad.h>
|
#include <asm/arch/keypad.h>
|
||||||
#include <asm/arch/common.h>
|
#include <asm/arch/common.h>
|
||||||
|
#include <asm/arch/mcbsp.h>
|
||||||
|
#include <asm/arch/omap-alsa.h>
|
||||||
|
|
||||||
static int innovator_keymap[] = {
|
static int innovator_keymap[] = {
|
||||||
KEY(0, 0, KEY_F1),
|
KEY(0, 0, KEY_F1),
|
||||||
@@ -112,6 +114,42 @@ static struct platform_device innovator_flash_device = {
|
|||||||
.resource = &innovator_flash_resource,
|
.resource = &innovator_flash_resource,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#define DEFAULT_BITPERSAMPLE 16
|
||||||
|
|
||||||
|
static struct omap_mcbsp_reg_cfg mcbsp_regs = {
|
||||||
|
.spcr2 = FREE | FRST | GRST | XRST | XINTM(3),
|
||||||
|
.spcr1 = RINTM(3) | RRST,
|
||||||
|
.rcr2 = RPHASE | RFRLEN2(OMAP_MCBSP_WORD_8) |
|
||||||
|
RWDLEN2(OMAP_MCBSP_WORD_16) | RDATDLY(0),
|
||||||
|
.rcr1 = RFRLEN1(OMAP_MCBSP_WORD_8) | RWDLEN1(OMAP_MCBSP_WORD_16),
|
||||||
|
.xcr2 = XPHASE | XFRLEN2(OMAP_MCBSP_WORD_8) |
|
||||||
|
XWDLEN2(OMAP_MCBSP_WORD_16) | XDATDLY(0) | XFIG,
|
||||||
|
.xcr1 = XFRLEN1(OMAP_MCBSP_WORD_8) | XWDLEN1(OMAP_MCBSP_WORD_16),
|
||||||
|
.srgr1 = FWID(DEFAULT_BITPERSAMPLE - 1),
|
||||||
|
.srgr2 = GSYNC | CLKSP | FSGM | FPER(DEFAULT_BITPERSAMPLE * 2 - 1),
|
||||||
|
/*.pcr0 = FSXM | FSRM | CLKXM | CLKRM | CLKXP | CLKRP,*/ /* mcbsp: master */
|
||||||
|
.pcr0 = CLKXP | CLKRP, /* mcbsp: slave */
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct omap_alsa_codec_config alsa_config = {
|
||||||
|
.name = "OMAP Innovator AIC23",
|
||||||
|
.mcbsp_regs_alsa = &mcbsp_regs,
|
||||||
|
.codec_configure_dev = NULL, // aic23_configure,
|
||||||
|
.codec_set_samplerate = NULL, // aic23_set_samplerate,
|
||||||
|
.codec_clock_setup = NULL, // aic23_clock_setup,
|
||||||
|
.codec_clock_on = NULL, // aic23_clock_on,
|
||||||
|
.codec_clock_off = NULL, // aic23_clock_off,
|
||||||
|
.get_default_samplerate = NULL, // aic23_get_default_samplerate,
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct platform_device innovator_mcbsp1_device = {
|
||||||
|
.name = "omap_alsa_mcbsp",
|
||||||
|
.id = 1,
|
||||||
|
.dev = {
|
||||||
|
.platform_data = &alsa_config,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
static struct resource innovator_kp_resources[] = {
|
static struct resource innovator_kp_resources[] = {
|
||||||
[0] = {
|
[0] = {
|
||||||
.start = INT_KEYBOARD,
|
.start = INT_KEYBOARD,
|
||||||
@@ -177,6 +215,7 @@ static struct platform_device innovator1510_lcd_device = {
|
|||||||
static struct platform_device *innovator1510_devices[] __initdata = {
|
static struct platform_device *innovator1510_devices[] __initdata = {
|
||||||
&innovator_flash_device,
|
&innovator_flash_device,
|
||||||
&innovator1510_smc91x_device,
|
&innovator1510_smc91x_device,
|
||||||
|
&innovator_mcbsp1_device,
|
||||||
&innovator_kp_device,
|
&innovator_kp_device,
|
||||||
&innovator1510_lcd_device,
|
&innovator1510_lcd_device,
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user