14a079c75SCarlo Caione /* 24a079c75SCarlo Caione * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. 34a079c75SCarlo Caione * 44a079c75SCarlo Caione * SPDX-License-Identifier: BSD-3-Clause 54a079c75SCarlo Caione */ 64a079c75SCarlo Caione 74a079c75SCarlo Caione #ifndef MESON_CONSOLE_H 84a079c75SCarlo Caione #define MESON_CONSOLE_H 94a079c75SCarlo Caione 104a079c75SCarlo Caione #include <drivers/console.h> 114a079c75SCarlo Caione 124a079c75SCarlo Caione #ifndef __ASSEMBLER__ 134a079c75SCarlo Caione 144a079c75SCarlo Caione #include <stdint.h> 154a079c75SCarlo Caione 164a079c75SCarlo Caione /* 174a079c75SCarlo Caione * Initialize a new meson console instance and register it with the console 184a079c75SCarlo Caione * framework. The |console| pointer must point to storage that will be valid 194a079c75SCarlo Caione * for the lifetime of the console, such as a global or static local variable. 204a079c75SCarlo Caione * Its contents will be reinitialized from scratch. 214a079c75SCarlo Caione * 224a079c75SCarlo Caione * NOTE: The clock is actually fixed to 24 MHz. The argument is only there in 234a079c75SCarlo Caione * order to make this function future-proof. 244a079c75SCarlo Caione */ 254a079c75SCarlo Caione int console_meson_register(uintptr_t baseaddr, uint32_t clock, uint32_t baud, 26*489e2987SAndre Przywara console_t *console); 274a079c75SCarlo Caione 284a079c75SCarlo Caione #endif /*__ASSEMBLER__*/ 294a079c75SCarlo Caione 304a079c75SCarlo Caione #endif /* MESON_CONSOLE_H */ 31