| 
					
				 | 
			
			
				@@ -168,3 +168,192 @@ static struct resource bfin_sport_spi0_resource[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 static struct platform_device bfin_sport_spi0_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name = "bfin-sport-spi", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.id = 1, /* Bus number */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.num_resources = ARRAY_SIZE(bfin_sport_spi0_resource), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.resource = bfin_sport_spi0_resource, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.dev = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.platform_data = &bfin_sport_spi0_info, /* Passed to driver */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct bfin5xx_spi_master bfin_sport_spi1_info = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.num_chipselect = MAX_BLACKFIN_GPIOS, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.enable_dma = 0,  /* master don't support DMA */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.pin_req = {P_SPORT1_DTPRI, P_SPORT1_TSCLK, P_SPORT1_DRPRI, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		P_SPORT1_RSCLK, P_SPORT1_TFS, P_SPORT1_RFS, 0}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct resource bfin_sport_spi1_resource[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	[0] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = SPORT1_TCR1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end   = SPORT1_TCR1 + 0xFF, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_MEM, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	[1] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = IRQ_SPORT1_ERROR, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end   = IRQ_SPORT1_ERROR, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_IRQ, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct platform_device bfin_sport_spi1_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name = "bfin-sport-spi", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.id = 2, /* Bus number */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.num_resources = ARRAY_SIZE(bfin_sport_spi1_resource), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.resource = bfin_sport_spi1_resource, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.dev = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.platform_data = &bfin_sport_spi1_info, /* Passed to driver */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#endif  /* sport spi master and devices */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct platform_device rtc_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name = "rtc-bfin", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.id   = -1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#if defined(CONFIG_FB_HITACHI_TX09) || defined(CONFIG_FB_HITACHI_TX09_MODULE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct platform_device hitachi_fb_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name = "hitachi-tx09", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include <linux/smc91x.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct smc91x_platdata smc91x_info = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.flags = SMC91X_USE_16BIT | SMC91X_NOWAIT, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.leda = RPC_LED_100_10, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.ledb = RPC_LED_TX_RX, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct resource smc91x_resources[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = 0x20200300, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end = 0x20200300 + 16, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_MEM, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = IRQ_PF14, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end = IRQ_PF14, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct platform_device smc91x_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name = "smc91x", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.id = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.num_resources = ARRAY_SIZE(smc91x_resources), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.resource = smc91x_resources, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.dev	= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.platform_data	= &smc91x_info, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct resource isp1362_hcd_resources[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = 0x20308000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end = 0x20308000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_MEM, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = 0x20308004, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end = 0x20308004, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_MEM, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = IRQ_PG15, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end = IRQ_PG15, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWEDGE, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct isp1362_platform_data isp1362_priv = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.sel15Kres = 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clknotstop = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.oc_enable = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.int_act_high = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.int_edge_triggered = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.remote_wakeup_connected = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.no_power_switching = 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.power_switching_mode = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct platform_device isp1362_hcd_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name = "isp1362-hcd", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.id = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.dev = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.platform_data = &isp1362_priv, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.num_resources = ARRAY_SIZE(isp1362_hcd_resources), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.resource = isp1362_hcd_resources, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct resource net2272_bfin_resources[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = 0x20300000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end = 0x20300000 + 0x100, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_MEM, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = IRQ_PG13, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end = IRQ_PG13, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct platform_device net2272_bfin_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name = "net2272", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.id = -1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.num_resources = ARRAY_SIZE(net2272_bfin_resources), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.resource = net2272_bfin_resources, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#if defined(CONFIG_MTD_GPIO_ADDR) || defined(CONFIG_MTD_GPIO_ADDR_MODULE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct mtd_partition cm_partitions[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.name   = "bootloader(nor)", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.size   = 0x40000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.offset = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.name   = "linux kernel(nor)", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.size   = 0x100000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.offset = MTDPART_OFS_APPEND, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.name   = "file system(nor)", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.size   = MTDPART_SIZ_FULL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.offset = MTDPART_OFS_APPEND, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct physmap_flash_data cm_flash_data = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.width    = 2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.parts    = cm_partitions, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.nr_parts = ARRAY_SIZE(cm_partitions), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static unsigned cm_flash_gpios[] = { GPIO_PF4 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct resource cm_flash_resource[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.name  = "cfi_probe", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = 0x20000000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end   = 0x201fffff, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_MEM, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.start = (unsigned long)cm_flash_gpios, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.end   = ARRAY_SIZE(cm_flash_gpios), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.flags = IORESOURCE_IRQ, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct platform_device cm_flash_device = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name          = "gpio-addr-flash", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.id            = 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.dev = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.platform_data = &cm_flash_data, 
			 |