aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap1/devices.c
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2012-05-09 12:59:25 -0400
committerTony Lindgren <tony@atomide.com>2012-05-09 17:33:18 -0400
commit49b1a616a77d02b2b0034e0a5ad4bc2e565f2c58 (patch)
tree9c50704373f5c24d166220a23329b3d5bbe4ebf1 /arch/arm/mach-omap1/devices.c
parentfcc76a85061d4dbc0accabe252c8f3496e72efe1 (diff)
ARM: OMAP1: Move omap_init_uwire to mach-omap1
This hardware exists on omap1 only and there's no need to keep it in plat-omap/devices.c. No functional changes. Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap1/devices.c')
-rw-r--r--arch/arm/mach-omap1/devices.c44
1 files changed, 44 insertions, 0 deletions
diff --git a/arch/arm/mach-omap1/devices.c b/arch/arm/mach-omap1/devices.c
index 51387a447cce..b853f6110a44 100644
--- a/arch/arm/mach-omap1/devices.c
+++ b/arch/arm/mach-omap1/devices.c
@@ -258,6 +258,49 @@ void __init omap1_camera_init(void *info)
258 258
259static inline void omap_init_sti(void) {} 259static inline void omap_init_sti(void) {}
260 260
261/* Numbering for the SPI-capable controllers when used for SPI:
262 * spi = 1
263 * uwire = 2
264 * mmc1..2 = 3..4
265 * mcbsp1..3 = 5..7
266 */
267
268#if defined(CONFIG_SPI_OMAP_UWIRE) || defined(CONFIG_SPI_OMAP_UWIRE_MODULE)
269
270#define OMAP_UWIRE_BASE 0xfffb3000
271
272static struct resource uwire_resources[] = {
273 {
274 .start = OMAP_UWIRE_BASE,
275 .end = OMAP_UWIRE_BASE + 0x20,
276 .flags = IORESOURCE_MEM,
277 },
278};
279
280static struct platform_device omap_uwire_device = {
281 .name = "omap_uwire",
282 .id = -1,
283 .num_resources = ARRAY_SIZE(uwire_resources),
284 .resource = uwire_resources,
285};
286
287static void omap_init_uwire(void)
288{
289 /* FIXME define and use a boot tag; not all boards will be hooking
290 * up devices to the microwire controller, and multi-board configs
291 * mean that CONFIG_SPI_OMAP_UWIRE may be configured anyway...
292 */
293
294 /* board-specific code must configure chipselects (only a few
295 * are normally used) and SCLK/SDI/SDO (each has two choices).
296 */
297 (void) platform_device_register(&omap_uwire_device);
298}
299#else
300static inline void omap_init_uwire(void) {}
301#endif
302
303
261/* 304/*
262 * This gets called after board-specific INIT_MACHINE, and initializes most 305 * This gets called after board-specific INIT_MACHINE, and initializes most
263 * on-chip peripherals accessible on this board (except for few like USB): 306 * on-chip peripherals accessible on this board (except for few like USB):
@@ -295,6 +338,7 @@ static int __init omap1_init_devices(void)
295 omap_init_rtc(); 338 omap_init_rtc();
296 omap_init_spi100k(); 339 omap_init_spi100k();
297 omap_init_sti(); 340 omap_init_sti();
341 omap_init_uwire();
298 342
299 return 0; 343 return 0;
300} 344}