Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 15e86585 authored by Sandeep Paulraj's avatar Sandeep Paulraj Committed by Kevin Hilman
Browse files

DaVinci DM355: Modifications to DM355 SPI support



This patch does the following

1) Minor change to the SPI clocks making it
similar to DM365.
2) Changing the interrupt used by SPI0
3) Adding EDMA resources that can be used by SPI0
4) Adding platform specific data.

Signed-off-by: default avatarSandeep Paulraj <s-paulraj@ti.com>
Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
parent 8e2a0013
Loading
Loading
Loading
Loading
+28 −11
Original line number Original line Diff line number Diff line
@@ -29,6 +29,7 @@
#include <mach/serial.h>
#include <mach/serial.h>
#include <mach/common.h>
#include <mach/common.h>
#include <mach/asp.h>
#include <mach/asp.h>
#include <mach/spi.h>


#include "clock.h"
#include "clock.h"
#include "mux.h"
#include "mux.h"
@@ -363,9 +364,9 @@ static struct clk_lookup dm355_clks[] = {
	CLK("davinci-asp.1", NULL, &asp1_clk),
	CLK("davinci-asp.1", NULL, &asp1_clk),
	CLK("davinci_mmc.0", NULL, &mmcsd0_clk),
	CLK("davinci_mmc.0", NULL, &mmcsd0_clk),
	CLK("davinci_mmc.1", NULL, &mmcsd1_clk),
	CLK("davinci_mmc.1", NULL, &mmcsd1_clk),
	CLK(NULL, "spi0", &spi0_clk),
	CLK("spi_davinci.0", NULL, &spi0_clk),
	CLK(NULL, "spi1", &spi1_clk),
	CLK("spi_davinci.1", NULL, &spi1_clk),
	CLK(NULL, "spi2", &spi2_clk),
	CLK("spi_davinci.2", NULL, &spi2_clk),
	CLK(NULL, "gpio", &gpio_clk),
	CLK(NULL, "gpio", &gpio_clk),
	CLK(NULL, "aemif", &aemif_clk),
	CLK(NULL, "aemif", &aemif_clk),
	CLK(NULL, "pwm0", &pwm0_clk),
	CLK(NULL, "pwm0", &pwm0_clk),
@@ -392,24 +393,40 @@ static struct resource dm355_spi0_resources[] = {
		.flags = IORESOURCE_MEM,
		.flags = IORESOURCE_MEM,
	},
	},
	{
	{
		.start = IRQ_DM355_SPINT0_1,
		.start = IRQ_DM355_SPINT0_0,
		.flags = IORESOURCE_IRQ,
		.flags = IORESOURCE_IRQ,
	},
	},
	/* Not yet used, so not included:
	{
	 * IORESOURCE_IRQ:
		.start = 17,
	 *  - IRQ_DM355_SPINT0_0
		.flags = IORESOURCE_DMA,
	 * IORESOURCE_DMA:
	},
	 *  - DAVINCI_DMA_SPI_SPIX
	{
	 *  - DAVINCI_DMA_SPI_SPIR
		.start = 16,
	 */
		.flags = IORESOURCE_DMA,
	},
	{
		.start = EVENTQ_1,
		.flags = IORESOURCE_DMA,
	},
};
};


static struct davinci_spi_platform_data dm355_spi0_pdata = {
	.version 	= SPI_VERSION_1,
	.num_chipselect = 2,
	.clk_internal	= 1,
	.cs_hold	= 1,
	.intr_level	= 0,
	.poll_mode	= 1,	/* 0 -> interrupt mode 1-> polling mode */
	.c2tdelay	= 0,
	.t2cdelay	= 0,
};
static struct platform_device dm355_spi0_device = {
static struct platform_device dm355_spi0_device = {
	.name = "spi_davinci",
	.name = "spi_davinci",
	.id = 0,
	.id = 0,
	.dev = {
	.dev = {
		.dma_mask = &dm355_spi0_dma_mask,
		.dma_mask = &dm355_spi0_dma_mask,
		.coherent_dma_mask = DMA_BIT_MASK(32),
		.coherent_dma_mask = DMA_BIT_MASK(32),
		.platform_data = &dm355_spi0_pdata,
	},
	},
	.num_resources = ARRAY_SIZE(dm355_spi0_resources),
	.num_resources = ARRAY_SIZE(dm355_spi0_resources),
	.resource = dm355_spi0_resources,
	.resource = dm355_spi0_resources,