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

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
...@@ -26,28 +26,6 @@ ...@@ -26,28 +26,6 @@
#include <mach/setup.h> #include <mach/setup.h>
#include <mach/devices.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) static void ab4500_spi_cs_control(u32 command)
{ {
/* set the FRM signal, which is CS - TODO */ /* set the FRM signal, which is CS - TODO */
...@@ -157,9 +135,9 @@ U8500_I2C_PDEVICE(2); ...@@ -157,9 +135,9 @@ U8500_I2C_PDEVICE(2);
U8500_I2C_PDEVICE(3); U8500_I2C_PDEVICE(3);
static struct amba_device *amba_devs[] __initdata = { static struct amba_device *amba_devs[] __initdata = {
&uart0_device, &ux500_uart0_device,
&uart1_device, &ux500_uart1_device,
&uart2_device, &ux500_uart2_device,
&u8500_ssp0_device, &u8500_ssp0_device,
}; };
......
...@@ -14,6 +14,9 @@ ...@@ -14,6 +14,9 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#include <mach/setup.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 = { struct amba_device ux500_pl031_device = {
.dev = { .dev = {
.init_name = "pl031", .init_name = "pl031",
...@@ -26,6 +29,24 @@ struct amba_device ux500_pl031_device = { ...@@ -26,6 +29,24 @@ struct amba_device ux500_pl031_device = {
.irq = {IRQ_RTC_RTT, NO_IRQ}, .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) void __init amba_add_devices(struct amba_device *devs[], int num)
{ {
int i; int i;
......
...@@ -12,5 +12,8 @@ struct amba_device; ...@@ -12,5 +12,8 @@ struct amba_device;
extern struct amba_device ux500_pl031_device; extern struct amba_device ux500_pl031_device;
extern struct amba_device u8500_ssp0_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 #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment