[04/13] net/nfp: drop usage of return error helpers

Message ID 20230410110015.2973660-5-chaoyong.he@corigine.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series Sync the kernel driver logic |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Chaoyong He April 10, 2023, 11 a.m. UTC
  Drop the usage of complex return error helpers. These helpers was used
to return either NULL or -1 from a function while communicating the
error using errno. However erron was seldom checked and the error path
was taken only depending on the functions return value.

Remove the macros and convert the few callers that did look at errno to
communicate different errors using the return value instead. Also update
all the related documentation.

Signed-off-by: Chaoyong He <chaoyong.he@corigine.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@corigine.com>
---
 drivers/net/nfp/nfp_common.c                  |  1 -
 .../net/nfp/nfpcore/nfp-common/nfp_platform.h |  6 --
 drivers/net/nfp/nfpcore/nfp_cpp.h             | 57 +++++++++----------
 drivers/net/nfp/nfpcore/nfp_cppcore.c         | 43 ++++++--------
 drivers/net/nfp/nfpcore/nfp_mutex.c           | 39 ++++++-------
 drivers/net/nfp/nfpcore/nfp_nffw.c            |  4 +-
 drivers/net/nfp/nfpcore/nfp_resource.c        |  2 +-
 7 files changed, 65 insertions(+), 87 deletions(-)
  

Patch

diff --git a/drivers/net/nfp/nfp_common.c b/drivers/net/nfp/nfp_common.c
index 2261d955c8..f300d6d892 100644
--- a/drivers/net/nfp/nfp_common.c
+++ b/drivers/net/nfp/nfp_common.c
@@ -50,7 +50,6 @@ 
 #include <unistd.h>
 #include <stdio.h>
 #include <sys/ioctl.h>
