From ba3ad0fab7693d5e90017e81b05910c060c93d54 Mon Sep 17 00:00:00 2001 From: Kuninori Morimoto Date: Mon, 29 Nov 2010 02:10:08 +0000 Subject: [PATCH] --- yaml --- r: 227167 b: refs/heads/master c: 208c7dc2727ec0fbc678da5e749bcc178c08463d h: refs/heads/master i: 227165: a1b9d2041c555739debefdb8c1fa74349a15b12d 227163: 88f22464c9bd9f302972f105d8f7663e7ef46c98 227159: 08001b21676dd3f82f4a0f3d54cef50b23a1748c 227151: d5cbb97171432c6b78827994b092b957106c0345 227135: 69ac7309845e88f81cbbd9107eae58f92850ab98 v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-shmobile/board-ag5evm.c | 41 +++++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index b05ec290b232..a1cbfcc3a6d2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 696d6e178a95d95dbb222d89e5e91a6fa9911440 +refs/heads/master: 208c7dc2727ec0fbc678da5e749bcc178c08463d diff --git a/trunk/arch/arm/mach-shmobile/board-ag5evm.c b/trunk/arch/arm/mach-shmobile/board-ag5evm.c index 7336a00c34e7..d4c82bd42524 100644 --- a/trunk/arch/arm/mach-shmobile/board-ag5evm.c +++ b/trunk/arch/arm/mach-shmobile/board-ag5evm.c @@ -33,6 +33,8 @@ #include #include +#include + #include #include #include @@ -113,9 +115,41 @@ static struct platform_device keysc_device = { }, }; +/* FSI A */ +static struct sh_fsi_platform_info fsi_info = { + .porta_flags = SH_FSI_OUT_SLAVE_MODE | + SH_FSI_IN_SLAVE_MODE | + SH_FSI_OFMT(I2S) | + SH_FSI_IFMT(I2S), +}; + +static struct resource fsi_resources[] = { + [0] = { + .name = "FSI", + .start = 0xEC230000, + .end = 0xEC230400 - 1, + .flags = IORESOURCE_MEM, + }, + [1] = { + .start = gic_spi(146), + .flags = IORESOURCE_IRQ, + }, +}; + +static struct platform_device fsi_device = { + .name = "sh_fsi2", + .id = -1, + .num_resources = ARRAY_SIZE(fsi_resources), + .resource = fsi_resources, + .dev = { + .platform_data = &fsi_info, + }, +}; + static struct platform_device *ag5evm_devices[] __initdata = { ð_device, &keysc_device, + &fsi_device, }; static struct map_desc ag5evm_io_desc[] __initdata = { @@ -195,6 +229,13 @@ static void __init ag5evm_init(void) gpio_request(GPIO_PORT145, NULL); /* RESET */ gpio_direction_output(GPIO_PORT145, 1); + /* FSI A */ + gpio_request(GPIO_FN_FSIACK, NULL); + gpio_request(GPIO_FN_FSIAILR, NULL); + gpio_request(GPIO_FN_FSIAIBT, NULL); + gpio_request(GPIO_FN_FSIAISLD, NULL); + gpio_request(GPIO_FN_FSIAOSLD, NULL); + #ifdef CONFIG_CACHE_L2X0 /* Shared attribute override enable, 64K*8way */ l2x0_init(__io(0xf0100000), 0x00460000, 0xc2000fff);