DPDK patches and discussions
 help / color / mirror / Atom feed
From: Chaoyong He <chaoyong.he@corigine.com>
To: dev@dpdk.org
Cc: oss-drivers@corigine.com, niklas.soderlund@corigine.com,
	Chaoyong He <chaoyong.he@corigine.com>
Subject: [PATCH v2 04/27] net/nfp: remove the unneeded logic
Date: Wed, 30 Aug 2023 10:14:34 +0800	[thread overview]
Message-ID: <20230830021457.2064750-5-chaoyong.he@corigine.com> (raw)
In-Reply-To: <20230830021457.2064750-1-chaoyong.he@corigine.com>

Remove the unneeded logic.

Signed-off-by: Chaoyong He <chaoyong.he@corigine.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@corigine.com>
---
 drivers/net/nfp/nfpcore/nfp_cpp.h          | 107 ----
 drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c |  12 -
 drivers/net/nfp/nfpcore/nfp_cppcore.c      | 162 ------
 drivers/net/nfp/nfpcore/nfp_mutex.c        |  48 --
 drivers/net/nfp/nfpcore/nfp_nsp_eth.c      |  24 -
 drivers/net/nfp/nfpcore/nfp_target.h       | 567 ---------------------
 6 files changed, 920 deletions(-)

