aboutsummaryrefslogtreecommitdiff
path: root/core/drivers/hi16xx_uart.c
diff options
context:
space:
mode:
authorEtienne Carriere <etienne.carriere@linaro.org>2017-03-31 14:38:17 +0200
committerEtienne Carriere <etienne.carriere@linaro.org>2017-03-31 14:38:17 +0200
commit8d94060ae272f7461905b504642fc16341a222af (patch)
treef325e54135c3afd9d690fb314d1f3f191add3623 /core/drivers/hi16xx_uart.c
parent68f38a1e68b0ca191e8c1760c523d7c51287b3fd (diff)
core: fix console drivers against pager
Console operations structures must be kept in the unpaged sections when pager is enable. Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (qemu_virt)
Diffstat (limited to 'core/drivers/hi16xx_uart.c')
-rw-r--r--core/drivers/hi16xx_uart.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/core/drivers/hi16xx_uart.c b/core/drivers/hi16xx_uart.c
index fbc2c7d9..3f8a3ca9 100644
--- a/core/drivers/hi16xx_uart.c
+++ b/core/drivers/hi16xx_uart.c
@@ -27,6 +27,7 @@
#include <assert.h>
#include <drivers/hi16xx_uart.h>
#include <io.h>
+#include <keep.h>
#include <mm/core_mmu.h>
#include <util.h>
@@ -129,6 +130,7 @@ static const struct serial_ops hi16xx_uart_ops = {
.have_rx_data = hi16xx_uart_have_rx_data,
.putc = hi16xx_uart_putc,
};
+KEEP_PAGER(hi16xx_uart_ops);
void hi16xx_uart_init(struct hi16xx_uart_data *pd, paddr_t base,
uint32_t uart_clk, uint32_t baud_rate)