// SPDX-License-Identifier: GPL-2.0-only /* Copyright (C) 2025 Intel Corporation */ #include #include static const char * const libie_aq_str_arr[] = { #define LIBIE_AQ_STR(x) \ [LIBIE_AQ_RC_##x] = "LIBIE_AQ_RC" #x LIBIE_AQ_STR(OK), LIBIE_AQ_STR(EPERM), LIBIE_AQ_STR(ENOENT), LIBIE_AQ_STR(ESRCH), LIBIE_AQ_STR(EIO), LIBIE_AQ_STR(EAGAIN), LIBIE_AQ_STR(ENOMEM), LIBIE_AQ_STR(EACCES), LIBIE_AQ_STR(EBUSY), LIBIE_AQ_STR(EEXIST), LIBIE_AQ_STR(EINVAL), LIBIE_AQ_STR(ENOSPC), LIBIE_AQ_STR(ENOSYS), LIBIE_AQ_STR(EMODE), LIBIE_AQ_STR(ENOSEC), LIBIE_AQ_STR(EBADSIG), LIBIE_AQ_STR(ESVN), LIBIE_AQ_STR(EBADMAN), LIBIE_AQ_STR(EBADBUF), #undef LIBIE_AQ_STR "LIBIE_AQ_RC_UNKNOWN", }; #define __LIBIE_AQ_STR_NUM (ARRAY_SIZE(libie_aq_str_arr) - 1) /** * libie_aq_str - get error string based on aq error * @err: admin queue error type * * Return: error string for passed error code */ const char *libie_aq_str(enum libie_aq_err err) { if (err >= ARRAY_SIZE(libie_aq_str_arr) || !libie_aq_str_arr[err]) err = __LIBIE_AQ_STR_NUM; return libie_aq_str_arr[err]; } EXPORT_SYMBOL_NS_GPL(libie_aq_str, "LIBIE_ADMINQ"); MODULE_DESCRIPTION("Intel(R) Ethernet common library - adminq helpers"); MODULE_LICENSE("GPL");