dev: Refactor UART->Terminal interface
authorAndreas Sandberg <andreas.sandberg@arm.com>
Thu, 20 Jul 2017 10:20:17 +0000 (11:20 +0100)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Wed, 8 Nov 2017 10:32:54 +0000 (10:32 +0000)
commitd6c204c67d42a3cea9d603888ec52a8d8dacf1a3
tree3c5c0f263d122a4d13901e432ff408bfa905f1f3
parent344911b885114b8401482679202aaee89fa8b29b
dev: Refactor UART->Terminal interface

The UART models currently assume that they are always wired to a
terminal. While true at the moment, this isn't necessarily a valid
assumption. This change introduces the SerialDevice class that defines
the interface for serial devices. Currently, Terminal is the only
class that implements this interface.

Change-Id: I74fefafbbaf5ac1ec0d4ec0b5a0f4b246fdad305
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Curtis Dunham <curtis.dunham@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/4289
Reviewed-by: Gabe Black <gabeblack@google.com>
16 files changed:
src/dev/SConscript
src/dev/Serial.py [new file with mode: 0644]
src/dev/Terminal.py
src/dev/Uart.py
src/dev/alpha/backdoor.cc
src/dev/arm/pl011.cc
src/dev/serial.cc [new file with mode: 0644]
src/dev/serial.hh [new file with mode: 0644]
src/dev/terminal.cc
src/dev/terminal.hh
src/dev/uart.cc
src/dev/uart.hh
src/dev/uart8250.cc
src/dev/virtio/VirtIOConsole.py
src/dev/virtio/console.cc
src/dev/virtio/console.hh