1 /* 2 * Copyright (c) 2014-2018 The Linux Foundation. All rights reserved. 3 * 4 * Permission to use, copy, modify, and/or distribute this software for 5 * any purpose with or without fee is hereby granted, provided that the 6 * above copyright notice and this permission notice appear in all 7 * copies. 8 * 9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL 10 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 11 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE 12 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 13 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 14 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 15 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 16 * PERFORMANCE OF THIS SOFTWARE. 17 */ 18 19 /** 20 * DOC: qdf_status 21 * QCA driver framework (QDF) status codes 22 * Basic status codes/definitions used by QDF 23 */ 24 25 #if !defined(__QDF_STATUS_H) 26 #define __QDF_STATUS_H 27 28 /** 29 * typedef QDF_STATUS - QDF error codes 30 * @QDF_STATUS_SUCCESS: success 31 * @QDF_STATUS_E_RESOURCES: system resource(other than memory) not available 32 * @QDF_STATUS_E_NOMEM: not enough memory 33 * @QDF_STATUS_E_AGAIN: try again 34 * @QDF_STATUS_E_INVAL: invalid request 35 * @QDF_STATUS_E_FAULT: system fault 36 * @QDF_STATUS_E_ALREADY: another request already in progress 37 * @QDF_STATUS_E_BADMSG: bad message 38 * @QDF_STATUS_E_BUSY: device or resource busy 39 * @QDF_STATUS_E_CANCELED: request cancelled 40 * @QDF_STATUS_E_ABORTED: request aborted 41 * @QDF_STATUS_E_NOSUPPORT: request not supported 42 * @QDF_STATUS_E_PERM: operation not permitted 43 * @QDF_STATUS_E_EMPTY: empty condition 44 * @QDF_STATUS_E_EXISTS: existence failure 45 * @QDF_STATUS_E_TIMEOUT: operation timeout 46 * @QDF_STATUS_E_FAILURE: unknown reason do not use unless nothign else applies 47 * @QDF_STATUS_E_NOENT: No such file or directory 48 * @QDF_STATUS_E_E2BIG: Arg list too long 49 * @QDF_STATUS_E_NOSPC: no space left on device 50 * @QDF_STATUS_E_ADDRNOTAVAIL: Cannot assign requested address 51 * @QDF_STATUS_E_ENXIO: No such device or address 52 * @QDF_STATUS_E_NETDOWN: network is down 53 * @QDF_STATUS_E_IO: I/O Error 54 * @QDF_STATUS_E_PENDING: pending status 55 * @QDF_STATUS_E_NETRESET: Network dropped connection because of reset 56 * @QDF_STATUS_E_SIG: Exit due to received SIGINT 57 * @QDF_STATUS_E_PROTO: protocol error 58 * @QDF_STATUS_NOT_INITIALIZED: resource not initialized 59 * @QDF_STATUS_E_NULL_VALUE: request is null 60 * @QDF_STATUS_PMC_PENDING: request pendign in pmc 61 * @QDF_STATUS_PMC_DISABLED: pmc is disabled 62 * @QDF_STATUS_PMC_NOT_NOW: pmc not ready now 63 * @QDF_STATUS_PMC_AC_POWER: pmc ac power 64 * @QDF_STATUS_PMC_SYS_ERROR: pmc system error 65 * @QDF_STATUS_HEARTBEAT_TMOUT: hearbeat timeout error 66 * @QDF_STATUS_NTH_BEACON_DELIVERY: Nth beacon delivery 67 * @QDF_STATUS_CSR_WRONG_STATE: csr in wrong state 68 * @QDF_STATUS_FT_PREAUTH_KEY_SUCCESS: ft preauth key success 69 * @QDF_STATUS_FT_PREAUTH_KEY_FAILED: ft preauth key failed 70 * @QDF_STATUS_CMD_NOT_QUEUED: command not queued 71 * @QDF_STATUS_FW_MSG_TIMEDOUT: target message timeout 72 * @QDF_STATUS_E_USB_ERROR: USB transaction error 73 * @QDF_STATUS_MAXCOMP_FAIL: Component id is more than MAX UMAC components 74 * @QDF_STATUS_COMP_DISABLED: UMAC Component is disabled 75 * @QDF_STATUS_COMP_ASYNC: UMAC component runs in asynchronous communication 76 * @QDF_STATUS_CRYPTO_PN_ERROR: PN ERROR in received frame 77 * @QDF_STATUS_CRYPTO_MIC_FAILURE: MIC failure in received frame 78 * @QDF_STATUS_CRYPTO_ENCRYPT_FAILED: encryption failed 79 * @QDF_STATUS_CRYPTO_DECRYPT_FAILED: decryption failed 80 * @QDF_STATUS_E_RANGE: result/parameter/operation was out of range 81 * @QDF_STATUS_MAX: not a realy value just a place holder for max 82 */ 83 typedef enum { 84 QDF_STATUS_SUCCESS, 85 QDF_STATUS_E_RESOURCES, 86 QDF_STATUS_E_NOMEM, 87 QDF_STATUS_E_AGAIN, 88 QDF_STATUS_E_INVAL, 89 QDF_STATUS_E_FAULT, 90 QDF_STATUS_E_ALREADY, 91 QDF_STATUS_E_BADMSG, 92 QDF_STATUS_E_BUSY, 93 QDF_STATUS_E_CANCELED, 94 QDF_STATUS_E_ABORTED, 95 QDF_STATUS_E_NOSUPPORT, 96 QDF_STATUS_E_PERM, 97 QDF_STATUS_E_EMPTY, 98 QDF_STATUS_E_EXISTS, 99 QDF_STATUS_E_TIMEOUT, 100 QDF_STATUS_E_FAILURE, 101 QDF_STATUS_E_NOENT, 102 QDF_STATUS_E_E2BIG, 103 QDF_STATUS_E_NOSPC, 104 QDF_STATUS_E_ADDRNOTAVAIL, 105 QDF_STATUS_E_ENXIO, 106 QDF_STATUS_E_NETDOWN, 107 QDF_STATUS_E_IO, 108 QDF_STATUS_E_PENDING, 109 QDF_STATUS_E_NETRESET, 110 QDF_STATUS_E_SIG, 111 QDF_STATUS_E_PROTO, 112 QDF_STATUS_NOT_INITIALIZED, 113 QDF_STATUS_E_NULL_VALUE, 114 QDF_STATUS_PMC_PENDING, 115 QDF_STATUS_PMC_DISABLED, 116 QDF_STATUS_PMC_NOT_NOW, 117 QDF_STATUS_PMC_AC_POWER, 118 QDF_STATUS_PMC_SYS_ERROR, 119 QDF_STATUS_HEARTBEAT_TMOUT, 120 QDF_STATUS_NTH_BEACON_DELIVERY, 121 QDF_STATUS_CSR_WRONG_STATE, 122 QDF_STATUS_FT_PREAUTH_KEY_SUCCESS, 123 QDF_STATUS_FT_PREAUTH_KEY_FAILED, 124 QDF_STATUS_CMD_NOT_QUEUED, 125 QDF_STATUS_FW_MSG_TIMEDOUT, 126 QDF_STATUS_E_USB_ERROR, 127 QDF_STATUS_MAXCOMP_FAIL, 128 QDF_STATUS_COMP_DISABLED, 129 QDF_STATUS_COMP_ASYNC, 130 QDF_STATUS_CRYPTO_PN_ERROR, 131 QDF_STATUS_CRYPTO_MIC_FAILURE, 132 QDF_STATUS_CRYPTO_ENCRYPT_FAILED, 133 QDF_STATUS_CRYPTO_DECRYPT_FAILED, 134 QDF_STATUS_E_DEFRAG_ERROR, 135 QDF_STATUS_E_RANGE, 136 QDF_STATUS_MAX 137 } QDF_STATUS; 138 139 #define QDF_IS_STATUS_SUCCESS(status) (QDF_STATUS_SUCCESS == (status)) 140 #define QDF_IS_STATUS_ERROR(status) (QDF_STATUS_SUCCESS != (status)) 141 142 #endif /* if !defined __QDF_STATUS_H */ 143