-#include <errno.h>
 
 static const uint32_t nfp_net_link_speed_nfp2rte[] = {
 	[NFP_NET_CFG_STS_LINK_RATE_UNSUPPORTED] = RTE_ETH_SPEED_NUM_NONE,
diff --git a/drivers/net/nfp/nfpcore/nfp-common/nfp_platform.h b/drivers/net/nfp/nfpcore/nfp-common/nfp_platform.h
index 7b64e2d32b..9fa52074f0 100644
--- a/drivers/net/nfp/nfpcore/nfp-common/nfp_platform.h
+++ b/drivers/net/nfp/nfpcore/nfp-common/nfp_platform.h
@@ -26,10 +26,4 @@ 
 #define ARRAY_SIZE(x) RTE_DIM(x)
 #endif
 
-#define NFP_ERRNO(err) (errno = (err), -1)
-#define NFP_ERRNO_RET(err, ret) (errno = (err), (ret))
-#define NFP_NOERR(errv) (errno)
-#define NFP_ERRPTR(err) (errno = (err), NULL)
-#define NFP_PTRERR(errv) (errno)
-
 #endif /* __NFP_PLATFORM_H__ */
diff --git a/drivers/net/nfp/nfpcore/nfp_cpp.h b/drivers/net/nfp/nfpcore/nfp_cpp.h
index a04a68f546..437dcdf942 100644
--- a/drivers/net/nfp/nfpcore/nfp_cpp.h
+++ b/drivers/net/nfp/nfpcore/nfp_cpp.h
@@ -181,7 +181,7 @@  uint32_t __nfp_cpp_model_autodetect(struct nfp_cpp *cpp, uint32_t *model);
  *
  * @param[in]	id	0-based ID for the CPP interface to use
  *
- * @return NFP CPP handle, or NULL on failure (and set errno accordingly).
+ * @return NFP CPP handle, or NULL on failure.
  */
 struct nfp_cpp *nfp_cpp_from_device_name(struct rte_pci_device *dev,
 					 int driver_lock_needed);
@@ -299,7 +299,7 @@  int nfp_cpp_serial(struct nfp_cpp *cpp, const uint8_t **serial);
  * @param[in]	address	Offset into the NFP CPP ID address space
  * @param[in]	size	Size of the area to reserve
  *
- * @return NFP CPP handle, or NULL on failure (and set errno accordingly).
+ * @return NFP CPP handle, or NULL on failure.
  */
 struct nfp_cpp_area *nfp_cpp_area_alloc(struct nfp_cpp *cpp, uint32_t cpp_id,
 					unsigned long long address,
@@ -313,7 +313,7 @@  struct nfp_cpp_area *nfp_cpp_area_alloc(struct nfp_cpp *cpp, uint32_t cpp_id,
  * @param[in]	address	Offset into the NFP CPP ID address space
  * @param[in]	size	Size of the area to reserve
  *
- * @return NFP CPP handle, or NULL on failure (and set errno accordingly).
+ * @return NFP CPP handle, or NULL on failure.
  */
 struct nfp_cpp_area *nfp_cpp_area_alloc_with_name(struct nfp_cpp *cpp,
 						  uint32_t cpp_id,
@@ -332,7 +332,7 @@  void nfp_cpp_area_free(struct nfp_cpp_area *area);
  *
  * @param[in]	area	NFP CPP area handle
  *
- * @return 0 on success, -1 on failure (and set errno accordingly).
+ * @return 0 on success, -1 on failure.
  */
 int nfp_cpp_area_acquire(struct nfp_cpp_area *area);
 
@@ -350,7 +350,7 @@  void nfp_cpp_area_release(struct nfp_cpp_area *area);
  * @param[in]	address	Offset into the NFP CPP ID address space
  * @param[in]	size	Size of the area to reserve
  *
- * @return NFP CPP handle, or NULL on failure (and set errno accordingly).
+ * @return NFP CPP handle, or NULL on failure.
  */
 struct nfp_cpp_area *nfp_cpp_area_alloc_acquire(struct nfp_cpp *cpp,
 						uint32_t cpp_id,
@@ -372,7 +372,7 @@  uint8_t *nfp_cpp_map_area(struct nfp_cpp *cpp, int domain, int target,
  *
  * @param[in]	area	NFP CPP area handle
  *
- * @return Pointer to IO memory, or NULL on failure (and set errno accordingly).
+ * @return Pointer to IO memory, or NULL on failure.
  */
 void *nfp_cpp_area_mapped(struct nfp_cpp_area *area);
 
@@ -385,7 +385,7 @@  void *nfp_cpp_area_mapped(struct nfp_cpp_area *area);
  * @param[in]	buffer	Location of buffer to receive the data
  * @param[in]	length	Length of the data to read
  *
- * @return bytes read on success, -1 on failure (and set errno accordingly).
+ * @return bytes read on success, negative value on failure.
  *
  */
 int nfp_cpp_area_read(struct nfp_cpp_area *area, unsigned long offset,
@@ -400,7 +400,7 @@  int nfp_cpp_area_read(struct nfp_cpp_area *area, unsigned long offset,
  * @param[in]	buffer	Location of buffer that holds the data
  * @param[in]	length	Length of the data to read
  *
- * @return bytes written on success, -1 on failure (and set errno accordingly).
+ * @return bytes written on success, negative value on failure.
  */
 int nfp_cpp_area_write(struct nfp_cpp_area *area, unsigned long offset,
 		       const void *buffer, size_t length);
@@ -424,7 +424,7 @@  void *nfp_cpp_area_iomem(struct nfp_cpp_area *area);
  * @param[in]	offset	Offset into the area
  * @param[in]	size	Size of region to validate
  *
- * @return 0 on success, -1 on failure (and set errno accordingly).
+ * @return 0 on success, negative value on failure.
  */
 int nfp_cpp_area_check_range(struct nfp_cpp_area *area,
 			     unsigned long long offset, unsigned long size);
@@ -454,7 +454,7 @@  const char *nfp_cpp_area_name(struct nfp_cpp_area *cpp_area);
  * @param[in]	kernel_vaddr	Buffer to copy read data to
  * @param[in]	length	Size of the area to reserve
  *
- * @return bytes read on success, -1 on failure (and set errno accordingly).
+ * @return bytes read on success, -1 on failure.
  */
 int nfp_cpp_read(struct nfp_cpp *cpp, uint32_t cpp_id,
 		 unsigned long long address, void *kernel_vaddr, size_t length);
@@ -468,7 +468,7 @@  int nfp_cpp_read(struct nfp_cpp *cpp, uint32_t cpp_id,
  * @param[in]	kernel_vaddr	Buffer to copy write data from
  * @param[in]	length	Size of the area to reserve
  *
- * @return bytes written on success, -1 on failure (and set errno accordingly).
+ * @return bytes written on success, -1 on failure.
  */
 int nfp_cpp_write(struct nfp_cpp *cpp, uint32_t cpp_id,
 		  unsigned long long address, const void *kernel_vaddr,
@@ -484,7 +484,7 @@  int nfp_cpp_write(struct nfp_cpp *cpp, uint32_t cpp_id,
  * @param[in]	value	32-bit value to fill area with
  * @param[in]	length	Size of the area to reserve
  *
- * @return bytes written on success, -1 on failure (and set errno accordingly).
+ * @return bytes written on success, negative value on failure.
  */
 int nfp_cpp_area_fill(struct nfp_cpp_area *area, unsigned long offset,
 		      uint32_t value, size_t length);
@@ -501,7 +501,7 @@  int nfp_cpp_area_fill(struct nfp_cpp_area *area, unsigned long offset,
  *
  * NOTE: offset must be 32-bit aligned.
  *
- * @return 0 on success, or -1 on error (and set errno accordingly).
+ * @return 0 on success, or -1 on error.
  */
 int nfp_cpp_area_readl(struct nfp_cpp_area *area, unsigned long offset,
 		       uint32_t *value);
@@ -518,7 +518,7 @@  int nfp_cpp_area_readl(struct nfp_cpp_area *area, unsigned long offset,
  *
  * NOTE: offset must be 32-bit aligned.
  *
- * @return 0 on success, or -1 on error (and set errno accordingly).
+ * @return 0 on success, or -1 on error.
  */
 int nfp_cpp_area_writel(struct nfp_cpp_area *area, unsigned long offset,
 			uint32_t value);
@@ -535,7 +535,7 @@  int nfp_cpp_area_writel(struct nfp_cpp_area *area, unsigned long offset,
  *
  * NOTE: offset must be 64-bit aligned.
  *
- * @return 0 on success, or -1 on error (and set errno accordingly).
+ * @return 0 on success, or -1 on error.
  */
 int nfp_cpp_area_readq(struct nfp_cpp_area *area, unsigned long offset,
 		       uint64_t *value);
@@ -552,7 +552,7 @@  int nfp_cpp_area_readq(struct nfp_cpp_area *area, unsigned long offset,
  *
  * NOTE: offset must be 64-bit aligned.
  *
- * @return 0 on success, or -1 on error (and set errno accordingly).
+ * @return 0 on success, or -1 on error.
  */
 int nfp_cpp_area_writeq(struct nfp_cpp_area *area, unsigned long offset,
 			uint64_t value);
@@ -564,7 +564,7 @@  int nfp_cpp_area_writeq(struct nfp_cpp_area *area, unsigned long offset,
  * @param xpb_tgt	XPB target and address
  * @param value         value to write
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  */
 int nfp_xpb_writel(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t value);
 
@@ -575,7 +575,7 @@  int nfp_xpb_writel(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t value);
  * @param xpb_tgt	XPB target and address
  * @param value         output value
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  */
 int nfp_xpb_readl(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t *value);
 
@@ -587,7 +587,7 @@  int nfp_xpb_readl(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t *value);
  * @param mask          mask of bits to alter
  * @param value         value to modify
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  */
 int nfp_xpb_writelm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
 		    uint32_t value);
@@ -601,7 +601,7 @@  int nfp_xpb_writelm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
  * @param value         value to monitor for
  * @param timeout_us    maximum number of us to wait (-1 for forever)
  *
- * @return >= 0 on success, or -1 on failure (and set errno accordingly).
+ * @return >= 0 on success, negative value on failure.
  */
 int nfp_xpb_waitlm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
 		   uint32_t value, int timeout_us);
@@ -614,7 +614,7 @@  int nfp_xpb_waitlm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
  * @param address       offset into the NFP CPP ID address space
  * @param value         output value
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  */
 int nfp_cpp_readl(struct nfp_cpp *cpp, uint32_t cpp_id,
 		  unsigned long long address, uint32_t *value);
@@ -627,7 +627,7 @@  int nfp_cpp_readl(struct nfp_cpp *cpp, uint32_t cpp_id,
  * @param address       offset into the NFP CPP ID address space
  * @param value         value to write
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  *
  */
 int nfp_cpp_writel(struct nfp_cpp *cpp, uint32_t cpp_id,
@@ -641,7 +641,7 @@  int nfp_cpp_writel(struct nfp_cpp *cpp, uint32_t cpp_id,
  * @param address       offset into the NFP CPP ID address space
  * @param value         output value
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  */
 int nfp_cpp_readq(struct nfp_cpp *cpp, uint32_t cpp_id,
 		  unsigned long long address, uint64_t *value);
@@ -654,7 +654,7 @@  int nfp_cpp_readq(struct nfp_cpp *cpp, uint32_t cpp_id,
  * @param address       offset into the NFP CPP ID address space
  * @param value         value to write
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  */
 int nfp_cpp_writeq(struct nfp_cpp *cpp, uint32_t cpp_id,
 		   unsigned long long address, uint64_t value);
@@ -675,7 +675,7 @@  int nfp_cpp_writeq(struct nfp_cpp *cpp, uint32_t cpp_id,
  * @param address	Offset into the address space of the NFP CPP target ID
  * @param key_id	Unique 32-bit value for this mutex
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, negative value on failure.
  */
 int nfp_cpp_mutex_init(struct nfp_cpp *cpp, int target,
 		       unsigned long long address, uint32_t key_id);
@@ -756,7 +756,7 @@  void nfp_cpp_mutex_free(struct nfp_cpp_mutex *mutex);
  *
  * @param mutex		NFP CPP Mutex handle
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, negative value on failure.
  */
 int nfp_cpp_mutex_lock(struct nfp_cpp_mutex *mutex);
 
@@ -765,7 +765,7 @@  int nfp_cpp_mutex_lock(struct nfp_cpp_mutex *mutex);
  *
  * @param mutex		NFP CPP Mutex handle
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, negative value on failure.
  */
 int nfp_cpp_mutex_unlock(struct nfp_cpp_mutex *mutex);
 
@@ -773,8 +773,7 @@  int nfp_cpp_mutex_unlock(struct nfp_cpp_mutex *mutex);
  * Attempt to lock a mutex handle, using the NFP MU Atomic Engine
  *
  * @param mutex		NFP CPP Mutex handle
- * @return		0 if the lock succeeded, -1 on failure (and errno set
- *			appropriately).
+ * @return		0 if the lock succeeded, negative value on failure.
  */
 int nfp_cpp_mutex_trylock(struct nfp_cpp_mutex *mutex);
 
diff --git a/drivers/net/nfp/nfpcore/nfp_cppcore.c b/drivers/net/nfp/nfpcore/nfp_cppcore.c
index 1d2468ad7a..97cf16c801 100644
--- a/drivers/net/nfp/nfpcore/nfp_cppcore.c
+++ b/drivers/net/nfp/nfpcore/nfp_cppcore.c
@@ -8,7 +8,6 @@ 
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
-#include <errno.h>
 #include <sys/types.h>
 
 #include <rte_byteorder.h>
@@ -137,14 +136,14 @@  nfp_cpp_area_alloc_with_name(struct nfp_cpp *cpp, uint32_t dest,
 {
 	struct nfp_cpp_area *area;
 	uint64_t tmp64 = (uint64_t)address;
-	int tmp, err;
+	int err;
 
 	if (cpp == NULL)
 		return NULL;
 
 	/* CPP bus uses only a 40-bit address */
 	if ((address + size) > (1ULL << 40))
-		return NFP_ERRPTR(EFAULT);
+		return NULL;
 
 	/* Remap from cpp_island to cpp_target */
 	err = nfp_target_cpp(dest, tmp64, &dest, &tmp64, cpp->imb_cat_table);
@@ -165,22 +164,12 @@  nfp_cpp_area_alloc_with_name(struct nfp_cpp *cpp, uint32_t dest,
 	area->name = ((char *)area) + sizeof(*area) + cpp->op->area_priv_size;
 	memcpy(area->name, name, strlen(name) + 1);
 
-	/*
-	 * Preserve errno around the call to area_init, since most
-	 * implementations will blindly call nfp_target_action_width()for both
-	 * read or write modes, and that will set errno to EINVAL.
-	 */
-	tmp = errno;
-
 	err = cpp->op->area_init(area, dest, address, size);
 	if (err < 0) {
 		free(area);
 		return NULL;
 	}
 
-	/* Restore errno */
-	errno = tmp;
-
 	area->offset = address;
 	area->size = size;
 
@@ -328,7 +317,7 @@  nfp_cpp_area_read(struct nfp_cpp_area *area, unsigned long offset,
 		  void *kernel_vaddr, size_t length)
 {
 	if ((offset + length) > area->size)
-		return NFP_ERRNO(EFAULT);
+		return -EFAULT;
 
 	return area->cpp->op->area_read(area, kernel_vaddr, offset, length);
 }
@@ -352,7 +341,7 @@  nfp_cpp_area_write(struct nfp_cpp_area *area, unsigned long offset,
 		   const void *kernel_vaddr, size_t length)
 {
 	if ((offset + length) > area->size)
-		return NFP_ERRNO(EFAULT);
+		return -EFAULT;
 
 	return area->cpp->op->area_write(area, kernel_vaddr, offset, length);
 }
@@ -373,14 +362,14 @@  nfp_cpp_area_mapped(struct nfp_cpp_area *area)
  * @length: size of address range in bytes
  *
  * Check if address range fits within CPP area.  Return 0 if area fits
- * or -1 on error.
+ * or negative value on error.
  */
 int
 nfp_cpp_area_check_range(struct nfp_cpp_area *area, unsigned long long offset,
 			 unsigned long length)
 {
 	if (((offset + length) > area->size))
-		return NFP_ERRNO(EFAULT);
+		return -EFAULT;
 
 	return 0;
 }
@@ -555,7 +544,7 @@  nfp_cpp_alloc(struct rte_pci_device *dev, int driver_lock_needed)
 	ops = nfp_cpp_transport_operations();
 
 	if (ops == NULL || ops->init == NULL)
-		return NFP_ERRPTR(EINVAL);
+		return NULL;
 
 	cpp = calloc(1, sizeof(*cpp));
 	if (cpp == NULL)
@@ -621,7 +610,7 @@  nfp_cpp_from_device_name(struct rte_pci_device *dev, int driver_lock_needed)
  * @param mask          mask of bits to alter
  * @param value         value to modify
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or -1 on failure.
  */
 int
 nfp_xpb_writelm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
@@ -648,7 +637,7 @@  nfp_xpb_writelm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
  * @param value         value to monitor for
  * @param timeout_us    maximum number of us to wait (-1 for forever)
  *
- * @return >= 0 on success, or -1 on failure (and set errno accordingly).
+ * @return >= 0 on success, or negative value on failure.
  */
 int
 nfp_xpb_waitlm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
@@ -676,7 +665,7 @@  nfp_xpb_waitlm(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t mask,
 	} while (timeout_us >= 0);
 
 	if (timeout_us < 0)
-		err = NFP_ERRNO(ETIMEDOUT);
+		err = -ETIMEDOUT;
 	else
 		err = timeout_us;
 
@@ -756,17 +745,17 @@  nfp_cpp_area_fill(struct nfp_cpp_area *area, unsigned long offset,
 	value64 = ((uint64_t)value << 32) | value;
 
 	if ((offset + length) > area->size)
-		return NFP_ERRNO(EINVAL);
+		return -EINVAL;
 
 	if ((area->offset + offset) & 3)
-		return NFP_ERRNO(EINVAL);
+		return -EINVAL;
 
 	if (((area->offset + offset) & 7) == 4 && length >= 4) {
 		err = nfp_cpp_area_write(area, offset, &value, sizeof(value));
 		if (err < 0)
 			return err;
 		if (err != sizeof(value))
-			return NFP_ERRNO(ENOSPC);
+			return -ENOSPC;
 		offset += sizeof(value);
 		length -= sizeof(value);
 	}
@@ -778,7 +767,7 @@  nfp_cpp_area_fill(struct nfp_cpp_area *area, unsigned long offset,
 		if (err < 0)
 			return err;
 		if (err != sizeof(value64))
-			return NFP_ERRNO(ENOSPC);
+			return -ENOSPC;
 	}
 
 	if ((i + sizeof(value)) <= length) {
@@ -787,7 +776,7 @@  nfp_cpp_area_fill(struct nfp_cpp_area *area, unsigned long offset,
 		if (err < 0)
 			return err;
 		if (err != sizeof(value))
-			return NFP_ERRNO(ENOSPC);
+			return -ENOSPC;
 		i += sizeof(value);
 	}
 
@@ -828,7 +817,7 @@  __nfp_cpp_model_autodetect(struct nfp_cpp *cpp, uint32_t *model)
  * Map an area of IOMEM access.  To undo the effect of this function call
  * @nfp_cpp_area_release_free(*area).
  *
- * Return: Pointer to memory mapped area or ERR_PTR
+ * Return: Pointer to memory mapped area or NULL
  */
 uint8_t *
 nfp_cpp_map_area(struct nfp_cpp *cpp, int domain, int target, uint64_t addr,
diff --git a/drivers/net/nfp/nfpcore/nfp_mutex.c b/drivers/net/nfp/nfpcore/nfp_mutex.c
index 8a4e6a462a..f967a29351 100644
--- a/drivers/net/nfp/nfpcore/nfp_mutex.c
+++ b/drivers/net/nfp/nfpcore/nfp_mutex.c
@@ -3,8 +3,6 @@ 
  * All rights reserved.
  */
 
-#include <errno.h>
-
 #include <malloc.h>
 #include <time.h>
 #include <sched.h>
@@ -41,13 +39,13 @@  _nfp_cpp_mutex_validate(uint32_t model, int *target, unsigned long long address)
 {
 	/* Address must be 64-bit aligned */
 	if (address & 7)
-		return NFP_ERRNO(EINVAL);
+		return -EINVAL;
 
 	if (NFP_CPP_MODEL_IS_6000(model)) {
 		if (*target != NFP_CPP_TARGET_MU)
-			return NFP_ERRNO(EINVAL);
+			return -EINVAL;
 	} else {
-		return NFP_ERRNO(EINVAL);
+		return -EINVAL;
 	}
 
 	return 0;
@@ -71,7 +69,7 @@  _nfp_cpp_mutex_validate(uint32_t model, int *target, unsigned long long address)
  * @param address   Offset into the address space of the NFP CPP target ID
  * @param key       Unique 32-bit value for this mutex
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or negative value on failure.
  */
 int
 nfp_cpp_mutex_init(struct nfp_cpp *cpp, int target, unsigned long long address,
@@ -138,7 +136,7 @@  nfp_cpp_mutex_alloc(struct nfp_cpp *cpp, int target,
 		}
 
 		/* If the key doesn't match... */
-		return NFP_ERRPTR(EEXIST);
+		return NULL;
 	}
 
 	err = _nfp_cpp_mutex_validate(model, &target, address);
@@ -150,11 +148,11 @@  nfp_cpp_mutex_alloc(struct nfp_cpp *cpp, int target,
 		return NULL;
 
 	if (tmp != key)
-		return NFP_ERRPTR(EEXIST);
+		return NULL;
 
 	mutex = calloc(sizeof(*mutex), 1);
 	if (mutex == NULL)
-		return NFP_ERRPTR(ENOMEM);
+		return NULL;
 
 	mutex->cpp = cpp;
 	mutex->target = target;
@@ -203,7 +201,7 @@  nfp_cpp_mutex_owner(struct nfp_cpp_mutex *mutex)
 		return err;
 
 	if (key != mutex->key)
-		return NFP_ERRNO(EPERM);
+		return -EPERM;
 
 	if (MUTEX_IS_LOCKED(value) == 0)
 		return 0;
@@ -253,7 +251,7 @@  nfp_cpp_mutex_free(struct nfp_cpp_mutex *mutex)
  *
  * @param mutex     NFP CPP Mutex handle
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or negative value on failure.
  */
 int
 nfp_cpp_mutex_lock(struct nfp_cpp_mutex *mutex)
@@ -262,8 +260,8 @@  nfp_cpp_mutex_lock(struct nfp_cpp_mutex *mutex)
 	time_t warn_at = time(NULL) + 15;
 
 	while ((err = nfp_cpp_mutex_trylock(mutex)) != 0) {
-		/* If errno != EBUSY, then the lock was damaged */
-		if (err < 0 && errno != EBUSY)
+		/* If err != -EBUSY, then the lock was damaged */
+		if (err < 0 && err != -EBUSY)
 			return err;
 		if (time(NULL) >= warn_at) {
 			PMD_DRV_LOG(ERR, "Warning: waiting for NFP mutex usage:%u depth:%hd] target:%d addr:%llx key:%08x]",
@@ -281,7 +279,7 @@  nfp_cpp_mutex_lock(struct nfp_cpp_mutex *mutex)
  *
  * @param mutex     NFP CPP Mutex handle
  *
- * @return 0 on success, or -1 on failure (and set errno accordingly).
+ * @return 0 on success, or negative value on failure.
  */
 int
 nfp_cpp_mutex_unlock(struct nfp_cpp_mutex *mutex)
@@ -307,12 +305,12 @@  nfp_cpp_mutex_unlock(struct nfp_cpp_mutex *mutex)
 		goto exit;
 
 	if (key != mutex->key) {
-		err = NFP_ERRNO(EPERM);
+		err = -EPERM;
 		goto exit;
 	}
 
 	if (value != MUTEX_LOCKED(interface)) {
-		err = NFP_ERRNO(EACCES);
+		err = -EACCES;
 		goto exit;
 	}
 
@@ -335,8 +333,7 @@  nfp_cpp_mutex_unlock(struct nfp_cpp_mutex *mutex)
  *      0x....000f      - Locked
  *
  * @param mutex     NFP CPP Mutex handle
- * @return      0 if the lock succeeded, -1 on failure (and errno set
- *		appropriately).
+ * @return      0 if the lock succeeded, negative value on failure.
  */
 int
 nfp_cpp_mutex_trylock(struct nfp_cpp_mutex *mutex)
@@ -350,7 +347,7 @@  nfp_cpp_mutex_trylock(struct nfp_cpp_mutex *mutex)
 
 	if (mutex->depth > 0) {
 		if (mutex->depth == MUTEX_DEPTH_MAX)
-			return NFP_ERRNO(E2BIG);
+			return -E2BIG;
 
 		mutex->depth++;
 		return 0;
@@ -362,7 +359,7 @@  nfp_cpp_mutex_trylock(struct nfp_cpp_mutex *mutex)
 		goto exit;
 
 	if (key != mutex->key) {
-		err = NFP_ERRNO(EPERM);
+		err = -EPERM;
 		goto exit;
 	}
 
@@ -415,7 +412,7 @@  nfp_cpp_mutex_trylock(struct nfp_cpp_mutex *mutex)
 		goto exit;
 	}
 
-	err = NFP_ERRNO(MUTEX_IS_LOCKED(tmp) ? EBUSY : EINVAL);
+	err = MUTEX_IS_LOCKED(tmp) ? -EBUSY : -EINVAL;
 
 exit:
 	return err;
diff --git a/drivers/net/nfp/nfpcore/nfp_nffw.c b/drivers/net/nfp/nfpcore/nfp_nffw.c
index ccc5227d4d..bead4f3341 100644
--- a/drivers/net/nfp/nfpcore/nfp_nffw.c
+++ b/drivers/net/nfp/nfpcore/nfp_nffw.c
@@ -112,7 +112,7 @@  nffw_res_fwinfos(struct nfp_nffw_info_data *fwinf, struct nffw_fwinfo **arr)
  * nfp_nffw_info_open() - Acquire the lock on the NFFW table
  * @cpp:	NFP CPP handle
  *
- * Return: 0, or -ERRNO
+ * Return: nffw info pointer, or NULL on failure
  */
 struct nfp_nffw_info *
 nfp_nffw_info_open(struct nfp_cpp *cpp)
@@ -164,7 +164,7 @@  nfp_nffw_info_open(struct nfp_cpp *cpp)
  * nfp_nffw_info_close() - Release the lock on the NFFW table
  * @state:	NFP FW info state
  *
- * Return: 0, or -ERRNO
+ * Return: void
  */
 void
 nfp_nffw_info_close(struct nfp_nffw_info *state)
diff --git a/drivers/net/nfp/nfpcore/nfp_resource.c b/drivers/net/nfp/nfpcore/nfp_resource.c
index 892ccf73c4..351bc623ed 100644
--- a/drivers/net/nfp/nfpcore/nfp_resource.c
+++ b/drivers/net/nfp/nfpcore/nfp_resource.c
@@ -145,7 +145,7 @@  nfp_resource_try_acquire(struct nfp_cpp *cpp, struct nfp_resource *res,
  *
  * NOTE: This function locks the acquired resource
  *
- * Return: NFP Resource handle, or ERR_PTR()
+ * Return: NFP Resource handle, or NULL
  */
 struct nfp_resource *
 nfp_resource_acquire(struct nfp_cpp *cpp, const char *name)