qcacmn: Add qdf_status_from_os_return()
It is sometimes useful to reverse map an errno into a QDF_STATUS. For this purpose, introduce qdf_status_from_os_return(), the logical inverse operation of qdf_status_to_os_return(). Change-Id: I053f43867ef603c2654eca64fe76c7bd313e14e4 CRs-Fixed: 2242664
This commit is contained in:
@@ -128,6 +128,17 @@ static inline int qdf_status_to_os_return(QDF_STATUS status)
|
|||||||
return __qdf_status_to_os_return(status);
|
return __qdf_status_to_os_return(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* qdf_status_from_os_return() - map OS specific return code to a QDF_STATUS
|
||||||
|
* @rc: the input return code to map
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS
|
||||||
|
*/
|
||||||
|
static inline QDF_STATUS qdf_status_from_os_return(int rc)
|
||||||
|
{
|
||||||
|
return __qdf_status_from_os_return(rc);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* qdf_set_bit() - set bit in address
|
* qdf_set_bit() - set bit in address
|
||||||
* @nr: bit number to be set
|
* @nr: bit number to be set
|
||||||
|
@@ -150,6 +150,56 @@ static inline int __qdf_status_to_os_return(QDF_STATUS status)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline QDF_STATUS __qdf_status_from_os_return(int rc)
|
||||||
|
{
|
||||||
|
switch (rc) {
|
||||||
|
case 0:
|
||||||
|
return QDF_STATUS_SUCCESS;
|
||||||
|
case -ENOMEM:
|
||||||
|
return QDF_STATUS_E_NOMEM;
|
||||||
|
case -EAGAIN:
|
||||||
|
return QDF_STATUS_E_AGAIN;
|
||||||
|
case -EINVAL:
|
||||||
|
return QDF_STATUS_E_INVAL;
|
||||||
|
case -EFAULT:
|
||||||
|
return QDF_STATUS_E_FAULT;
|
||||||
|
case -EALREADY:
|
||||||
|
return QDF_STATUS_E_ALREADY;
|
||||||
|
case -EBADMSG:
|
||||||
|
return QDF_STATUS_E_BADMSG;
|
||||||
|
case -EBUSY:
|
||||||
|
return QDF_STATUS_E_BUSY;
|
||||||
|
case -ECANCELED:
|
||||||
|
return QDF_STATUS_E_CANCELED;
|
||||||
|
case -ECONNABORTED:
|
||||||
|
return QDF_STATUS_E_ABORTED;
|
||||||
|
case -EPERM:
|
||||||
|
return QDF_STATUS_E_PERM;
|
||||||
|
case -EEXIST:
|
||||||
|
return QDF_STATUS_E_EXISTS;
|
||||||
|
case -ENOENT:
|
||||||
|
return QDF_STATUS_E_NOENT;
|
||||||
|
case -E2BIG:
|
||||||
|
return QDF_STATUS_E_E2BIG;
|
||||||
|
case -ENOSPC:
|
||||||
|
return QDF_STATUS_E_NOSPC;
|
||||||
|
case -EADDRNOTAVAIL:
|
||||||
|
return QDF_STATUS_E_ADDRNOTAVAIL;
|
||||||
|
case -ENXIO:
|
||||||
|
return QDF_STATUS_E_ENXIO;
|
||||||
|
case -ENETDOWN:
|
||||||
|
return QDF_STATUS_E_NETDOWN;
|
||||||
|
case -EIO:
|
||||||
|
return QDF_STATUS_E_IO;
|
||||||
|
case -ENETRESET:
|
||||||
|
return QDF_STATUS_E_NETRESET;
|
||||||
|
case -EINPROGRESS:
|
||||||
|
return QDF_STATUS_E_PENDING;
|
||||||
|
default:
|
||||||
|
return QDF_STATUS_E_PERM;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* __qdf_set_bit() - set bit in address
|
* __qdf_set_bit() - set bit in address
|
||||||
* @nr: bit number to be set
|
* @nr: bit number to be set
|
||||||
|
Reference in New Issue
Block a user