123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- /*
- * Copyright (c) 2014-2020 The Linux Foundation. All rights reserved.
- * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and/or distribute this software for
- * any purpose with or without fee is hereby granted, provided that the
- * above copyright notice and this permission notice appear in all
- * copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
- * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
- * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
- */
- /**
- * DOC: qdf_status
- * QCA driver framework (QDF) status codes
- * Basic status codes/definitions used by QDF
- */
- #ifndef __QDF_STATUS_H
- #define __QDF_STATUS_H
- /**
- * typedef QDF_STATUS - QDF error codes
- * @QDF_STATUS_SUCCESS: success
- * @QDF_STATUS_E_RESOURCES: system resource(other than memory) not available
- * @QDF_STATUS_E_NOMEM: not enough memory
- * @QDF_STATUS_E_AGAIN: try again
- * @QDF_STATUS_E_INVAL: invalid request
- * @QDF_STATUS_E_FAULT: system fault
- * @QDF_STATUS_E_ALREADY: another request already in progress
- * @QDF_STATUS_E_BADMSG: bad message
- * @QDF_STATUS_E_BUSY: device or resource busy
- * @QDF_STATUS_E_CANCELED: request cancelled
- * @QDF_STATUS_E_ABORTED: request aborted
- * @QDF_STATUS_E_NOSUPPORT: request not supported
- * @QDF_STATUS_E_PERM: operation not permitted
- * @QDF_STATUS_E_EMPTY: empty condition
- * @QDF_STATUS_E_EXISTS: existence failure
- * @QDF_STATUS_E_TIMEOUT: operation timeout
- * @QDF_STATUS_E_FAILURE: unknown reason do not use unless nothing else applies
- * @QDF_STATUS_E_NOENT: No such file or directory
- * @QDF_STATUS_E_E2BIG: Arg list too long
- * @QDF_STATUS_E_NOSPC: no space left on device
- * @QDF_STATUS_E_ADDRNOTAVAIL: Cannot assign requested address
- * @QDF_STATUS_E_ENXIO: No such device or address
- * @QDF_STATUS_E_NETDOWN: network is down
- * @QDF_STATUS_E_IO: I/O Error
- * @QDF_STATUS_E_PENDING: pending status
- * @QDF_STATUS_E_NETRESET: Network dropped connection because of reset
- * @QDF_STATUS_E_SIG: Exit due to received SIGINT
- * @QDF_STATUS_E_PROTO: protocol error
- * @QDF_STATUS_NOT_INITIALIZED: resource not initialized
- * @QDF_STATUS_E_NULL_VALUE: request is null
- * @QDF_STATUS_HEARTBEAT_TMOUT: heartbeat timeout error
- * @QDF_STATUS_NTH_BEACON_DELIVERY: Nth beacon delivery
- * @QDF_STATUS_CSR_WRONG_STATE: csr in wrong state
- * @QDF_STATUS_FT_PREAUTH_KEY_SUCCESS: ft preauth key success
- * @QDF_STATUS_FT_PREAUTH_KEY_FAILED: ft preauth key failed
- * @QDF_STATUS_CMD_NOT_QUEUED: command not queued
- * @QDF_STATUS_FW_MSG_TIMEDOUT: target message timeout
- * @QDF_STATUS_E_USB_ERROR: USB transaction error
- * @QDF_STATUS_MAXCOMP_FAIL: Component id is more than MAX UMAC components
- * @QDF_STATUS_COMP_DISABLED: UMAC Component is disabled
- * @QDF_STATUS_COMP_ASYNC: UMAC component runs in asynchronous communication
- * @QDF_STATUS_CRYPTO_PN_ERROR: PN ERROR in received frame
- * @QDF_STATUS_CRYPTO_MIC_FAILURE: MIC failure in received frame
- * @QDF_STATUS_CRYPTO_ENCRYPT_FAILED: encryption failed
- * @QDF_STATUS_CRYPTO_DECRYPT_FAILED: decryption failed
- * @QDF_STATUS_E_RANGE: result/parameter/operation was out of range
- * @QDF_STATUS_E_GRO_DROP: return code for GRO drop
- * @QDF_STATUS_E_RESTART: return error code for wait_event_interruptible
- * @QDF_STATUS_FILT_REQ_ERROR: return error code cee filter rule request
- * @QDF_STATUS_TDLS_MLO_SYNC: tdls mlo sync
- * @QDF_STATUS_CRYPTO_INVALID_KEYLEN: return code for invalid key length
- * @QDF_STATUS_CRYPTO_INVALID_KEYID: return code for invalid key index
- * @QDF_STATUS_CRYPTO_INVALID_CIPHERTYPE: return code for invalid cipher type
- * @QDF_STATUS_INVALID_ASSOCID: return code for invalid assoc id
- * @QDF_STATUS_MAX_VHT_STREAMS: Max VHT streams
- * @QDF_STATUS_NO_OVERLAP_LEGACY_RATES: no overlap legacy rate with assoc-req
- * @QDF_STATUS_MAX: not a real value just a place holder for max
- */
- typedef enum {
- QDF_STATUS_SUCCESS,
- QDF_STATUS_E_RESOURCES,
- QDF_STATUS_E_NOMEM,
- QDF_STATUS_E_AGAIN,
- QDF_STATUS_E_INVAL,
- QDF_STATUS_E_FAULT,
- QDF_STATUS_E_ALREADY,
- QDF_STATUS_E_BADMSG,
- QDF_STATUS_E_BUSY,
- QDF_STATUS_E_CANCELED,
- QDF_STATUS_E_ABORTED,
- QDF_STATUS_E_NOSUPPORT,
- QDF_STATUS_E_PERM,
- QDF_STATUS_E_EMPTY,
- QDF_STATUS_E_EXISTS,
- QDF_STATUS_E_TIMEOUT,
- QDF_STATUS_E_FAILURE,
- QDF_STATUS_E_NOENT,
- QDF_STATUS_E_E2BIG,
- QDF_STATUS_E_NOSPC,
- QDF_STATUS_E_ADDRNOTAVAIL,
- QDF_STATUS_E_ENXIO,
- QDF_STATUS_E_NETDOWN,
- QDF_STATUS_E_IO,
- QDF_STATUS_E_PENDING,
- QDF_STATUS_E_NETRESET,
- QDF_STATUS_E_SIG,
- QDF_STATUS_E_PROTO,
- QDF_STATUS_NOT_INITIALIZED,
- QDF_STATUS_E_NULL_VALUE,
- QDF_STATUS_HEARTBEAT_TMOUT,
- QDF_STATUS_NTH_BEACON_DELIVERY,
- QDF_STATUS_CSR_WRONG_STATE,
- QDF_STATUS_FT_PREAUTH_KEY_SUCCESS,
- QDF_STATUS_FT_PREAUTH_KEY_FAILED,
- QDF_STATUS_CMD_NOT_QUEUED,
- QDF_STATUS_FW_MSG_TIMEDOUT,
- QDF_STATUS_E_USB_ERROR,
- QDF_STATUS_MAXCOMP_FAIL,
- QDF_STATUS_COMP_DISABLED,
- QDF_STATUS_COMP_ASYNC,
- QDF_STATUS_CRYPTO_PN_ERROR,
- QDF_STATUS_CRYPTO_MIC_FAILURE,
- QDF_STATUS_CRYPTO_ENCRYPT_FAILED,
- QDF_STATUS_CRYPTO_DECRYPT_FAILED,
- QDF_STATUS_E_DEFRAG_ERROR,
- QDF_STATUS_E_RANGE,
- QDF_STATUS_E_GRO_DROP,
- QDF_STATUS_E_RESTART,
- QDF_STATUS_FILT_REQ_ERROR,
- QDF_STATUS_TDLS_MLO_SYNC,
- QDF_STATUS_CRYPTO_INVALID_KEYLEN,
- QDF_STATUS_CRYPTO_INVALID_KEYID,
- QDF_STATUS_CRYPTO_INVALID_CIPHERTYPE,
- QDF_STATUS_INVALID_ASSOCID,
- QDF_STATUS_MAX_VHT_STREAMS,
- QDF_STATUS_NO_OVERLAP_LEGACY_RATES,
- QDF_STATUS_MAX
- } QDF_STATUS;
- #define QDF_IS_STATUS_SUCCESS(status) (QDF_STATUS_SUCCESS == (status))
- #define QDF_IS_STATUS_ERROR(status) (QDF_STATUS_SUCCESS != (status))
- /**
- * qdf_status_to_os_return() - map a QDF_STATUS into an OS specific return code
- * @status: QDF_STATUS to map
- *
- * Return: an OS specific error code
- */
- int qdf_status_to_os_return(QDF_STATUS status);
- /**
- * qdf_status_from_os_return() - map an OS specific return code to a QDF_STATUS
- * @rc: the input return code to map
- *
- * Return: QDF_STATUS
- */
- QDF_STATUS qdf_status_from_os_return(int rc);
- #endif /* __QDF_STATUS_H */
|