aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ep93xx/include
diff options
context:
space:
mode:
authorMika Westerberg <mika.westerberg@iki.fi>2010-05-11 10:34:54 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-05-13 07:19:52 -0400
commit4fec9978822a66b25f5645eb20c115034a18cfd1 (patch)
treefc6c064697704c5a86e2f6c7ac9ae77f60cbd80d /arch/arm/mach-ep93xx/include
parent99e6a23adfadc2da2006f3715c4332c3bf502c07 (diff)
ARM: 6124/1: ep93xx: SPI driver platform support code
This patch adds platform side support code for the EP93xx SPI driver. This includes clock, resources and muxing. There is a new function: ep93xx_register_spi() which can be used by board support code to register new SPI devices for the board. This patch depends on patch 5998/1 ep93xx: added chip revision reading function Cc: Ryan Mallon <ryan@bluewatersys.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Mika Westerberg <mika.westerberg@iki.fi> Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Acked-by: Martin Guy <martinwguy@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-ep93xx/include')
-rw-r--r--arch/arm/mach-ep93xx/include/mach/ep93xx-regs.h1
-rw-r--r--arch/arm/mach-ep93xx/include/mach/platform.h4
2 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mach-ep93xx/include/mach/ep93xx-regs.h b/arch/arm/mach-ep93xx/include/mach/ep93xx-regs.h
index 93e2ecc79ceb..b1e096f0c2d2 100644
--- a/arch/arm/mach-ep93xx/include/mach/ep93xx-regs.h
+++ b/arch/arm/mach-ep93xx/include/mach/ep93xx-regs.h
@@ -106,6 +106,7 @@
106 106
107#define EP93XX_AAC_BASE EP93XX_APB_IOMEM(0x00080000) 107#define EP93XX_AAC_BASE EP93XX_APB_IOMEM(0x00080000)
108 108
109#define EP93XX_SPI_PHYS_BASE EP93XX_APB_PHYS(0x000a0000)
109#define EP93XX_SPI_BASE EP93XX_APB_IOMEM(0x000a0000) 110#define EP93XX_SPI_BASE EP93XX_APB_IOMEM(0x000a0000)
110 111
111#define EP93XX_IRDA_BASE EP93XX_APB_IOMEM(0x000b0000) 112#define EP93XX_IRDA_BASE EP93XX_APB_IOMEM(0x000b0000)
diff --git a/arch/arm/mach-ep93xx/include/mach/platform.h b/arch/arm/mach-ep93xx/include/mach/platform.h
index b663390b4d87..9a4413dd44bb 100644
--- a/arch/arm/mach-ep93xx/include/mach/platform.h
+++ b/arch/arm/mach-ep93xx/include/mach/platform.h
@@ -6,9 +6,11 @@
6 6
7struct i2c_gpio_platform_data; 7struct i2c_gpio_platform_data;
8struct i2c_board_info; 8struct i2c_board_info;
9struct spi_board_info;
9struct platform_device; 10struct platform_device;
10struct ep93xxfb_mach_info; 11struct ep93xxfb_mach_info;
11struct ep93xx_keypad_platform_data; 12struct ep93xx_keypad_platform_data;
13struct ep93xx_spi_info;
12 14
13struct ep93xx_eth_data 15struct ep93xx_eth_data
14{ 16{
@@ -44,6 +46,8 @@ unsigned int ep93xx_chip_revision(void);
44void ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr); 46void ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr);
45void ep93xx_register_i2c(struct i2c_gpio_platform_data *data, 47void ep93xx_register_i2c(struct i2c_gpio_platform_data *data,
46 struct i2c_board_info *devices, int num); 48 struct i2c_board_info *devices, int num);
49void ep93xx_register_spi(struct ep93xx_spi_info *info,
50 struct spi_board_info *devices, int num);
47void ep93xx_register_fb(struct ep93xxfb_mach_info *data); 51void ep93xx_register_fb(struct ep93xxfb_mach_info *data);
48void ep93xx_register_pwm(int pwm0, int pwm1); 52void ep93xx_register_pwm(int pwm0, int pwm1);
49int ep93xx_pwm_acquire_gpio(struct platform_device *pdev); 53int ep93xx_pwm_acquire_gpio(struct platform_device *pdev);