summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/realview-pbx-a9
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-06-28 21:26:59 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-06-29 15:15:50 +0200
commit3b645c1b0ce3358c1f1fe01a4b5b2aed856fd958 (patch)
tree59156ee795120d474be1ca47db62c4a7b5f8b4d8 /c/src/lib/libbsp/arm/realview-pbx-a9
parentbsps/arm: Add PL111 support (diff)
downloadrtems-3b645c1b0ce3358c1f1fe01a4b5b2aed856fd958.tar.bz2
bsps/arm: Add PL050 support
Diffstat (limited to 'c/src/lib/libbsp/arm/realview-pbx-a9')
-rw-r--r--c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am3
-rw-r--r--c/src/lib/libbsp/arm/realview-pbx-a9/console/console-config.c34
-rw-r--r--c/src/lib/libbsp/arm/realview-pbx-a9/preinstall.am8
3 files changed, 45 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am b/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am
index 7b961b36d3..ef8e2d6bb3 100644
--- a/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am
+++ b/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am
@@ -43,6 +43,8 @@ include_bsp_HEADERS += ../shared/include/arm-gic-regs.h
include_bsp_HEADERS += ../shared/include/arm-gic-tm27.h
include_bsp_HEADERS += ../shared/include/arm-pl011.h
include_bsp_HEADERS += ../shared/include/arm-pl011-regs.h
+include_bsp_HEADERS += ../shared/include/arm-pl050.h
+include_bsp_HEADERS += ../shared/include/arm-pl050-regs.h
include_bsp_HEADERS += ../shared/include/arm-pl111-fb.h
include_bsp_HEADERS += ../shared/include/arm-pl111-regs.h
include_bsp_HEADERS += include/irq.h
@@ -112,6 +114,7 @@ libbsp_a_SOURCES += ../../shared/console_read.c
libbsp_a_SOURCES += ../../shared/console_select.c
libbsp_a_SOURCES += ../../shared/console_write.c
libbsp_a_SOURCES += ../shared/arm-pl011.c
+libbsp_a_SOURCES += ../shared/arm-pl050.c
libbsp_a_SOURCES += console/console-config.c
# Clock
diff --git a/c/src/lib/libbsp/arm/realview-pbx-a9/console/console-config.c b/c/src/lib/libbsp/arm/realview-pbx-a9/console/console-config.c
index e95280b70a..4814ef8107 100644
--- a/c/src/lib/libbsp/arm/realview-pbx-a9/console/console-config.c
+++ b/c/src/lib/libbsp/arm/realview-pbx-a9/console/console-config.c
@@ -12,11 +12,16 @@
* http://www.rtems.com/license/LICENSE.
*/
+#include <rtems/serial_mouse.h>
+
#include <libchip/serial.h>
#include <bsp.h>
#include <bsp/irq.h>
#include <bsp/arm-pl011.h>
+#include <bsp/arm-pl050.h>
+
+static const char psaux[] = "/dev/psaux";
console_tbl Console_Configuration_Ports[] = {
{
@@ -37,6 +42,24 @@ console_tbl Console_Configuration_Ports[] = {
.setData = NULL,
.ulClock = 0,
.ulIntVector = RVPBXA9_IRQ_UART_0
+ }, {
+ .sDeviceName = &psaux[0],
+ .deviceType = SERIAL_CUSTOM,
+ .pDeviceFns = &arm_pl050_fns,
+ .deviceProbe = NULL,
+ .pDeviceFlow = NULL,
+ .ulMargin = 10,
+ .ulHysteresis = 0,
+ .pDeviceParams = (void *) 115200,
+ .ulCtrlPort1 = 0x10007000,
+ .ulCtrlPort2 = 0,
+ .ulDataPort = 0,
+ .getRegister = NULL,
+ .setRegister = NULL,
+ .getData = NULL,
+ .setData = NULL,
+ .ulClock = 0,
+ .ulIntVector = RVPBXA9_IRQ_KMI1
}
};
@@ -73,3 +96,14 @@ static void output_char_init(char c)
BSP_output_char_function_type BSP_output_char = output_char_init;
BSP_polling_getchar_function_type BSP_poll_char = NULL;
+
+bool bsp_get_serial_mouse_device(
+ const char **name,
+ const char **type
+)
+{
+ *name = &psaux[0];
+ *type = "ps2";
+
+ return true;
+}
diff --git a/c/src/lib/libbsp/arm/realview-pbx-a9/preinstall.am b/c/src/lib/libbsp/arm/realview-pbx-a9/preinstall.am
index fad0cf93f2..8d26e05341 100644
--- a/c/src/lib/libbsp/arm/realview-pbx-a9/preinstall.am
+++ b/c/src/lib/libbsp/arm/realview-pbx-a9/preinstall.am
@@ -126,6 +126,14 @@ $(PROJECT_INCLUDE)/bsp/arm-pl011-regs.h: ../shared/include/arm-pl011-regs.h $(PR
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/arm-pl011-regs.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/arm-pl011-regs.h
+$(PROJECT_INCLUDE)/bsp/arm-pl050.h: ../shared/include/arm-pl050.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/arm-pl050.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/arm-pl050.h
+
+$(PROJECT_INCLUDE)/bsp/arm-pl050-regs.h: ../shared/include/arm-pl050-regs.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/arm-pl050-regs.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/arm-pl050-regs.h
+
$(PROJECT_INCLUDE)/bsp/arm-pl111-fb.h: ../shared/include/arm-pl111-fb.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/arm-pl111-fb.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/arm-pl111-fb.h