From bdd3b6375bc2079f2095758d098383dd9fd6dbb3 Mon Sep 17 00:00:00 2001 From: Jennifer Averett Date: Tue, 18 Oct 2011 18:26:36 +0000 Subject: 2011-10-18 Jennifer Averett PR 1917/bsps * Makefile.am, console/uart.c: Modifications to add dynamic tables for libchip serial drivers. --- c/src/lib/libbsp/arm/edb7312/ChangeLog | 6 ++++++ c/src/lib/libbsp/arm/edb7312/Makefile.am | 4 +++- c/src/lib/libbsp/arm/edb7312/console/uart.c | 25 ++++++++++++------------- c/src/lib/libbsp/arm/gp32/ChangeLog | 6 ++++++ c/src/lib/libbsp/arm/gp32/Makefile.am | 4 +++- c/src/lib/libbsp/arm/gp32/console/uart.c | 8 ++------ c/src/lib/libbsp/arm/rtl22xx/ChangeLog | 6 ++++++ c/src/lib/libbsp/arm/rtl22xx/Makefile.am | 4 +++- c/src/lib/libbsp/arm/rtl22xx/console/uart.c | 8 ++------ 9 files changed, 43 insertions(+), 28 deletions(-) (limited to 'c') 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 + + PR 1917/bsps + * Makefile.am, console/uart.c: Modifications to add dynamic tables for + libchip serial drivers. + 2011-06-19 Ralf Corsépius * 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 | diff --git a/c/src/lib/libbsp/arm/gp32/ChangeLog b/c/src/lib/libbsp/arm/gp32/ChangeLog index 86960c2b8b..e8aab621d8 100644 --- a/c/src/lib/libbsp/arm/gp32/ChangeLog +++ b/c/src/lib/libbsp/arm/gp32/ChangeLog @@ -1,3 +1,9 @@ +2011-10-18 Jennifer Averett + + PR 1917/bsps + * Makefile.am, console/uart.c: Modifications to add dynamic tables for + libchip serial drivers. + 2011-02-11 Ralf Corsépius * startup/bspreset.c, startup/bspstart.c: diff --git a/c/src/lib/libbsp/arm/gp32/Makefile.am b/c/src/lib/libbsp/arm/gp32/Makefile.am index 27375d8839..2086e44c2b 100644 --- a/c/src/lib/libbsp/arm/gp32/Makefile.am +++ b/c/src/lib/libbsp/arm/gp32/Makefile.am @@ -39,7 +39,9 @@ libbsp_a_SOURCES += ../../shared/bsplibc.c ../../shared/bsppost.c \ startup/memmap.c ../../shared/bootcard.c ../../shared/sbrk.c \ ../../shared/gnatinstallhandler.c # 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 # IRQ include_bsp_HEADERS += ../../shared/include/irq-generic.h \ ../../shared/include/irq-info.h diff --git a/c/src/lib/libbsp/arm/gp32/console/uart.c b/c/src/lib/libbsp/arm/gp32/console/uart.c index a0ca1e84b2..4c4154ac1f 100644 --- a/c/src/lib/libbsp/arm/gp32/console/uart.c +++ b/c/src/lib/libbsp/arm/gp32/console/uart.c @@ -46,11 +46,7 @@ static void uart_write_polled(int minor, char c); static int uart_set_attributes(int minor, const struct termios *t); /* These are used by code in console.c */ -unsigned long Console_Port_Count = NUM_DEVS; -console_data Console_Port_Data[NUM_DEVS]; - -/* rtems console uses the following minor number */ -rtems_device_minor_number Console_Port_Minor = 0; +unsigned long Console_Configuration_Count = NUM_DEVS; /* Pointers to functions for handling the UART. */ console_fns uart_fns = @@ -73,7 +69,7 @@ console_fns uart_fns = * by console.c, but may be used by drivers in libchip * */ -console_tbl Console_Port_Tbl[] = { +console_tbl Console_Configuration_Ports[] = { { "/dev/com0", /* sDeviceName */ SERIAL_CUSTOM, /* deviceType */ diff --git a/c/src/lib/libbsp/arm/rtl22xx/ChangeLog b/c/src/lib/libbsp/arm/rtl22xx/ChangeLog index 992be0f685..e22b7f3084 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/ChangeLog +++ b/c/src/lib/libbsp/arm/rtl22xx/ChangeLog @@ -1,3 +1,9 @@ +2011-10-18 Jennifer Averett + + PR 1917/bsps + * Makefile.am, console/uart.c: Modifications to add dynamic tables for + libchip serial drivers. + 2011-10-07 Ralf Corsépius * make/custom/rtl22xx_t.cfg: Remove USE_THUMB (Violates *.cfg diff --git a/c/src/lib/libbsp/arm/rtl22xx/Makefile.am b/c/src/lib/libbsp/arm/rtl22xx/Makefile.am index 5ae5fa357a..bebdff5b79 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/Makefile.am +++ b/c/src/lib/libbsp/arm/rtl22xx/Makefile.am @@ -41,7 +41,9 @@ libbsp_a_SOURCES += ../../shared/bsplibc.c ../../shared/bsppost.c \ ../../shared/bootcard.c ../../shared/sbrk.c \ ../../shared/gnatinstallhandler.c # console -libbsp_a_SOURCES += ../../shared/console.c +libbsp_a_SOURCES += ../../shared/console.c \ + ../../shared/console_select.c ../../shared/console_control.c \ + ../../shared/console_read.c ../../shared/console_write.c # IRQ include_bsp_HEADERS += ../../shared/include/irq-generic.h \ ../../shared/include/irq-info.h diff --git a/c/src/lib/libbsp/arm/rtl22xx/console/uart.c b/c/src/lib/libbsp/arm/rtl22xx/console/uart.c index 63a9f672e1..fe83b88b38 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/console/uart.c +++ b/c/src/lib/libbsp/arm/rtl22xx/console/uart.c @@ -45,11 +45,7 @@ static void uart_write_polled(int minor, char c); static int uart_set_attributes(int minor, const struct termios *t); /* These are used by code in console.c */ -unsigned long Console_Port_Count = NUM_DEVS; -console_data Console_Port_Data[NUM_DEVS]; - -/* rtems console uses the following minor number */ -rtems_device_minor_number Console_Port_Minor = 0; +unsigned long Console_Configuration_Count = NUM_DEVS; /* Pointers to functions for handling the UART. */ console_fns uart_fns = @@ -72,7 +68,7 @@ console_fns uart_fns = * by console.c, but may be used by drivers in libchip * */ -console_tbl Console_Port_Tbl[] = { +console_tbl Console_Configuration_Ports[] = { { "/dev/console", /* sDeviceName */ SERIAL_CUSTOM, /* deviceType */ -- cgit v1.2.3