[U-Boot] [RFC PATCH 2/2] serial: arm_dcc: Register with serial core
Michal Simek
michal.simek at xilinx.com
Tue Aug 6 15:17:03 CEST 2013
From: Jagannadha Sutradharudu Teki <jagannadha.sutradharudu-teki at xilinx.com>
Register arm_dcc with drivers/serial/serial.c
Signed-off-by: Jagannadha Sutradharudu Teki <jaganna at xilinx.com>
Signed-off-by: Michal Simek <michal.simek at xilinx.com>
---
drivers/serial/arm_dcc.c | 33 +++++++++++++++++++++++++++------
drivers/serial/serial.c | 2 ++
2 files changed, 29 insertions(+), 6 deletions(-)
diff --git a/drivers/serial/arm_dcc.c b/drivers/serial/arm_dcc.c
index e76c038..29d9295 100644
--- a/drivers/serial/arm_dcc.c
+++ b/drivers/serial/arm_dcc.c
@@ -27,6 +27,7 @@
*/
#include <common.h>
+#include <serial.h>
#if defined(CONFIG_CPU_V6)
/*
@@ -88,12 +89,12 @@
#define TIMEOUT_COUNT 0x4000000
-int arm_dcc_init(void)
+static int arm_dcc_init(void)
{
return 0;
}
-int arm_dcc_getc(void)
+static int arm_dcc_getc(void)
{
int ch;
register unsigned int reg;
@@ -106,7 +107,7 @@ int arm_dcc_getc(void)
return ch;
}
-void arm_dcc_putc(char ch)
+static void arm_dcc_putc(char ch)
{
register unsigned int reg;
unsigned int timeout_count = TIMEOUT_COUNT;
@@ -122,13 +123,13 @@ void arm_dcc_putc(char ch)
write_dcc(ch);
}
-void arm_dcc_puts(const char *s)
+static void arm_dcc_puts(const char *s)
{
while (*s)
arm_dcc_putc(*s++);
}
-int arm_dcc_tstc(void)
+static int arm_dcc_tstc(void)
{
register unsigned int reg;
@@ -137,7 +138,27 @@ int arm_dcc_tstc(void)
return reg;
}
+static void arm_dcc_setbrg(void)
+{
+}
+
+static struct serial_device arm_dcc_drv = {
+ .name = "arm_dcc",
+ .start = arm_dcc_init,
+ .stop = NULL,
+ .setbrg = arm_dcc_setbrg,
+ .putc = arm_dcc_putc,
+ .puts = arm_dcc_puts,
+ .getc = arm_dcc_getc,
+ .tstc = arm_dcc_tstc,
+};
+
+void arm_dcc_initialize(void)
+{
+ serial_register(&arm_dcc_drv);
+}
+
__weak struct serial_device *default_serial_console(void)
{
- return NULL;
+ return &arm_dcc_drv;
}
diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c
index 6730135..118fbc3 100644
--- a/drivers/serial/serial.c
+++ b/drivers/serial/serial.c
@@ -159,6 +159,7 @@ serial_initfunc(pl01x_serial_initialize);
serial_initfunc(s3c44b0_serial_initialize);
serial_initfunc(sa1100_serial_initialize);
serial_initfunc(sh_serial_initialize);
+serial_initfunc(arm_dcc_initialize);
/**
* serial_register() - Register serial driver with serial driver core
@@ -251,6 +252,7 @@ void serial_initialize(void)
s3c44b0_serial_initialize();
sa1100_serial_initialize();
sh_serial_initialize();
+ arm_dcc_initialize();
serial_assign(default_serial_console()->name);
}
--
1.8.2.3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130806/1df9e6b5/attachment.pgp>
More information about the U-Boot
mailing list