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

Commit 4b27aa41 authored by Rabin Vincent's avatar Rabin Vincent Committed by Russell King
Browse files

ARM: 6084/1: ux500: move UART devices to devices.c



The three PL011 UARTs are common among Ux500 SoCs, so move them to
devices.c.

Acked-by: default avatarLinus Walleij <linus.walleij@stericsson.com>
Acked-by: default avatarSrinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: default avatarRabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 9e4e7fe1
Loading
Loading
Loading
Loading
+3 −25
Original line number Diff line number Diff line
@@ -26,28 +26,6 @@
#include <mach/setup.h>
#include <mach/devices.h>

#define __MEM_4K_RESOURCE(x) \
	.res = {.start = (x), .end = (x) + SZ_4K - 1, .flags = IORESOURCE_MEM}

/* These are active devices on this board */
static struct amba_device uart0_device = {
	.dev = { .init_name = "uart0" },
	__MEM_4K_RESOURCE(U8500_UART0_BASE),
	.irq = {IRQ_UART0, NO_IRQ},
};

static struct amba_device uart1_device = {
	.dev = { .init_name = "uart1" },
	__MEM_4K_RESOURCE(U8500_UART1_BASE),
	.irq = {IRQ_UART1, NO_IRQ},
};

static struct amba_device uart2_device = {
	.dev = { .init_name = "uart2" },
	__MEM_4K_RESOURCE(U8500_UART2_BASE),
	.irq = {IRQ_UART2, NO_IRQ},
};

static void ab4500_spi_cs_control(u32 command)
{
	/* set the FRM signal, which is CS  - TODO */
@@ -157,9 +135,9 @@ U8500_I2C_PDEVICE(2);
U8500_I2C_PDEVICE(3);

static struct amba_device *amba_devs[] __initdata = {
	&uart0_device,
	&uart1_device,
	&uart2_device,
	&ux500_uart0_device,
	&ux500_uart1_device,
	&ux500_uart2_device,
	&u8500_ssp0_device,
};

+21 −0
Original line number Diff line number Diff line
@@ -14,6 +14,9 @@
#include <mach/hardware.h>
#include <mach/setup.h>

#define __MEM_4K_RESOURCE(x) \
	.res = {.start = (x), .end = (x) + SZ_4K - 1, .flags = IORESOURCE_MEM}

struct amba_device ux500_pl031_device = {
	.dev = {
		.init_name = "pl031",
@@ -26,6 +29,24 @@ struct amba_device ux500_pl031_device = {
	.irq = {IRQ_RTC_RTT, NO_IRQ},
};

struct amba_device ux500_uart0_device = {
	.dev = { .init_name = "uart0" },
	__MEM_4K_RESOURCE(UX500_UART0_BASE),
	.irq = {IRQ_UART0, NO_IRQ},
};

struct amba_device ux500_uart1_device = {
	.dev = { .init_name = "uart1" },
	__MEM_4K_RESOURCE(UX500_UART1_BASE),
	.irq = {IRQ_UART1, NO_IRQ},
};

struct amba_device ux500_uart2_device = {
	.dev = { .init_name = "uart2" },
	__MEM_4K_RESOURCE(UX500_UART2_BASE),
	.irq = {IRQ_UART2, NO_IRQ},
};

void __init amba_add_devices(struct amba_device *devs[], int num)
{
	int i;
+3 −0
Original line number Diff line number Diff line
@@ -12,5 +12,8 @@ struct amba_device;

extern struct amba_device ux500_pl031_device;
extern struct amba_device u8500_ssp0_device;
extern struct amba_device ux500_uart0_device;
extern struct amba_device ux500_uart1_device;
extern struct amba_device ux500_uart2_device;

#endif