|
@@ -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,
|