|  | @@ -184,3 +184,112 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
 | 
	
		
			
				|  |  |  	.max_speed_hz    = 16700000,
 | 
	
		
			
				|  |  |  	.bus_num         = 0,
 | 
	
		
			
				|  |  |  	.chip_select     = 2,
 | 
	
		
			
				|  |  | +	.platform_data   = &bfin_spi_dataflash_data,
 | 
	
		
			
				|  |  | +	.controller_data = &spi_dataflash_chip_info,
 | 
	
		
			
				|  |  | +	.mode            = SPI_MODE_3, /* SPI_CPHA and SPI_CPOL */
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* SPI controller data */
 | 
	
		
			
				|  |  | +/* SPI (0) */
 | 
	
		
			
				|  |  | +static struct resource bfin_spi0_resource[] = {
 | 
	
		
			
				|  |  | +	[0] = {
 | 
	
		
			
				|  |  | +		.start = SPI0_REGBASE,
 | 
	
		
			
				|  |  | +		.end   = SPI0_REGBASE + 0xFF,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_MEM,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	[1] = {
 | 
	
		
			
				|  |  | +		.start = CH_SPI,
 | 
	
		
			
				|  |  | +		.end   = CH_SPI,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_DMA,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	[2] = {
 | 
	
		
			
				|  |  | +		.start = IRQ_SPI,
 | 
	
		
			
				|  |  | +		.end   = IRQ_SPI,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_IRQ,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct bfin5xx_spi_master spi_bfin_master_info = {
 | 
	
		
			
				|  |  | +	.num_chipselect = 8,
 | 
	
		
			
				|  |  | +	.enable_dma     = 1,  /* master has the ability to do dma transfer */
 | 
	
		
			
				|  |  | +	.pin_req        = {P_SPI0_SCK, P_SPI0_MISO, P_SPI0_MOSI, 0},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct platform_device spi_bfin_master_device = {
 | 
	
		
			
				|  |  | +	.name          = "bfin-spi",
 | 
	
		
			
				|  |  | +	.id            = 0, /* Bus number */
 | 
	
		
			
				|  |  | +	.num_resources = ARRAY_SIZE(bfin_spi0_resource),
 | 
	
		
			
				|  |  | +	.resource      = bfin_spi0_resource,
 | 
	
		
			
				|  |  | +	.dev           = {
 | 
	
		
			
				|  |  | +		.platform_data = &spi_bfin_master_info, /* Passed to driver */
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE)
 | 
	
		
			
				|  |  | +#ifdef CONFIG_SERIAL_BFIN_UART0
 | 
	
		
			
				|  |  | +static struct resource bfin_uart0_resources[] = {
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = UART0_THR,
 | 
	
		
			
				|  |  | +		.end = UART0_GCTL+2,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_MEM,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = IRQ_UART0_TX,
 | 
	
		
			
				|  |  | +		.end = IRQ_UART0_TX,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_IRQ,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = IRQ_UART0_RX,
 | 
	
		
			
				|  |  | +		.end = IRQ_UART0_RX,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_IRQ,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = IRQ_UART0_ERROR,
 | 
	
		
			
				|  |  | +		.end = IRQ_UART0_ERROR,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_IRQ,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = CH_UART0_TX,
 | 
	
		
			
				|  |  | +		.end = CH_UART0_TX,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_DMA,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = CH_UART0_RX,
 | 
	
		
			
				|  |  | +		.end = CH_UART0_RX,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_DMA,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static unsigned short bfin_uart0_peripherals[] = {
 | 
	
		
			
				|  |  | +	P_UART0_TX, P_UART0_RX, 0
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct platform_device bfin_uart0_device = {
 | 
	
		
			
				|  |  | +	.name = "bfin-uart",
 | 
	
		
			
				|  |  | +	.id = 0,
 | 
	
		
			
				|  |  | +	.num_resources = ARRAY_SIZE(bfin_uart0_resources),
 | 
	
		
			
				|  |  | +	.resource = bfin_uart0_resources,
 | 
	
		
			
				|  |  | +	.dev = {
 | 
	
		
			
				|  |  | +		.platform_data = &bfin_uart0_peripherals, /* Passed to driver */
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#ifdef CONFIG_SERIAL_BFIN_UART1
 | 
	
		
			
				|  |  | +static struct resource bfin_uart1_resources[] = {
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = UART1_THR,
 | 
	
		
			
				|  |  | +		.end   = UART1_GCTL+2,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_MEM,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = IRQ_UART1_TX,
 | 
	
		
			
				|  |  | +		.end   = IRQ_UART1_TX,
 | 
	
		
			
				|  |  | +		.flags = IORESOURCE_IRQ,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		.start = IRQ_UART1_RX,
 | 
	
		
			
				|  |  | +		.end   = IRQ_UART1_RX,
 |