36 #include <linux/device.h>
55 #include <asm/cacheflush.h>
56 #include <linux/i2c.h>
63 #if defined(CONFIG_USB_ISP1760_HCD) || defined(CONFIG_USB_ISP1760_HCD_MODULE)
65 static struct resource bfin_isp1760_resources[] = {
68 .end = 0x20000000 + 0x000fffff,
84 .dack_polarity_high = 0,
85 .dreq_polarity_high = 0,
89 .
name =
"isp1760-hcd",
92 .platform_data = &isp1760_priv,
94 .num_resources =
ARRAY_SIZE(bfin_isp1760_resources),
95 .resource = bfin_isp1760_resources,
99 static struct resource bfin_i2c_pca_resources[] = {
101 .name =
"pca9564-regs",
103 .end = 0x2C000000 + 16,
115 .i2c_clock_speed = 330000,
121 .name =
"i2c-pca-platform",
123 .num_resources =
ARRAY_SIZE(bfin_i2c_pca_resources),
124 .resource = bfin_i2c_pca_resources,
140 #if defined(CONFIG_MTD_PLATRAM) || defined(CONFIG_MTD_PLATRAM_MODULE)
146 static struct resource mtd_ram_resource = {
156 .platform_data = &mtd_ram_data,
159 .resource = &mtd_ram_resource,
163 #if defined(CONFIG_SMSC911X) || defined(CONFIG_SMSC911X_MODULE)
165 static struct resource smsc911x_resources[] = {
167 .
name =
"smsc911x-memory",
169 .end = 0x28000000 + 0xFF,
189 .num_resources =
ARRAY_SIZE(smsc911x_resources),
190 .resource = smsc911x_resources,
192 .platform_data = &smsc911x_config,
197 #if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE)
198 #ifdef CONFIG_SERIAL_BFIN_UART0
199 static struct resource bfin_uart0_resources[] = {
232 static unsigned short bfin_uart0_peripherals[] = {
239 .num_resources =
ARRAY_SIZE(bfin_uart0_resources),
240 .resource = bfin_uart0_resources,
243 .platform_data = &bfin_uart0_peripherals,
249 #if defined(CONFIG_MTD_NAND_PLATFORM) || defined(CONFIG_MTD_NAND_PLATFORM_MODULE)
253 .
name =
"params(nand)",
254 .size = 32 * 1024 * 1024,
257 .name =
"userfs(nand)",
263 #define BFIN_NAND_PLAT_CLE 2
264 #define BFIN_NAND_PLAT_ALE 3
266 static void bfin_plat_nand_cmd_ctrl(
struct mtd_info *mtd,
int cmd,
280 #define BFIN_NAND_PLAT_READY GPIO_PF10
281 static int bfin_plat_nand_dev_ready(
struct mtd_info *mtd)
290 .partitions = bfin_plat_nand_partitions,
291 .nr_partitions =
ARRAY_SIZE(bfin_plat_nand_partitions),
294 .cmd_ctrl = bfin_plat_nand_cmd_ctrl,
295 .dev_ready = bfin_plat_nand_dev_ready,
299 #define MAX(x, y) (x > y ? x : y)
300 static struct resource bfin_plat_nand_resources = {
302 .end = 0x24000000 + (1 <<
MAX(BFIN_NAND_PLAT_CLE, BFIN_NAND_PLAT_ALE)),
310 .resource = &bfin_plat_nand_resources,
312 .platform_data = &bfin_plat_nand_data,
316 static void bfin_plat_nand_init(
void)
321 static void bfin_plat_nand_init(
void)
326 #if defined(CONFIG_MTD_DATAFLASH) || defined(CONFIG_MTD_DATAFLASH_MODULE)
327 static struct mtd_partition bfin_spi_dataflash_partitions[] = {
329 .
name =
"bootloader",
339 .name =
"u-boot(params)",
361 .
name =
"SPI Dataflash",
362 .parts = bfin_spi_dataflash_partitions,
363 .nr_parts =
ARRAY_SIZE(bfin_spi_dataflash_partitions),
372 #if defined(CONFIG_SPI_BFIN5XX) || defined(CONFIG_SPI_BFIN5XX_MODULE)
374 static struct resource bfin_spi0_resource[] = {
402 .num_resources =
ARRAY_SIZE(bfin_spi0_resource),
403 .resource = bfin_spi0_resource,
405 .platform_data = &bfin_spi0_info,
411 #if defined(CONFIG_SPI_SPIDEV) || defined(CONFIG_SPI_SPIDEV_MODULE)
413 .modalias =
"spidev",
414 .max_speed_hz = 3125000,
419 #if defined(CONFIG_MTD_DATAFLASH) || defined(CONFIG_MTD_DATAFLASH_MODULE)
421 .modalias =
"mtd_dataflash",
422 .max_speed_hz = 33250000,
426 .controller_data = &data_flash_chip_info,
432 static struct resource bfin_gpios_resources = {
440 .name =
"simple-gpio",
443 .resource = &bfin_gpios_resources,
446 static const unsigned int cclk_vlev_datasheet[] = {
460 .tuple_tab = cclk_vlev_datasheet,
462 .vr_settling_time = 25 ,
468 .platform_data = &bfin_dmpc_vreg_data,
475 #if defined(CONFIG_SPI_BFIN5XX) || defined(CONFIG_SPI_BFIN5XX_MODULE)
479 #if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE)
480 #ifdef CONFIG_SERIAL_BFIN_UART0
487 #if defined(CONFIG_SMSC911X) || defined(CONFIG_SMSC911X_MODULE)
491 &bfin_i2c_pca_device,
493 #if defined(CONFIG_MTD_NAND_PLATFORM) || defined(CONFIG_MTD_NAND_PLATFORM_MODULE)
494 &bfin_async_nand_device,
497 #if defined(CONFIG_MTD_PLATRAM) || defined(CONFIG_MTD_PLATRAM_MODULE)
503 static int __init acvilon_init(
void)
509 bfin_plat_nand_init();
530 #if defined(CONFIG_SERIAL_BFIN_CONSOLE) || defined(CONFIG_EARLY_PRINTK)
531 #ifdef CONFIG_SERIAL_BFIN_UART0