1 /* 2 * Copyright (c) 2023, Arm Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #include <service/log/backend/log_backend.h> 8 #include <service/log/backend/uart/uart_adapter/uart_adapter.h> 9 #include <stddef.h> 10 uart_puts(void * context,const char * str)11static log_status_t uart_puts(void *context, const char *str) 12 { 13 (void)context; 14 uart_hardware_puts(str); 15 16 return LOG_STATUS_SUCCESS; 17 } 18 uart_backend_init(int uart_instance_num)19struct log_backend *uart_backend_init(int uart_instance_num) 20 { 21 int status = 0; 22 static struct log_backend backend = {0}; 23 static const struct log_backend_interface interface = { uart_puts }; 24 25 status = uart_adapter_init(uart_instance_num); 26 27 if (status != 0) 28 return NULL; 29 30 backend.context = NULL; 31 backend.interface = &interface; 32 33 return &backend; 34 } 35 uart_backend_deinit(void)36void uart_backend_deinit(void) 37 { 38 uart_adapter_deinit(); 39 } 40