aboutsummaryrefslogtreecommitdiff
path: root/include/drivers/meson/meson_console.h
diff options
context:
space:
mode:
authorAntonio Nino Diaz <antonio.ninodiaz@arm.com>2018-08-15 22:07:35 +0100
committerAntonio Nino Diaz <antonio.ninodiaz@arm.com>2018-10-26 11:53:14 +0100
commit9b6483c8805370475e836dc2df5c38ed1f57c120 (patch)
tree9a26b3569f7396e7e70336c14c6d8b9f8d13e99c /include/drivers/meson/meson_console.h
parent31abc7c45428398a330a3a940fe4dd7efa6c96f2 (diff)
downloadarm-trusted-firmware-9b6483c8805370475e836dc2df5c38ed1f57c120.tar.gz
meson: console: Introduce console driver
It has only been tested with a system clock of 24 MHz. It has only been implemented for the multi console API. Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Diffstat (limited to 'include/drivers/meson/meson_console.h')
-rw-r--r--include/drivers/meson/meson_console.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/drivers/meson/meson_console.h b/include/drivers/meson/meson_console.h
new file mode 100644
index 000000000..759571dda
--- /dev/null
+++ b/include/drivers/meson/meson_console.h
@@ -0,0 +1,37 @@
+/*
+ * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+#ifndef MESON_CONSOLE_H
+#define MESON_CONSOLE_H
+
+#include <console.h>
+
+#define CONSOLE_T_MESON_BASE CONSOLE_T_DRVDATA
+
+#ifndef __ASSEMBLY__
+
+#include <stdint.h>
+
+typedef struct {
+ console_t console;
+ uintptr_t base;
+} console_meson_t;
+
+/*
+ * Initialize a new meson console instance and register it with the console
+ * framework. The |console| pointer must point to storage that will be valid
+ * for the lifetime of the console, such as a global or static local variable.
+ * Its contents will be reinitialized from scratch.
+ *
+ * NOTE: The clock is actually fixed to 24 MHz. The argument is only there in
+ * order to make this function future-proof.
+ */
+int console_meson_register(uintptr_t baseaddr, uint32_t clock, uint32_t baud,
+ console_meson_t *console);
+
+#endif /*__ASSEMBLY__*/
+
+#endif /* MESON_CONSOLE_H */