summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/edb7312
diff options
context:
space:
mode:
authorJennifer Averett <Jennifer.Averett@OARcorp.com>2011-10-18 18:26:36 +0000
committerJennifer Averett <Jennifer.Averett@OARcorp.com>2011-10-18 18:26:36 +0000
commitbdd3b6375bc2079f2095758d098383dd9fd6dbb3 (patch)
tree18c9434c157bd223eb40cd42a44e9ce5c569eaf8 /c/src/lib/libbsp/arm/edb7312
parent2011-10-18 Jennifer Averett <Jennifer.Averett@OARcorp.com> (diff)
downloadrtems-bdd3b6375bc2079f2095758d098383dd9fd6dbb3.tar.bz2
2011-10-18 Jennifer Averett <Jennifer.Averett@OARcorp.com>
PR 1917/bsps * Makefile.am, console/uart.c: Modifications to add dynamic tables for libchip serial drivers.
Diffstat (limited to 'c/src/lib/libbsp/arm/edb7312')
-rw-r--r--c/src/lib/libbsp/arm/edb7312/ChangeLog6
-rw-r--r--c/src/lib/libbsp/arm/edb7312/Makefile.am4
-rw-r--r--c/src/lib/libbsp/arm/edb7312/console/uart.c25
3 files changed, 21 insertions, 14 deletions
diff --git a/c/src/lib/libbsp/arm/edb7312/ChangeLog b/c/src/lib/libbsp/arm/edb7312/ChangeLog
index f988b49c02..37406d70fd 100644
--- a/c/src/lib/libbsp/arm/edb7312/ChangeLog
+++ b/c/src/lib/libbsp/arm/edb7312/ChangeLog
@@ -1,3 +1,9 @@
+2011-10-18 Jennifer Averett <Jennifer.Averett@OARcorp.com>
+
+ PR 1917/bsps
+ * Makefile.am, console/uart.c: Modifications to add dynamic tables for
+ libchip serial drivers.
+
2011-06-19 Ralf Corsépius <ralf.corsepius@rtems.org>
* Makefile.am: Fix broken path to clockdrv_shell.h.
diff --git a/c/src/lib/libbsp/arm/edb7312/Makefile.am b/c/src/lib/libbsp/arm/edb7312/Makefile.am
index 86e07db23f..bbe0002593 100644
--- a/c/src/lib/libbsp/arm/edb7312/Makefile.am
+++ b/c/src/lib/libbsp/arm/edb7312/Makefile.am
@@ -44,7 +44,9 @@ libbsp_a_SOURCES += ../../shared/bsppost.c ../../shared/bsplibc.c \
libbsp_a_SOURCES += clock/clockdrv.c
libbsp_a_SOURCES += ../../shared/clockdrv_shell.h
# console
-libbsp_a_SOURCES += console/uart.c ../../shared/console.c
+libbsp_a_SOURCES += console/uart.c ../../shared/console.c \
+ ../../shared/console_select.c ../../shared/console_control.c \
+ ../../shared/console_read.c ../../shared/console_write.c
# timer
libbsp_a_SOURCES += timer/timer.c
# abort
diff --git a/c/src/lib/libbsp/arm/edb7312/console/uart.c b/c/src/lib/libbsp/arm/edb7312/console/uart.c
index bcfdc3d952..d92301826b 100644
--- a/c/src/lib/libbsp/arm/edb7312/console/uart.c
+++ b/c/src/lib/libbsp/arm/edb7312/console/uart.c
@@ -31,9 +31,8 @@ static void uart_init(int minor);
static void uart_write_polled(int minor, char c);
static int uart_set_attributes(int minor, const struct termios *t);
-unsigned long Console_Port_Count = NUM_DEVS;
-console_data Console_Port_Data[NUM_DEVS];
-rtems_device_minor_number Console_Port_Minor = 0;
+unsigned long Console_Configuration_Count = NUM_DEVS;
+
console_fns uart_fns =
{
libchip_serial_default_probe,
@@ -46,7 +45,7 @@ console_fns uart_fns =
uart_set_attributes,
FALSE
};
-console_tbl Console_Port_Tbl[] = {
+console_tbl Console_Configuration_Ports[] = {
{
"/dev/com0", /* sDeviceName */
SERIAL_CUSTOM, /* deviceType */
@@ -92,9 +91,9 @@ int uart_poll_read(int minor)
char c;
int err;
- data_reg = (uint32_t*)Console_Port_Tbl[minor].ulDataPort;
- ctrl_reg1 = (uint32_t*)Console_Port_Tbl[minor].ulCtrlPort1;
- ctrl_reg2 = (uint32_t*)Console_Port_Tbl[minor].ulCtrlPort2;
+ data_reg = (uint32_t *)Console_Port_Tbl[minor]->ulDataPort;
+ ctrl_reg1 = (uint32_t *)Console_Port_Tbl[minor]->ulCtrlPort1;
+ ctrl_reg2 = (uint32_t *)Console_Port_Tbl[minor]->ulCtrlPort2;
if ((*ctrl_reg2 & EP7312_UART_URXFE1) != 0) {
return -1;
@@ -115,9 +114,9 @@ static ssize_t uart_write(int minor, const char *buf, size_t len)
size_t i;
char c;
- data_reg = (uint32_t*)Console_Port_Tbl[minor].ulDataPort;
- ctrl_reg1 = (uint32_t*)Console_Port_Tbl[minor].ulCtrlPort1;
- ctrl_reg2 = (uint32_t*)Console_Port_Tbl[minor].ulCtrlPort2;
+ data_reg = (uint32_t *)Console_Port_Tbl[minor]->ulDataPort;
+ ctrl_reg1 = (uint32_t *)Console_Port_Tbl[minor]->ulCtrlPort1;
+ ctrl_reg2 = (uint32_t *)Console_Port_Tbl[minor]->ulCtrlPort2;
for (i = 0; i < len; i++) {
/* Wait for fifo to have room */
@@ -138,9 +137,9 @@ static void uart_init(int minor)
volatile uint32_t *ctrl_reg1;
volatile uint32_t *ctrl_reg2;
- data_reg = (uint32_t*)Console_Port_Tbl[minor].ulDataPort;
- ctrl_reg1 = (uint32_t*)Console_Port_Tbl[minor].ulCtrlPort1;
- ctrl_reg2 = (uint32_t*)Console_Port_Tbl[minor].ulCtrlPort2;
+ data_reg = (uint32_t *)Console_Port_Tbl[minor]->ulDataPort;
+ ctrl_reg1 = (uint32_t *)Console_Port_Tbl[minor]->ulCtrlPort1;
+ ctrl_reg2 = (uint32_t *)Console_Port_Tbl[minor]->ulCtrlPort2;
/* *ctrl_reg = (BSP_UART_DATA8 |
BSP_UART_STOP1 |