ARM: u300: add SPI PL022 to the device tree
This registers the PL022 PrimeCell from the U300 device tree. We make a new copy of the platform data for the device tree boot path, as the old platform data is in an older file which will be going away. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
39738cc96b
commit
cf4af8670b
|
@ -222,5 +222,17 @@ mmcsd: mmcsd@c0001000 {
|
|||
dmas = <&dmac 14>;
|
||||
dma-names = "rx";
|
||||
};
|
||||
|
||||
spi: ssp@c0006000 {
|
||||
compatible = "arm,pl022", "arm,primecell";
|
||||
reg = <0xc0006000 0x1000>;
|
||||
interrupt-parent = <&vica>;
|
||||
interrupts = <23>;
|
||||
dmas = <&dmac 27 &dmac 28>;
|
||||
dma-names = "tx", "rx";
|
||||
num-cs = <3>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
#include <linux/dmaengine.h>
|
||||
#include <linux/amba/bus.h>
|
||||
#include <linux/amba/mmci.h>
|
||||
#include <linux/amba/pl022.h>
|
||||
#include <linux/amba/serial.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/gpio.h>
|
||||
|
@ -704,6 +705,22 @@ MACHINE_END
|
|||
|
||||
#ifdef CONFIG_OF
|
||||
|
||||
static struct pl022_ssp_controller spi_plat_data = {
|
||||
/* If you have several SPI buses this varies, we have only bus 0 */
|
||||
.bus_id = 0,
|
||||
/*
|
||||
* On the APP CPU GPIO 4, 5 and 6 are connected as generic
|
||||
* chip selects for SPI. (Same on U330, U335 and U365.)
|
||||
* TODO: make sure the GPIO driver can select these properly
|
||||
* and do padmuxing accordingly too.
|
||||
*/
|
||||
.num_chipselect = 3,
|
||||
.enable_dma = 1,
|
||||
.dma_filter = coh901318_filter_id,
|
||||
.dma_rx_param = (void *) U300_DMA_SPI_RX,
|
||||
.dma_tx_param = (void *) U300_DMA_SPI_TX,
|
||||
};
|
||||
|
||||
/* These are mostly to get the right device names for the clock lookups */
|
||||
static struct of_dev_auxdata u300_auxdata_lookup[] __initdata = {
|
||||
OF_DEV_AUXDATA("stericsson,pinctrl-u300", U300_SYSCON_BASE,
|
||||
|
@ -720,6 +737,8 @@ static struct of_dev_auxdata u300_auxdata_lookup[] __initdata = {
|
|||
"uart0", &uart0_plat_data),
|
||||
OF_DEV_AUXDATA("arm,primecell", U300_UART1_BASE,
|
||||
"uart1", &uart1_plat_data),
|
||||
OF_DEV_AUXDATA("arm,primecell", U300_SPI_BASE,
|
||||
"pl022", &spi_plat_data),
|
||||
OF_DEV_AUXDATA("st,ddci2c", U300_I2C0_BASE,
|
||||
"stu300.0", NULL),
|
||||
OF_DEV_AUXDATA("st,ddci2c", U300_I2C1_BASE,
|
||||
|
|
Loading…
Reference in New Issue