From 1e8820b752b4aff8181537b0821553db880daf95 Mon Sep 17 00:00:00 2001 From: juhosg Date: Thu, 28 Jul 2011 10:56:27 +0000 Subject: ramips: rt305x: introduce rt305x_register_spi helper Based on a patch by Sergiy git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27810 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../ramips/files/arch/mips/ralink/rt305x/devices.c | 22 ++++++++++++++++++++++ .../ramips/files/arch/mips/ralink/rt305x/devices.h | 2 ++ 2 files changed, 24 insertions(+) diff --git a/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c b/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c index ce6e4d8c7..aa8f10e0b 100644 --- a/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c +++ b/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include @@ -220,3 +221,24 @@ void __init rt305x_register_wdt(void) platform_device_register(&rt305x_wdt_device); } + +static struct resource rt305x_spi_resources[] = { + { + .flags = IORESOURCE_MEM, + .start = RT305X_SPI_BASE, + .end = RT305X_SPI_BASE + RT305X_SPI_SIZE - 1, + }, +}; + +static struct platform_device rt305x_spi_device = { + .name = "ramips-spi", + .id = 0, + .resource = rt305x_spi_resources, + .num_resources = ARRAY_SIZE(rt305x_spi_resources), +}; + +void __init rt305x_register_spi(struct spi_board_info *info, int n) +{ + spi_register_board_info(info, n); + platform_device_register(&rt305x_spi_device); +} diff --git a/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.h b/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.h index 352243c14..e37fe47a5 100644 --- a/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.h +++ b/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.h @@ -14,6 +14,7 @@ #include struct physmap_flash_data; +struct spi_board_info; extern struct rt305x_esw_platform_data rt305x_esw_data; @@ -21,6 +22,7 @@ void rt305x_register_flash(unsigned int id, struct physmap_flash_data *pdata); void rt305x_register_ethernet(void); void rt305x_register_wifi(void); void rt305x_register_wdt(void); +void rt305x_register_spi(struct spi_board_info *info, int n); #endif /* __RT305X_DEVICES_H */ -- cgit v1.2.3