/* SPDX-License-Identifier: GPL-2.0-only */ #include #include #include static void *uart_bars[FCH_UART_ID_MAX]; uintptr_t get_uart_base(unsigned int idx) { uint32_t err; if (idx >= ARRAY_SIZE(uart_bars)) return 0; if (uart_bars[idx]) return (uintptr_t)uart_bars[idx]; err = svc_map_fch_dev(FCH_IO_DEVICE_UART, idx, 0, &uart_bars[idx]); if (err) { svc_debug_print("Failed to map UART\n"); return 0; } return (uintptr_t)uart_bars[idx]; }