X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/88b8c44b87b4a7d6bd974699455ea54a3bd90125..b1b7fcb8bd1fd7c4bfebbb94ed5087e1856e104e:/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c 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..5dfbddbf2 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,50 @@ 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); +} + +static struct resource rt305x_usb_resources[] = { + { + .start = RT305X_OTG_BASE, + .end = RT305X_OTG_BASE + 0x3FFFF, + .flags = IORESOURCE_MEM, + }, { + .start = RT305X_INTC_IRQ_OTG, + .end = RT305X_INTC_IRQ_OTG, + .flags = IORESOURCE_IRQ, + }, +}; + +static struct platform_device rt305x_usb_device = { + .name = "dwc_otg", + .resource = rt305x_usb_resources, + .num_resources = ARRAY_SIZE(rt305x_usb_resources), + .dev = { + .platform_data = NULL, + } +}; + +void __init rt305x_register_usb(void) +{ + platform_device_register(&rt305x_usb_device); +}