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

Commit 15daf691 authored by Lee Jones's avatar Lee Jones Committed by Arnd Bergmann
Browse files

ARM: ux500: Enable PL022 SSP Controller in Device Tree



This SSP Controller supports a number of serial communication methods
and as such cannot be registered using of_register_spi_devices.
Instead we register it simply as a primecell device.

Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Acked-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parent f1949ea0
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -204,7 +204,10 @@
			#address-cells = <1>;
			#address-cells = <1>;
			#size-cells = <0>;
			#size-cells = <0>;
			status = "disabled";
			status = "disabled";

			// Add one of these for each child device
			cs-gpios = <&gpio0 31 &gpio4 14 &gpio4 16 &gpio6 22 &gpio7 0>;
			cs-gpios = <&gpio0 31 &gpio4 14 &gpio4 16 &gpio6 22 &gpio7 0>;

		};
		};


		uart@80120000 {
		uart@80120000 {
+3 −3
Original line number Original line Diff line number Diff line
@@ -443,7 +443,7 @@ static struct stedma40_chan_cfg ssp0_dma_cfg_tx = {
};
};
#endif
#endif


static struct pl022_ssp_controller ssp0_platform_data = {
static struct pl022_ssp_controller ssp0_plat = {
	.bus_id = 0,
	.bus_id = 0,
#ifdef CONFIG_STE_DMA40
#ifdef CONFIG_STE_DMA40
	.enable_dma = 1,
	.enable_dma = 1,
@@ -461,7 +461,7 @@ static struct pl022_ssp_controller ssp0_platform_data = {


static void __init mop500_spi_init(struct device *parent)
static void __init mop500_spi_init(struct device *parent)
{
{
	db8500_add_ssp0(parent, &ssp0_platform_data);
	db8500_add_ssp0(parent, &ssp0_plat);
}
}


#ifdef CONFIG_STE_DMA40
#ifdef CONFIG_STE_DMA40
@@ -749,6 +749,7 @@ struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = {
	OF_DEV_AUXDATA("arm,pl011", 0x80120000, "uart0", &uart0_plat),
	OF_DEV_AUXDATA("arm,pl011", 0x80120000, "uart0", &uart0_plat),
	OF_DEV_AUXDATA("arm,pl011", 0x80121000, "uart1", &uart1_plat),
	OF_DEV_AUXDATA("arm,pl011", 0x80121000, "uart1", &uart1_plat),
	OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", &uart2_plat),
	OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", &uart2_plat),
	OF_DEV_AUXDATA("arm,pl022", 0x80002000, "ssp0",  &ssp0_plat),
	{},
	{},
};
};


@@ -804,7 +805,6 @@ static void __init u8500_init_machine(void)
		hrefv60_sdi_init(parent);
		hrefv60_sdi_init(parent);
	}
	}
	mop500_i2c_init(parent);
	mop500_i2c_init(parent);
	mop500_spi_init(parent);


	i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
	i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
	i2c_register_board_info(2, mop500_i2c2_devices,
	i2c_register_board_info(2, mop500_i2c2_devices,