diff --git a/drivers/net/nfp/nfpcore/nfp_cpp.h b/drivers/net/nfp/nfpcore/nfp_cpp.h
index 782272a3f4..139752f85a 100644
--- a/drivers/net/nfp/nfpcore/nfp_cpp.h
+++ b/drivers/net/nfp/nfpcore/nfp_cpp.h
@@ -96,7 +96,6 @@ struct nfp_cpp_operations {
 
 	void *(*area_iomem)(struct nfp_cpp_area *area);
 
-	void *(*area_mapped)(struct nfp_cpp_area *area);
 	/*
 	 * Perform a read from a NFP CPP area
 	 * Serialized
@@ -457,16 +456,6 @@ void nfp_cpp_area_release_free(struct nfp_cpp_area *area);
 uint8_t *nfp_cpp_map_area(struct nfp_cpp *cpp, uint32_t cpp_id,
 		uint64_t addr, uint32_t size, struct nfp_cpp_area **area);
 
-/*
- * Return an IO pointer to the beginning of the NFP CPP area handle. The area
- * must be acquired with 'nfp_cpp_area_acquire()' before calling this operation.
- *
- * @param[in]	area	NFP CPP area handle
- *
- * @return Pointer to IO memory, or NULL on failure.
- */
-void *nfp_cpp_area_mapped(struct nfp_cpp_area *area);
-
 /*
  * Read from a NFP CPP area handle into a buffer. The area must be acquired with
  * 'nfp_cpp_area_acquire()' before calling this operation.
@@ -508,18 +497,6 @@ int nfp_cpp_area_write(struct nfp_cpp_area *area, uint32_t offset,
  */
 void *nfp_cpp_area_iomem(struct nfp_cpp_area *area);
 
-/*
- * Verify that IO can be performed on an offset in an area
- *
- * @param[in]	area	NFP CPP area handle
- * @param[in]	offset	Offset into the area
- * @param[in]	size	Size of region to validate
- *
- * @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);
-
 /*
  * Get the NFP CPP handle that is the parent of a NFP CPP area handle
  *
@@ -564,20 +541,6 @@ int nfp_cpp_read(struct nfp_cpp *cpp, uint32_t cpp_id,
 int nfp_cpp_write(struct nfp_cpp *cpp, uint32_t cpp_id,
 		uint64_t address, const void *kernel_vaddr, size_t length);
 
-
-/*
- * Fill a NFP CPP area handle and offset with a value
- *
- * @param[in]	area	NFP CPP area handle
- * @param[in]	offset	Offset into the NFP CPP ID address space
- * @param[in]	value	32-bit value to fill area with
- * @param[in]	length	Size of the area to reserve
- *
- * @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);
-
 /*
  * Read a single 32-bit value from a NFP CPP area handle
  *
@@ -668,33 +631,6 @@ int nfp_xpb_writel(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t value);
  */
 int nfp_xpb_readl(struct nfp_cpp *cpp, uint32_t xpb_tgt, uint32_t *value);
 
-/*
- * Modify bits of a 32-bit value from the XPB bus
- *
- * @param cpp           NFP CPP device handle
- * @param xpb_tgt       XPB target and address
- * @param mask          mask of bits to alter
- * @param value         value to modify
- *
- * @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);
-
-/*
- * Modify bits of a 32-bit value from the XPB bus
- *
- * @param cpp           NFP CPP device handle
- * @param xpb_tgt       XPB target and address
- * @param mask          mask of bits to alter
- * @param value         value to monitor for
- * @param timeout_us    maximum number of us to wait (-1 for forever)
- *
- * @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);
-
 /*
  * Read a 32-bit word from a NFP CPP ID
  *
@@ -789,49 +725,6 @@ int nfp_cpp_mutex_init(struct nfp_cpp *cpp, int target,
 struct nfp_cpp_mutex *nfp_cpp_mutex_alloc(struct nfp_cpp *cpp, int target,
 		uint64_t address, uint32_t key_id);
 
-/*
- * Get the NFP CPP handle the mutex was created with
- *
- * @param   mutex   NFP mutex handle
- * @return          NFP CPP handle
- */
-struct nfp_cpp *nfp_cpp_mutex_cpp(struct nfp_cpp_mutex *mutex);
-
-/*
- * Get the mutex key
- *
- * @param   mutex   NFP mutex handle
- * @return          Mutex key
- */
-uint32_t nfp_cpp_mutex_key(struct nfp_cpp_mutex *mutex);
-
-/*
- * Get the mutex owner
- *
- * @param   mutex   NFP mutex handle
- * @return          Interface ID of the mutex owner
- *
- * NOTE: This is for debug purposes ONLY - the owner may change at any time,
- * unless it has been locked by this NFP CPP handle.
- */
-uint16_t nfp_cpp_mutex_owner(struct nfp_cpp_mutex *mutex);
-
-/*
- * Get the mutex target
- *
- * @param   mutex   NFP mutex handle
- * @return          Mutex CPP target (ie NFP_CPP_TARGET_MU)
- */
-int nfp_cpp_mutex_target(struct nfp_cpp_mutex *mutex);
-
-/*
- * Get the mutex address
- *
- * @param   mutex   NFP mutex handle
- * @return          Mutex CPP address
- */
-uint64_t nfp_cpp_mutex_address(struct nfp_cpp_mutex *mutex);
-
 /*
  * Free a mutex handle - does not alter the lock state
  *
diff --git a/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c b/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c
index 881f21bfd0..ec14ec45dc 100644
--- a/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c
+++ b/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c
@@ -471,17 +471,6 @@ nfp6000_area_acquire(struct nfp_cpp_area *area)
 	return 0;
 }
 
-static void *
-nfp6000_area_mapped(struct nfp_cpp_area *area)
-{
-	struct nfp6000_area_priv *area_priv = nfp_cpp_area_priv(area);
-
-	if (area_priv->iomem == NULL)
-		return NULL;
-
-	return area_priv->iomem;
-}
-
 static void
 nfp6000_area_release(struct nfp_cpp_area *area)
 {
@@ -829,7 +818,6 @@ static const struct nfp_cpp_operations nfp6000_pcie_ops = {
 	.area_init = nfp6000_area_init,
 	.area_acquire = nfp6000_area_acquire,
 	.area_release = nfp6000_area_release,
-	.area_mapped = nfp6000_area_mapped,
 	.area_read = nfp6000_area_read,
 	.area_write = nfp6000_area_write,
 	.area_iomem = nfp6000_area_iomem,
diff --git a/drivers/net/nfp/nfpcore/nfp_cppcore.c b/drivers/net/nfp/nfpcore/nfp_cppcore.c
index 7b32721d60..f885e7d8ff 100644
--- a/drivers/net/nfp/nfpcore/nfp_cppcore.c
+++ b/drivers/net/nfp/nfpcore/nfp_cppcore.c
@@ -388,35 +388,6 @@ nfp_cpp_area_write(struct nfp_cpp_area *area,
 	return area->cpp->op->area_write(area, kernel_vaddr, offset, length);
 }
 
-void *
-nfp_cpp_area_mapped(struct nfp_cpp_area *area)
-{
-	if (area->cpp->op->area_mapped)
-		return area->cpp->op->area_mapped(area);
-	return NULL;
-}
-
-/*
- * nfp_cpp_area_check_range - check if address range fits in CPP area
- *
- * @area:   CPP area handle
- * @offset: offset into CPP area
- * @length: size of address range in bytes
- *
- * Check if address range fits within CPP area.  Return 0 if area fits
- * 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 -EFAULT;
-
-	return 0;
-}
-
 /*
  * Return the correct CPP address, and fixup xpb_addr as needed,
  * based upon NFP model.
@@ -671,82 +642,6 @@ nfp_cpp_from_device_name(struct rte_pci_device *dev,
 	return nfp_cpp_alloc(dev, driver_lock_needed);
 }
 
-/*
- * Modify bits of a 32-bit value from the XPB bus
- *
- * @param cpp           NFP CPP device handle
- * @param xpb_tgt       XPB target and address
- * @param mask          mask of bits to alter
- * @param value         value to modify
- *
- * @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)
-{
-	int err;
-	uint32_t tmp;
-
-	err = nfp_xpb_readl(cpp, xpb_tgt, &tmp);
-	if (err < 0)
-		return err;
-
-	tmp &= ~mask;
-	tmp |= (mask & value);
-	return nfp_xpb_writel(cpp, xpb_tgt, tmp);
-}
-
-/*
- * Modify bits of a 32-bit value from the XPB bus
- *
- * @param cpp           NFP CPP device handle
- * @param xpb_tgt       XPB target and address
- * @param mask          mask of bits to alter
- * @param value         value to monitor for
- * @param timeout_us    maximum number of us to wait (-1 for forever)
- *
- * @return >= 0 on success, or 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)
-{
-	uint32_t tmp;
-	int err;
-
-	do {
-		err = nfp_xpb_readl(cpp, xpb_tgt, &tmp);
-		if (err < 0)
-			goto exit;
-
-		if ((tmp & mask) == (value & mask)) {
-			if (timeout_us < 0)
-				timeout_us = 0;
-			break;
-		}
-
-		if (timeout_us < 0)
-			continue;
-
-		timeout_us -= 100;
-		usleep(100);
-	} while (timeout_us >= 0);
-
-	if (timeout_us < 0)
-		err = -ETIMEDOUT;
-	else
-		err = timeout_us;
-
-exit:
-	return err;
-}
-
 /*
  * nfp_cpp_read - read from CPP target
  * @cpp:        CPP handle
@@ -805,63 +700,6 @@ nfp_cpp_write(struct nfp_cpp *cpp,
 	return err;
 }
 
-/*
- * nfp_cpp_area_fill - fill a CPP area with a value
- * @area:       CPP area
- * @offset:     offset into CPP area
- * @value:      value to fill with
- * @length:     length of area to fill
- */
-int
-nfp_cpp_area_fill(struct nfp_cpp_area *area,
-		unsigned long offset,
-		uint32_t value,
-		size_t length)
-{
-	int err;
-	size_t i;
-	uint64_t value64;
-
-	value = rte_cpu_to_le_32(value);
-	value64 = ((uint64_t)value << 32) | value;
-
-	if ((offset + length) > area->size)
-		return -EINVAL;
-
-	if ((area->offset + offset) & 3)
-		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 -ENOSPC;
-		offset += sizeof(value);
-		length -= sizeof(value);
-	}
-
-	for (i = 0; (i + sizeof(value)) < length; i += sizeof(value64)) {
-		err = nfp_cpp_area_write(area, offset + i, &value64,
-				sizeof(value64));
-		if (err < 0)
-			return err;
-		if (err != sizeof(value64))
-			return -ENOSPC;
-	}
-
-	if ((i + sizeof(value)) <= length) {
-		err = nfp_cpp_area_write(area, offset + i, &value, sizeof(value));
-		if (err < 0)
-			return err;
-		if (err != sizeof(value))
-			return -ENOSPC;
-		i += sizeof(value);
-	}
-
-	return (int)i;
-}
-
 /*
  * NOTE: This code should not use nfp_xpb_* functions,
  * as those are model-specific
diff --git a/drivers/net/nfp/nfpcore/nfp_mutex.c b/drivers/net/nfp/nfpcore/nfp_mutex.c
index 697361da4d..4d26e6f052 100644
--- a/drivers/net/nfp/nfpcore/nfp_mutex.c
+++ b/drivers/net/nfp/nfpcore/nfp_mutex.c
@@ -178,54 +178,6 @@ nfp_cpp_mutex_alloc(struct nfp_cpp *cpp,
 	return mutex;
 }
 
-struct nfp_cpp *
-nfp_cpp_mutex_cpp(struct nfp_cpp_mutex *mutex)
-{
-	return mutex->cpp;
-}
-
-uint32_t
-nfp_cpp_mutex_key(struct nfp_cpp_mutex *mutex)
-{
-	return mutex->key;
-}
-
-uint16_t
-nfp_cpp_mutex_owner(struct nfp_cpp_mutex *mutex)
-{
-	uint32_t mur = NFP_CPP_ID(mutex->target, 3, 0);	/* atomic_read */
-	uint32_t value, key;
-	int err;
-
-	err = nfp_cpp_readl(mutex->cpp, mur, mutex->address, &value);
-	if (err < 0)
-		return err;
-
-	err = nfp_cpp_readl(mutex->cpp, mur, mutex->address + 4, &key);
-	if (err < 0)
-		return err;
-
-	if (key != mutex->key)
-		return -EPERM;
-
-	if (MUTEX_IS_LOCKED(value) == 0)
-		return 0;
-
-	return MUTEX_INTERFACE(value);
-}
-
-int
-nfp_cpp_mutex_target(struct nfp_cpp_mutex *mutex)
-{
-	return mutex->target;
-}
-
-uint64_t
-nfp_cpp_mutex_address(struct nfp_cpp_mutex *mutex)
-{
-	return mutex->address;
-}
-
 /*
  * Free a mutex handle - does not alter the lock state
  *
diff --git a/drivers/net/nfp/nfpcore/nfp_nsp_eth.c b/drivers/net/nfp/nfpcore/nfp_nsp_eth.c
index 9213023690..899fcd7441 100644
--- a/drivers/net/nfp/nfpcore/nfp_nsp_eth.c
+++ b/drivers/net/nfp/nfpcore/nfp_nsp_eth.c
@@ -11,30 +11,6 @@
 #include "nfp_nsp.h"
 #include "nfp6000/nfp6000.h"
 
-#define GENMASK_ULL(h, l) \
-	(((~0ULL) - (1ULL << (l)) + 1) & \
-	 (~0ULL >> (64 - 1 - (h))))
-
-#define __bf_shf(x) (__builtin_ffsll(x) - 1)
-
-#define FIELD_GET(_mask, _reg)						\
-	(__extension__ ({ \
-		typeof(_mask) _x = (_mask); \
-		(typeof(_x))(((_reg) & (_x)) >> __bf_shf(_x));	\
-	}))
-
-#define FIELD_FIT(_mask, _val)						\
-	(__extension__ ({ \
-		typeof(_mask) _x = (_mask); \
-		!((((typeof(_x))_val) << __bf_shf(_x)) & ~(_x)); \
-	}))
-
-#define FIELD_PREP(_mask, _val)						\
-	(__extension__ ({ \
-		typeof(_mask) _x = (_mask); \
-		((typeof(_x))(_val) << __bf_shf(_x)) & (_x);	\
-	}))
-
 #define NSP_ETH_NBI_PORT_COUNT		24
 #define NSP_ETH_MAX_COUNT		(2 * NSP_ETH_NBI_PORT_COUNT)
 #define NSP_ETH_TABLE_SIZE		(NSP_ETH_MAX_COUNT *		\
diff --git a/drivers/net/nfp/nfpcore/nfp_target.h b/drivers/net/nfp/nfpcore/nfp_target.h
index 03908a894f..195e599d31 100644
--- a/drivers/net/nfp/nfpcore/nfp_target.h
+++ b/drivers/net/nfp/nfpcore/nfp_target.h
@@ -6,571 +6,4 @@
 #ifndef NFP_TARGET_H
 #define NFP_TARGET_H
 
-#include "nfp_cpp.h"
-
-#define P32 1
-#define P64 2
-
-#define PUSHPULL(_pull, _push) (((_pull) << 4) | ((_push) << 0))
-
-#ifndef NFP_ERRNO
-#include <errno.h>
-#define NFP_ERRNO(x)    (errno = (x), -1)
-#endif
-
-static inline int
-pushpull_width(int pp)
-{
-	pp &= 0xf;
-
-	if (pp == 0)
-		return NFP_ERRNO(EINVAL);
-	return (2 << pp);
-}
-
-#define PUSH_WIDTH(_pushpull)      pushpull_width((_pushpull) >> 0)
-#define PULL_WIDTH(_pushpull)      pushpull_width((_pushpull) >> 4)
-
-static inline int
-target_rw(uint32_t cpp_id, int pp, int start, int len)
-{
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-
-	if (island && (island < start || island > (start + len)))
-		return NFP_ERRNO(EINVAL);
-
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 0):
-		return PUSHPULL(0, pp);
-	case NFP_CPP_ID(0, 1, 0):
-		return PUSHPULL(pp, 0);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 0):
-		return PUSHPULL(pp, pp);
-	default:
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp6000_nbi_dma(uint32_t cpp_id)
-{
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 0): /* ReadNbiDma */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 1, 0): /* WriteNbiDma */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 0):
-		return PUSHPULL(P64, P64);
-	default:
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp6000_nbi_stats(uint32_t cpp_id)
-{
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 0): /* ReadNbiStats */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 1, 0): /* WriteNbiStats */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 0):
-		return PUSHPULL(P64, P64);
-	default:
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp6000_nbi_tm(uint32_t cpp_id)
-{
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 0): /* ReadNbiTM */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 1, 0):  /* WriteNbiTM */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 0):
-		return PUSHPULL(P64, P64);
-	default:
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp6000_nbi_ppc(uint32_t cpp_id)
-{
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 0): /* ReadNbiPreclassifier */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 1, 0): /* WriteNbiPreclassifier */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 0):
-		return PUSHPULL(P64, P64);
-	default:
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp6000_nbi(uint32_t cpp_id, uint64_t address)
-{
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-	uint64_t rel_addr = address & 0x3fFFFF;
-
-	if (island && (island < 8 || island > 9))
-		return NFP_ERRNO(EINVAL);
-
-	if (rel_addr < (1 << 20))
-		return nfp6000_nbi_dma(cpp_id);
-	if (rel_addr < (2 << 20))
-		return nfp6000_nbi_stats(cpp_id);
-	if (rel_addr < (3 << 20))
-		return nfp6000_nbi_tm(cpp_id);
-	return nfp6000_nbi_ppc(cpp_id);
-}
-
-/*
- * This structure ONLY includes items that can be done with a read or write of
- * 32-bit or 64-bit words. All others are not listed.
- */
-static inline int
-nfp6000_mu_common(uint32_t cpp_id)
-{
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 0): /* read_be/write_be */
-		return PUSHPULL(P64, P64);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 1): /* read_le/write_le */
-		return PUSHPULL(P64, P64);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 2): /* {read/write}_swap_be */
-		return PUSHPULL(P64, P64);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 3): /* {read/write}_swap_le */
-		return PUSHPULL(P64, P64);
-	case NFP_CPP_ID(0, 0, 0): /* read_be */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 0, 1): /* read_le */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 0, 2): /* read_swap_be */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 0, 3): /* read_swap_le */
-		return PUSHPULL(0, P64);
-	case NFP_CPP_ID(0, 1, 0): /* write_be */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, 1, 1): /* write_le */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, 1, 2): /* write_swap_be */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, 1, 3): /* write_swap_le */
-		return PUSHPULL(P64, 0);
-	case NFP_CPP_ID(0, 3, 0): /* atomic_read */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 3, 2): /* mask_compare_write */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 4, 0): /* atomic_write */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 4, 2): /* atomic_write_imm */
-		return PUSHPULL(0, 0);
-	case NFP_CPP_ID(0, 4, 3): /* swap_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 5, 0): /* set */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 5, 3): /* test_set_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 6, 0): /* clr */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 6, 3): /* test_clr_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 7, 0): /* add */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 7, 3): /* test_add_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 8, 0): /* addsat */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 8, 3): /* test_subsat_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 9, 0): /* sub */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 9, 3): /* test_sub_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 10, 0): /* subsat */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 10, 3): /* test_subsat_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 13, 0): /* microq128_get */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 13, 1): /* microq128_pop */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 13, 2): /* microq128_put */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 15, 0): /* xor */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 15, 3): /* test_xor_imm */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 28, 0): /* read32_be */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 28, 1): /* read32_le */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 28, 2): /* read32_swap_be */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 28, 3): /* read32_swap_le */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 31, 0): /* write32_be */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 31, 1): /* write32_le */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 31, 2): /* write32_swap_be */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 31, 3): /* write32_swap_le */
-		return PUSHPULL(P32, 0);
-	default:
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp6000_mu_ctm(uint32_t cpp_id)
-{
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 16, 1): /* packet_read_packet_status */
-		return PUSHPULL(0, P32);
-	default:
-		return nfp6000_mu_common(cpp_id);
-	}
-}
-
-static inline int
-nfp6000_mu_emu(uint32_t cpp_id)
-{
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 18, 0): /* read_queue */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 18, 1): /* read_queue_ring */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 18, 2): /* write_queue */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 18, 3): /* write_queue_ring */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 20, 2): /* journal */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 21, 0): /* get */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 21, 1): /* get_eop */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 21, 2): /* get_freely */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 22, 0): /* pop */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 22, 1): /* pop_eop */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 22, 2): /* pop_freely */
-		return PUSHPULL(0, P32);
-	default:
-		return nfp6000_mu_common(cpp_id);
-	}
-}
-
-static inline int
-nfp6000_mu_imu(uint32_t cpp_id)
-{
-	return nfp6000_mu_common(cpp_id);
-}
-
-static inline int
-nfp6000_mu(uint32_t cpp_id, uint64_t address)
-{
-	int pp;
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-
-	if (island == 0) {
-		if (address < 0x2000000000ULL)
-			pp = nfp6000_mu_ctm(cpp_id);
-		else if (address < 0x8000000000ULL)
-			pp = nfp6000_mu_emu(cpp_id);
-		else if (address < 0x9800000000ULL)
-			pp = nfp6000_mu_ctm(cpp_id);
-		else if (address < 0x9C00000000ULL)
-			pp = nfp6000_mu_emu(cpp_id);
-		else if (address < 0xA000000000ULL)
-			pp = nfp6000_mu_imu(cpp_id);
-		else
-			pp = nfp6000_mu_ctm(cpp_id);
-	} else if (island >= 24 && island <= 27) {
-		pp = nfp6000_mu_emu(cpp_id);
-	} else if (island >= 28 && island <= 31) {
-		pp = nfp6000_mu_imu(cpp_id);
-	} else if (island == 1 ||
-		   (island >= 4 && island <= 7) ||
-		   (island >= 12 && island <= 13) ||
-		   (island >= 32 && island <= 47) ||
-		   (island >= 48 && island <= 51)) {
-		pp = nfp6000_mu_ctm(cpp_id);
-	} else {
-		pp = NFP_ERRNO(EINVAL);
-	}
-
-	return pp;
-}
-
-static inline int
-nfp6000_ila(uint32_t cpp_id)
-{
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-
-	if (island && (island < 48 || island > 51))
-		return NFP_ERRNO(EINVAL);
-
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 1): /* read_check_error */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 2, 0): /* read_int */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 3, 0): /* write_int */
-		return PUSHPULL(P32, 0);
-	default:
-		return target_rw(cpp_id, P32, 48, 4);
-	}
-}
-
-static inline int
-nfp6000_pci(uint32_t cpp_id)
-{
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-
-	if (island && (island < 4 || island > 7))
-		return NFP_ERRNO(EINVAL);
-
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 2, 0):
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 3, 0):
-		return PUSHPULL(P32, 0);
-	default:
-		return target_rw(cpp_id, P32, 4, 4);
-	}
-}
-
-static inline int
-nfp6000_crypto(uint32_t cpp_id)
-{
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-
-	if (island && (island < 12 || island > 15))
-		return NFP_ERRNO(EINVAL);
-
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 2, 0):
-		return PUSHPULL(P64, 0);
-	default:
-		return target_rw(cpp_id, P64, 12, 4);
-	}
-}
-
-static inline int
-nfp6000_cap_xpb(uint32_t cpp_id)
-{
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-
-	if (island > 63)
-		return NFP_ERRNO(EINVAL);
-
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 1): /* RingGet */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 0, 2): /* Interthread Signal */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 1, 1): /* RingPut */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 1, 2): /* CTNNWr */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 2, 0): /* ReflectRd, signal none */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 2, 1): /* ReflectRd, signal self */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 2, 2): /* ReflectRd, signal remote */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 2, 3): /* ReflectRd, signal both */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 3, 0): /* ReflectWr, signal none */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 3, 1): /* ReflectWr, signal self */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 3, 2): /* ReflectWr, signal remote */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 3, 3): /* ReflectWr, signal both */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, NFP_CPP_ACTION_RW, 1):
-		return PUSHPULL(P32, P32);
-	default:
-		return target_rw(cpp_id, P32, 1, 63);
-	}
-}
-
-static inline int
-nfp6000_cls(uint32_t cpp_id)
-{
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_id);
-
-	if (island > 63)
-		return NFP_ERRNO(EINVAL);
-
-	switch (cpp_id & NFP_CPP_ID(0, ~0, ~0)) {
-	case NFP_CPP_ID(0, 0, 3): /* xor */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 2, 0): /* set */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 2, 1): /* clr */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 4, 0): /* add */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 4, 1): /* add64 */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 6, 0): /* sub */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 6, 1): /* sub64 */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 6, 2): /* subsat */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 8, 2): /* hash_mask */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 8, 3): /* hash_clear */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 9, 0): /* ring_get */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 9, 1): /* ring_pop */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 9, 2): /* ring_get_freely */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 9, 3): /* ring_pop_freely */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 10, 0): /* ring_put */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 10, 2): /* ring_journal */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 14, 0): /* reflect_write_sig_local */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 15, 1):  /* reflect_read_sig_local */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 17, 2): /* statistic */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 24, 0): /* ring_read */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 24, 1): /* ring_write */
-		return PUSHPULL(P32, 0);
-	case NFP_CPP_ID(0, 25, 0): /* ring_workq_add_thread */
-		return PUSHPULL(0, P32);
-	case NFP_CPP_ID(0, 25, 1): /* ring_workq_add_work */
-		return PUSHPULL(P32, 0);
-	default:
-		return target_rw(cpp_id, P32, 0, 64);
-	}
-}
-
-static inline int
-nfp6000_target_pushpull(uint32_t cpp_id, uint64_t address)
-{
-	switch (NFP_CPP_ID_TARGET_of(cpp_id)) {
-	case NFP6000_CPPTGT_NBI:
-		return nfp6000_nbi(cpp_id, address);
-	case NFP6000_CPPTGT_VQDR:
-		return target_rw(cpp_id, P32, 24, 4);
-	case NFP6000_CPPTGT_ILA:
-		return nfp6000_ila(cpp_id);
-	case NFP6000_CPPTGT_MU:
-		return nfp6000_mu(cpp_id, address);
-	case NFP6000_CPPTGT_PCIE:
-		return nfp6000_pci(cpp_id);
-	case NFP6000_CPPTGT_ARM:
-		if (address < 0x10000)
-			return target_rw(cpp_id, P64, 1, 1);
-		else
-			return target_rw(cpp_id, P32, 1, 1);
-	case NFP6000_CPPTGT_CRYPTO:
-		return nfp6000_crypto(cpp_id);
-	case NFP6000_CPPTGT_CTXPB:
-		return nfp6000_cap_xpb(cpp_id);
-	case NFP6000_CPPTGT_CLS:
-		return nfp6000_cls(cpp_id);
-	case 0:
-		return target_rw(cpp_id, P32, 4, 4);
-	default:
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp_target_pushpull_width(int pp, int write_not_read)
-{
-	if (pp < 0)
-		return pp;
-
-	if (write_not_read)
-		return PULL_WIDTH(pp);
-	else
-		return PUSH_WIDTH(pp);
-}
-
-static inline int
-nfp6000_target_action_width(uint32_t cpp_id, uint64_t address,
-			    int write_not_read)
-{
-	int pp;
-
-	pp = nfp6000_target_pushpull(cpp_id, address);
-
-	return nfp_target_pushpull_width(pp, write_not_read);
-}
-
-static inline int
-nfp_target_action_width(uint32_t model, uint32_t cpp_id, uint64_t address,
-			int write_not_read)
-{
-	if (NFP_CPP_MODEL_IS_6000(model)) {
-		return nfp6000_target_action_width(cpp_id, address,
-						   write_not_read);
-	} else {
-		return NFP_ERRNO(EINVAL);
-	}
-}
-
-static inline int
-nfp_target_cpp(uint32_t cpp_island_id, uint64_t cpp_island_address,
-	       uint32_t *cpp_target_id, uint64_t *cpp_target_address,
-	       const uint32_t *imb_table)
-{
-	int err;
-	uint8_t island = NFP_CPP_ID_ISLAND_of(cpp_island_id);
-	uint8_t target = NFP_CPP_ID_TARGET_of(cpp_island_id);
-	uint32_t imb;
-
-	if (target >= 16)
-		return NFP_ERRNO(EINVAL);
-
-	if (island == 0) {
-		/* Already translated */
-		*cpp_target_id = cpp_island_id;
-		*cpp_target_address = cpp_island_address;
-		return 0;
-	}
-
-	if (imb_table == NULL) {
-		/* CPP + Island only allowed on systems with IMB tables */
-		return NFP_ERRNO(EINVAL);
-	}
-
-	imb = imb_table[target];
-
-	*cpp_target_address = cpp_island_address;
-	err = _nfp6000_cppat_addr_encode(cpp_target_address, island, target,
-					 ((imb >> 13) & 7),
-					 ((imb >> 12) & 1),
-					 ((imb >> 6) & 0x3f),
-					 ((imb >> 0) & 0x3f));
-	if (err == 0) {
-		*cpp_target_id =
-		    NFP_CPP_ID(target, NFP_CPP_ID_ACTION_of(cpp_island_id),
-			       NFP_CPP_ID_TOKEN_of(cpp_island_id));
-	}
-
-	return err;
-}
-
 #endif /* NFP_TARGET_H */
-- 
2.39.1


  parent reply	other threads:[~2023-08-30  2:16 UTC|newest]

Thread overview: 159+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-24 11:09 [PATCH 00/27] refact the nfpcore module Chaoyong He
2023-08-24 11:09 ` [PATCH 01/27] net/nfp: explicitly compare to null and 0 Chaoyong He
2023-08-24 11:09 ` [PATCH 02/27] net/nfp: unify the indent coding style Chaoyong He
2023-08-24 11:09 ` [PATCH 03/27] net/nfp: unify the type of integer variable Chaoyong He
2023-08-24 11:09 ` [PATCH 04/27] net/nfp: remove the unneeded logic Chaoyong He
2023-08-24 11:09 ` [PATCH 05/27] net/nfp: standard the local variable coding style Chaoyong He
2023-08-24 11:09 ` [PATCH 06/27] net/nfp: adjust the log statement Chaoyong He
2023-08-24 11:09 ` [PATCH 07/27] net/nfp: standard the comment style Chaoyong He
2023-08-24 11:09 ` [PATCH 08/27] net/nfp: using the DPDK memory management API Chaoyong He
2023-08-24 11:09 ` [PATCH 09/27] net/nfp: standard the blank character Chaoyong He
2023-08-24 11:09 ` [PATCH 10/27] net/nfp: unify the guide line of header file Chaoyong He
2023-08-24 11:09 ` [PATCH 11/27] net/nfp: rename some parameter and variable Chaoyong He
2023-08-24 11:09 ` [PATCH 12/27] net/nfp: refact the hwinfo module Chaoyong He
2023-08-24 11:09 ` [PATCH 13/27] net/nfp: refact the nffw module Chaoyong He
2023-08-24 11:09 ` [PATCH 14/27] net/nfp: refact the mip module Chaoyong He
2023-08-24 11:09 ` [PATCH 15/27] net/nfp: refact the rtsym module Chaoyong He
2023-08-24 11:09 ` [PATCH 16/27] net/nfp: refact the resource module Chaoyong He
2023-08-24 11:09 ` [PATCH 17/27] net/nfp: refact the target module Chaoyong He
2023-08-24 11:09 ` [PATCH 18/27] net/nfp: add a new header file Chaoyong He
2023-08-24 11:09 ` [PATCH 19/27] net/nfp: refact the nsp module Chaoyong He
2023-08-24 11:09 ` [PATCH 20/27] net/nfp: refact the mutex module Chaoyong He
2023-08-24 11:09 ` [PATCH 21/27] net/nfp: rename data field to sync with kernel driver Chaoyong He
2023-08-24 11:09 ` [PATCH 22/27] net/nfp: add the dev module Chaoyong He
2023-08-24 11:09 ` [PATCH 23/27] net/nfp: add header file for PCIe module Chaoyong He
2023-08-24 11:09 ` [PATCH 24/27] net/nfp: refact the cppcore module Chaoyong He
2023-08-24 11:09 ` [PATCH 25/27] net/nfp: refact the PCIe module Chaoyong He
2023-08-24 11:09 ` [PATCH 26/27] net/nfp: refact the cppcore and " Chaoyong He
2023-08-24 11:09 ` [PATCH 27/27] net/nfp: extend the usage of nfp BAR from 8 to 24 Chaoyong He
2023-08-30  2:14 ` [PATCH v2 00/27] refact the nfpcore module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 01/27] net/nfp: explicitly compare to null and 0 Chaoyong He
2023-08-30  2:14   ` [PATCH v2 02/27] net/nfp: unify the indent coding style Chaoyong He
2023-08-30  2:14   ` [PATCH v2 03/27] net/nfp: unify the type of integer variable Chaoyong He
2023-08-30  2:14   ` Chaoyong He [this message]
2023-08-30  2:14   ` [PATCH v2 05/27] net/nfp: standard the local variable coding style Chaoyong He
2023-08-30  2:14   ` [PATCH v2 06/27] net/nfp: adjust the log statement Chaoyong He
2023-08-30  2:14   ` [PATCH v2 07/27] net/nfp: standard the comment style Chaoyong He
2023-08-30  2:14   ` [PATCH v2 08/27] net/nfp: using the DPDK memory management API Chaoyong He
2023-08-30  2:14   ` [PATCH v2 09/27] net/nfp: standard the blank character Chaoyong He
2023-08-30  2:14   ` [PATCH v2 10/27] net/nfp: unify the guide line of header file Chaoyong He
2023-08-30  2:14   ` [PATCH v2 11/27] net/nfp: rename some parameter and variable Chaoyong He
2023-08-30  2:14   ` [PATCH v2 12/27] net/nfp: refact the hwinfo module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 13/27] net/nfp: refact the nffw module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 14/27] net/nfp: refact the mip module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 15/27] net/nfp: refact the rtsym module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 16/27] net/nfp: refact the resource module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 17/27] net/nfp: refact the target module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 18/27] net/nfp: add a new header file Chaoyong He
2023-08-30  2:14   ` [PATCH v2 19/27] net/nfp: refact the nsp module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 20/27] net/nfp: refact the mutex module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 21/27] net/nfp: rename data field to sync with kernel driver Chaoyong He
2023-08-30  2:14   ` [PATCH v2 22/27] net/nfp: add the dev module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 23/27] net/nfp: add header file for PCIe module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 24/27] net/nfp: refact the cppcore module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 25/27] net/nfp: refact the PCIe module Chaoyong He
2023-08-30  2:14   ` [PATCH v2 26/27] net/nfp: refact the cppcore and " Chaoyong He
2023-08-30  2:14   ` [PATCH v2 27/27] net/nfp: extend the usage of nfp BAR from 8 to 24 Chaoyong He
2023-09-15  9:15   ` [PATCH v3 00/27] refact the nfpcore module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 01/27] net/nfp: explicitly compare to null and 0 Chaoyong He
2023-09-15  9:15     ` [PATCH v3 02/27] net/nfp: unify the indent coding style Chaoyong He
2023-09-15 13:40       ` Ferruh Yigit
2023-09-18  1:25         ` Chaoyong He
2023-09-18  2:22           ` Stephen Hemminger
2023-09-15  9:15     ` [PATCH v3 03/27] net/nfp: unify the type of integer variable Chaoyong He
2023-09-15 13:42       ` Ferruh Yigit
2023-09-18  1:26         ` Chaoyong He
2023-09-15  9:15     ` [PATCH v3 04/27] net/nfp: remove the unneeded logic Chaoyong He
2023-09-15  9:15     ` [PATCH v3 05/27] net/nfp: standard the local variable coding style Chaoyong He
2023-09-15  9:15     ` [PATCH v3 06/27] net/nfp: adjust the log statement Chaoyong He
2023-09-15  9:15     ` [PATCH v3 07/27] net/nfp: standard the comment style Chaoyong He
2023-09-15 13:44       ` Ferruh Yigit
2023-09-18  1:28         ` Chaoyong He
2023-09-18  2:08         ` Chaoyong He
2023-09-15  9:15     ` [PATCH v3 08/27] net/nfp: using the DPDK memory management API Chaoyong He
2023-09-15 13:45       ` Ferruh Yigit
2023-09-18  1:29         ` Chaoyong He
2023-09-15  9:15     ` [PATCH v3 09/27] net/nfp: standard the blank character Chaoyong He
2023-09-15  9:15     ` [PATCH v3 10/27] net/nfp: unify the guide line of header file Chaoyong He
2023-09-15  9:15     ` [PATCH v3 11/27] net/nfp: rename some parameter and variable Chaoyong He
2023-09-15  9:15     ` [PATCH v3 12/27] net/nfp: refact the hwinfo module Chaoyong He
2023-09-15 13:46       ` Ferruh Yigit
2023-09-18  1:39         ` Chaoyong He
2023-09-18 11:01           ` Ferruh Yigit
2023-09-15  9:15     ` [PATCH v3 13/27] net/nfp: refact the nffw module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 14/27] net/nfp: refact the mip module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 15/27] net/nfp: refact the rtsym module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 16/27] net/nfp: refact the resource module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 17/27] net/nfp: refact the target module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 18/27] net/nfp: add a new header file Chaoyong He
2023-09-15  9:15     ` [PATCH v3 19/27] net/nfp: refact the nsp module Chaoyong He
2023-09-18 12:31       ` Ferruh Yigit
2023-09-18 12:36         ` Ferruh Yigit
2023-09-15  9:15     ` [PATCH v3 20/27] net/nfp: refact the mutex module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 21/27] net/nfp: rename data field to sync with kernel driver Chaoyong He
2023-09-15  9:15     ` [PATCH v3 22/27] net/nfp: add the dev module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 23/27] net/nfp: add header file for PCIe module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 24/27] net/nfp: refact the cppcore module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 25/27] net/nfp: refact the PCIe module Chaoyong He
2023-09-15  9:15     ` [PATCH v3 26/27] net/nfp: refact the cppcore and " Chaoyong He
2023-09-15  9:15     ` [PATCH v3 27/27] net/nfp: extend the usage of nfp BAR from 8 to 24 Chaoyong He
2023-09-15 13:49     ` [PATCH v3 00/27] refact the nfpcore module Ferruh Yigit
2023-09-18  2:45     ` [PATCH v4 00/26] " Chaoyong He
2023-09-18  2:45       ` [PATCH v4 01/26] net/nfp: explicitly compare to null and 0 Chaoyong He
2023-09-18  2:45       ` [PATCH v4 02/26] net/nfp: unify the indent coding style Chaoyong He
2023-09-18 11:53         ` Niklas Söderlund
2023-09-18  2:45       ` [PATCH v4 03/26] net/nfp: unify the type of integer variable Chaoyong He
2023-09-18  2:45       ` [PATCH v4 04/26] net/nfp: remove the unneeded logic Chaoyong He
2023-09-18  2:45       ` [PATCH v4 05/26] net/nfp: standard the local variable coding style Chaoyong He
2023-09-18  2:45       ` [PATCH v4 06/26] net/nfp: adjust the log statement Chaoyong He
2023-09-18  2:45       ` [PATCH v4 07/26] net/nfp: standard the comment style Chaoyong He
2023-09-18  2:45       ` [PATCH v4 08/26] net/nfp: standard the blank character Chaoyong He
2023-09-18  2:45       ` [PATCH v4 09/26] net/nfp: unify the guide line of header file Chaoyong He
2023-09-18  2:45       ` [PATCH v4 10/26] net/nfp: rename some parameter and variable Chaoyong He
2023-09-18  2:45       ` [PATCH v4 11/26] net/nfp: refact the hwinfo module Chaoyong He
2023-09-18  2:45       ` [PATCH v4 12/26] net/nfp: refact the nffw module Chaoyong He
2023-09-18  2:45       ` [PATCH v4 13/26] net/nfp: refact the mip module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 14/26] net/nfp: refact the rtsym module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 15/26] net/nfp: refact the resource module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 16/26] net/nfp: refact the target module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 17/26] net/nfp: add a new header file Chaoyong He
2023-09-18  2:46       ` [PATCH v4 18/26] net/nfp: refact the nsp module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 19/26] net/nfp: refact the mutex module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 20/26] net/nfp: rename data field to sync with kernel driver Chaoyong He
2023-09-18  2:46       ` [PATCH v4 21/26] net/nfp: add the dev module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 22/26] net/nfp: add header file for PCIe module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 23/26] net/nfp: refact the cppcore module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 24/26] net/nfp: refact the PCIe module Chaoyong He
2023-09-18  2:46       ` [PATCH v4 25/26] net/nfp: refact the cppcore and " Chaoyong He
2023-09-18  2:46       ` [PATCH v4 26/26] net/nfp: extend the usage of nfp BAR from 8 to 24 Chaoyong He
2023-09-19  9:54       ` [PATCH v5 00/26] refact the nfpcore module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 01/26] net/nfp: explicitly compare to null and 0 Chaoyong He
2023-09-19  9:54         ` [PATCH v5 02/26] net/nfp: unify the indent coding style Chaoyong He
2023-09-19  9:54         ` [PATCH v5 03/26] net/nfp: unify the type of integer variable Chaoyong He
2023-09-19  9:54         ` [PATCH v5 04/26] net/nfp: remove the unneeded logic Chaoyong He
2023-09-19  9:54         ` [PATCH v5 05/26] net/nfp: standard the local variable coding style Chaoyong He
2023-09-19  9:54         ` [PATCH v5 06/26] net/nfp: adjust the log statement Chaoyong He
2023-09-19  9:54         ` [PATCH v5 07/26] net/nfp: standard the comment style Chaoyong He
2023-09-19  9:54         ` [PATCH v5 08/26] net/nfp: standard the blank character Chaoyong He
2023-09-19  9:54         ` [PATCH v5 09/26] net/nfp: unify the guide line of header file Chaoyong He
2023-09-19  9:54         ` [PATCH v5 10/26] net/nfp: rename some parameter and variable Chaoyong He
2023-09-19  9:54         ` [PATCH v5 11/26] net/nfp: refact the hwinfo module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 12/26] net/nfp: refact the nffw module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 13/26] net/nfp: refact the mip module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 14/26] net/nfp: refact the rtsym module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 15/26] net/nfp: refact the resource module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 16/26] net/nfp: refact the target module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 17/26] net/nfp: add a new header file Chaoyong He
2023-09-19  9:54         ` [PATCH v5 18/26] net/nfp: refact the nsp module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 19/26] net/nfp: refact the mutex module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 20/26] net/nfp: rename data field to sync with kernel driver Chaoyong He
2023-09-19  9:54         ` [PATCH v5 21/26] net/nfp: add the dev module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 22/26] net/nfp: add header file for PCIe module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 23/26] net/nfp: refact the cppcore module Chaoyong He
2023-09-19  9:54         ` [PATCH v5 24/26] net/nfp: refact the PCIe module Chaoyong He
2023-09-19 21:18         ` [PATCH v5 00/26] refact the nfpcore module Ferruh Yigit
2023-09-20  1:55           ` Chaoyong He
2023-09-20  8:54             ` Ferruh Yigit
2023-09-20  9:59         ` Ferruh Yigit
2023-09-20  1:28       ` [PATCH v5 25/26] net/nfp: refact the cppcore and PCIe module Chaoyong He
2023-09-20  1:29       ` [PATCH v5 26/26] net/nfp: extend the usage of nfp BAR from 8 to 24 Chaoyong He

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230830021457.2064750-5-chaoyong.he@corigine.com \
    --to=chaoyong.he@corigine.com \
    --cc=dev@dpdk.org \
    --cc=niklas.soderlund@corigine.com \
    --cc=oss-drivers@corigine.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).