| /* SPDX-License-Identifier: GPL-2.0+ */ | |
| /* | |
| * Copyright (C) 2014 Samsung Electronics | |
| * Przemyslaw Marczak <p.marczak@samsung.com> | |
| */ | |
| #ifndef _ERRNO_H | |
| #define _ERRNO_H | |
| #include <linux/errno.h> | |
| #ifdef __SANDBOX__ | |
| #define __errno_asm_label asm("__u_boot_errno") | |
| #else | |
| #define __errno_asm_label | |
| #endif | |
| extern int errno __errno_asm_label; | |
| #define __set_errno(val) do { errno = val; } while (0) | |
| /** | |
| * errno_str() - get description for error number | |
| * | |
| * @errno: error number (negative in case of error) | |
| * Return: string describing the error. If CONFIG_ERRNO_STR is not | |
| * defined an empty string is returned. | |
| */ | |
| #if CONFIG_IS_ENABLED(ERRNO_STR) | |
| const char *errno_str(int errno); | |
| #else | |
| static const char error_message[] = ""; | |
| static inline const char *errno_str(int errno) | |
| { | |
| return error_message; | |
| } | |
| #endif | |
| #endif /* _ERRNO_H */ |