DPDK patches and discussions
 help / color / mirror / Atom feed
From: Serhii Iliushyk <sil-plv@napatech.com>
To: dev@dpdk.org
Cc: mko-plv@napatech.com, sil-plv@napatech.com, ckm@napatech.com,
	stephen@networkplumber.org
Subject: [PATCH v1 01/16] net/ntnic: single file function as static
Date: Fri, 19 Sep 2025 11:14:46 +0200	[thread overview]
Message-ID: <20250919091504.1548351-2-sil-plv@napatech.com> (raw)
In-Reply-To: <20250919091504.1548351-1-sil-plv@napatech.com>

Refactoring:  make single file functions static
to avoid namespace pollution.

Signed-off-by: Serhii Iliushyk <sil-plv@napatech.com>
---
 drivers/net/ntnic/include/create_elements.h   |   9 -
 drivers/net/ntnic/include/flow_api.h          |   2 -
 drivers/net/ntnic/include/hw_mod_backend.h    |  15 -
 drivers/net/ntnic/nim/i2c_nim.c               |   4 +-
 .../net/ntnic/nthw/core/include/nthw_fpga.h   |   2 -
 .../net/ntnic/nthw/core/include/nthw_hif.h    |  12 -
 .../net/ntnic/nthw/core/include/nthw_iic.h    |   9 -
 .../ntnic/nthw/core/include/nthw_mac_pcs.h    |   9 -
 .../net/ntnic/nthw/core/include/nthw_pcie3.h  |  13 -
 .../nthw/core/include/nthw_pcm_nt400dxx.h     |   1 -
 .../ntnic/nthw/core/include/nthw_phy_tile.h   |   2 -
 .../net/ntnic/nthw/core/include/nthw_rpf.h    |   2 -
 .../net/ntnic/nthw/core/include/nthw_si5340.h |   2 -
 drivers/net/ntnic/nthw/core/nthw_fpga.c       |   2 +-
 drivers/net/ntnic/nthw/core/nthw_hif.c        |  10 +-
 drivers/net/ntnic/nthw/core/nthw_iic.c        | 238 ++++-----
 drivers/net/ntnic/nthw/core/nthw_mac_pcs.c    |  52 +-
 drivers/net/ntnic/nthw/core/nthw_pcie3.c      |  11 +-
 .../net/ntnic/nthw/core/nthw_pcm_nt400dxx.c   |   2 +-
 drivers/net/ntnic/nthw/core/nthw_phy_tile.c   |   5 +-
 drivers/net/ntnic/nthw/core/nthw_rpf.c        |   4 +-
 drivers/net/ntnic/nthw/core/nthw_si5340.c     |   2 +-
 drivers/net/ntnic/nthw/flow_api/flow_api.c    | 125 ++---
 .../ntnic/nthw/flow_api/hw_mod/hw_mod_cat.c   | 226 ++++----
 .../ntnic/nthw/flow_api/hw_mod/hw_mod_km.c    |  79 +--
 .../ntnic/nthw/flow_api/hw_mod/hw_mod_pdb.c   |  30 +-
 .../ntnic/nthw/flow_api/hw_mod/hw_mod_tpe.c   |   4 +-
 .../profile_inline/flow_api_hw_db_inline.c    | 461 +++++++++--------
 .../profile_inline/flow_api_hw_db_inline.h    |  53 --
 .../net/ntnic/nthw/model/nthw_fpga_model.c    | 485 +++++++++---------
 .../net/ntnic/nthw/model/nthw_fpga_model.h    |  28 -
 drivers/net/ntnic/ntnic_filter/ntnic_filter.c |   9 +-
 drivers/net/ntnic/ntnic_vfio.c                |   2 +-
 drivers/net/ntnic/ntnic_vfio.h                |   2 -
 drivers/net/ntnic/ntutil/nt_util.c            |   4 +-
 drivers/net/ntnic/ntutil/nt_util.h            |   3 -
 36 files changed, 887 insertions(+), 1032 deletions(-)

diff --git a/drivers/net/ntnic/include/create_elements.h b/drivers/net/ntnic/include/create_elements.h
index dac2cd7cc9..7593ab4687 100644
--- a/drivers/net/ntnic/include/create_elements.h
+++ b/drivers/net/ntnic/include/create_elements.h
@@ -60,13 +60,4 @@ enum nt_rte_flow_item_type {
 
 extern rte_spinlock_t flow_lock;
 
-int nthw_interpret_raw_data(uint8_t *data, uint8_t *preserve, int size, struct rte_flow_item *out);
-int nthw_create_attr(struct cnv_attr_s *attribute, const struct rte_flow_attr *attr);
-int nthw_create_match_elements(struct cnv_match_s *match, const struct rte_flow_item items[],
-	int max_elem);
-int nthw_create_action_elements_inline(struct cnv_action_s *action,
-	const struct rte_flow_action actions[],
-	int max_elem,
-	uint32_t queue_offset);
-
 #endif	/* __CREATE_ELEMENTS_H__ */
diff --git a/drivers/net/ntnic/include/flow_api.h b/drivers/net/ntnic/include/flow_api.h
index f80414a185..582de3b281 100644
--- a/drivers/net/ntnic/include/flow_api.h
+++ b/drivers/net/ntnic/include/flow_api.h
@@ -27,8 +27,6 @@ struct hw_mod_resource_s {
 /*
  * Device Management API
  */
-int nthw_flow_delete_eth_dev(struct flow_eth_dev *eth_dev);
-
 /**
  * A structure used to configure the Receive Side Scaling (RSS) feature
  * of an Ethernet port.
diff --git a/drivers/net/ntnic/include/hw_mod_backend.h b/drivers/net/ntnic/include/hw_mod_backend.h
index f7d4085e5c..455bc7236e 100644
--- a/drivers/net/ntnic/include/hw_mod_backend.h
+++ b/drivers/net/ntnic/include/hw_mod_backend.h
@@ -415,14 +415,6 @@ int hw_mod_cat_cot_flush(struct flow_api_backend_s *be, int start_idx, int count
 int hw_mod_cat_cot_set(struct flow_api_backend_s *be, enum hw_cat_e field, int index,
 	uint32_t value);
 
-int hw_mod_cat_cct_flush(struct flow_api_backend_s *be, int start_idx, int count);
-
-int hw_mod_cat_kcc_flush(struct flow_api_backend_s *be, int start_idx, int count);
-
-int hw_mod_cat_exo_flush(struct flow_api_backend_s *be, int start_idx, int count);
-int hw_mod_cat_rck_flush(struct flow_api_backend_s *be, int start_idx, int count);
-int hw_mod_cat_len_flush(struct flow_api_backend_s *be, int start_idx, int count);
-
 struct km_func_s {
 	COMMON_FUNC_INFO_S;
 	uint32_t nb_categories;
@@ -531,9 +523,6 @@ int hw_mod_km_tci_flush(struct flow_api_backend_s *be, int start_bank, int start
 	int count);
 int hw_mod_km_tci_set(struct flow_api_backend_s *be, enum hw_km_e field, int bank, int record,
 	uint32_t value);
-int hw_mod_km_tcq_flush(struct flow_api_backend_s *be, int start_bank, int start_record,
-	int count);
-
 struct flm_func_s {
 	COMMON_FUNC_INFO_S;
 	uint32_t nb_categories;
@@ -874,8 +863,6 @@ int hw_mod_pdb_rcp_flush(struct flow_api_backend_s *be, int start_idx, int count
 int hw_mod_pdb_rcp_set(struct flow_api_backend_s *be, enum hw_pdb_e field, uint32_t index,
 	uint32_t value);
 
-int hw_mod_pdb_config_flush(struct flow_api_backend_s *be);
-
 struct tpe_func_s {
 	COMMON_FUNC_INFO_S;
 	uint32_t nb_rcp_categories;
@@ -961,8 +948,6 @@ int hw_mod_tpe_ifr_rcp_set(struct flow_api_backend_s *be, enum hw_tpe_e field, i
 	uint32_t value);
 
 int hw_mod_tpe_ifr_counters_update(struct flow_api_backend_s *be, int start_idx, int count);
-int hw_mod_tpe_ifr_counters_set(struct flow_api_backend_s *be, enum hw_tpe_e field, int index,
-	uint32_t value);
 int hw_mod_tpe_ifr_counters_get(struct flow_api_backend_s *be, enum hw_tpe_e field, int index,
 	uint32_t *value);
 
diff --git a/drivers/net/ntnic/nim/i2c_nim.c b/drivers/net/ntnic/nim/i2c_nim.c
index 66729e3ab4..4fd882b8c9 100644
--- a/drivers/net/ntnic/nim/i2c_nim.c
+++ b/drivers/net/ntnic/nim/i2c_nim.c
@@ -13,7 +13,7 @@
 #include "qsfp_registers.h"
 #include "nim_defines.h"
 
-int nim_agx_read_id(struct nim_i2c_ctx *ctx);
+static int nim_agx_read_id(struct nim_i2c_ctx *ctx);
 static void nim_agx_read(struct nim_i2c_ctx *ctx, uint8_t dev_addr, uint8_t reg_addr,
 	uint8_t data_len, void *p_data);
 static void nim_agx_write(struct nim_i2c_ctx *ctx, uint8_t dev_addr, uint8_t reg_addr,
@@ -931,7 +931,7 @@ static void nim_agx_write(struct nim_i2c_ctx *ctx,
 	rte_spinlock_unlock(&p_nt_i2cm->i2cmmutex);
 }
 
-int nim_agx_read_id(struct nim_i2c_ctx *ctx)
+static int nim_agx_read_id(struct nim_i2c_ctx *ctx)
 {
 	nim_agx_read(ctx, 0xA0, 0, sizeof(ctx->nim_id), &ctx->nim_id);
 	return 0;
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_fpga.h b/drivers/net/ntnic/nthw/core/include/nthw_fpga.h
index 418aea8277..fb47807a2f 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_fpga.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_fpga.h
@@ -16,8 +16,6 @@
 int nthw_fpga_init(struct fpga_info_s *p_fpga_info);
 int nthw_fpga_shutdown(struct fpga_info_s *p_fpga_info);
 
-int nthw_fpga_get_param_info(struct fpga_info_s *p_fpga_info, nthw_fpga_t *p_fpga);
-
 int nthw_fpga_avr_probe(nthw_fpga_t *p_fpga, const int n_instance_no);
 
 int nthw_fpga_iic_scan(nthw_fpga_t *p_fpga, const int n_instance_no_begin,
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_hif.h b/drivers/net/ntnic/nthw/core/include/nthw_hif.h
index 7d5e1f1310..f91f7759a7 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_hif.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_hif.h
@@ -137,18 +137,6 @@ int nthw_hif_init(nthw_hif_t *p, nthw_fpga_t *p_fpga, int n_instance);
 int nthw_hif_trigger_sample_time(nthw_hif_t *p);
 int nthw_hif_force_soft_reset(nthw_hif_t *p);
 
-int nthw_hif_stat_req_enable(nthw_hif_t *p);
-int nthw_hif_stat_req_disable(nthw_hif_t *p);
-
-int nthw_hif_get_stat(nthw_hif_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
-	uint32_t *p_ref_clk_cnt, uint32_t *p_tg_unit_size, uint32_t *p_tg_ref_freq,
-	uint64_t *p_tags_in_use, uint64_t *p_rd_err, uint64_t *p_wr_err);
-int nthw_hif_get_stat_rate(nthw_hif_t *p, uint64_t *p_pci_rx_rate, uint64_t *p_pci_tx_rate,
-	uint64_t *p_ref_clk_cnt, uint64_t *p_tags_in_use,
-	uint64_t *p_rd_err_cnt, uint64_t *p_wr_err_cnt);
-
-int nthw_hif_end_point_counters_sample(nthw_hif_t *p, struct nthw_hif_end_point_counters *epc);
-
 int nthw_hif_read_test_reg(nthw_hif_t *p, uint8_t test_reg, uint32_t *p_value);
 int nthw_hif_write_test_reg(nthw_hif_t *p, uint8_t test_reg, uint32_t value);
 
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_iic.h b/drivers/net/ntnic/nthw/core/include/nthw_iic.h
index 41574f51f3..f6dec4a938 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_iic.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_iic.h
@@ -85,16 +85,7 @@ int nthw_iic_set_retry_params(nthw_iic_t *p, const int n_poll_delay, const int n
 
 int nthw_iic_read_data(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
 	void *p_void);
-int nthw_iic_readbyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
-	uint8_t *p_byte);
 int nthw_iic_write_data(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
 	void *p_void);
-int nthw_iic_writebyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
-	uint8_t *p_byte);
-bool nthw_iic_bus_ready(nthw_iic_t *p);
-bool nthw_iic_data_ready(nthw_iic_t *p);
-
 int nthw_iic_scan(nthw_iic_t *p);
-int nthw_iic_scan_dev_addr(nthw_iic_t *p, int n_dev_addr, int n_reg_addr);
-
 #endif	/* __NTHW_IIC_H__ */
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_mac_pcs.h b/drivers/net/ntnic/nthw/core/include/nthw_mac_pcs.h
index 8d0e81bd73..a4119e4efe 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_mac_pcs.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_mac_pcs.h
@@ -198,14 +198,12 @@ typedef struct nthw_mac_pcs nthw_mac_pcs_t;
 
 int nthw_mac_pcs_init(nthw_mac_pcs_t *p, nthw_fpga_t *p_fpga, int n_instance);
 
-void nthw_mac_pcs_tx_path_rst(nthw_mac_pcs_t *p, bool enable);
 void nthw_mac_pcs_rx_path_rst(nthw_mac_pcs_t *p, bool enable);
 bool nthw_mac_pcs_is_rx_path_rst(nthw_mac_pcs_t *p);
 /* wrapper - for ease of use */
 void nthw_mac_pcs_set_rx_enable(nthw_mac_pcs_t *p, bool enable);
 void nthw_mac_pcs_set_tx_enable(nthw_mac_pcs_t *p, bool enable);
 void nthw_mac_pcs_set_tx_sel_host(nthw_mac_pcs_t *p, bool enable);
-void nthw_mac_pcs_set_tx_sel_tfg(nthw_mac_pcs_t *p, bool enable);
 void nthw_mac_pcs_set_ts_eop(nthw_mac_pcs_t *p, bool enable);
 void nthw_mac_pcs_set_host_loopback(nthw_mac_pcs_t *p, bool enable);
 void nthw_mac_pcs_set_line_loopback(nthw_mac_pcs_t *p, bool enable);
@@ -240,11 +238,4 @@ void nthw_mac_pcs_swap_gty_rx_polarity(nthw_mac_pcs_t *p, uint8_t lane, bool swa
 void nthw_mac_pcs_set_receiver_equalization_mode(nthw_mac_pcs_t *p, uint8_t mode);
 void nthw_mac_pcs_set_led_mode(nthw_mac_pcs_t *p, uint8_t mode);
 void nthw_mac_pcs_set_timestamp_comp_rx(nthw_mac_pcs_t *p, uint16_t rx_dly);
-void nthw_mac_pcs_set_port_no(nthw_mac_pcs_t *p, uint8_t port_no);
-
-uint32_t nthw_mac_pcs_get_fld_block_lock_lock(nthw_mac_pcs_t *p);
-uint32_t nthw_mac_pcs_get_fld_block_lock_lock_mask(nthw_mac_pcs_t *p);
-uint32_t nthw_mac_pcs_get_fld_lane_lock_lock(nthw_mac_pcs_t *p);
-uint32_t nthw_mac_pcs_get_fld_lane_lock_lock_mask(nthw_mac_pcs_t *p);
-
 #endif	/* NTHW_MAC_PCS_H_ */
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_pcie3.h b/drivers/net/ntnic/nthw/core/include/nthw_pcie3.h
index 846c09b1b9..21b5d7d22a 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_pcie3.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_pcie3.h
@@ -80,17 +80,4 @@ int nthw_pcie3_init(nthw_pcie3_t *p, nthw_fpga_t *p_fpga, int n_instance);
 
 int nthw_pcie3_trigger_sample_time(nthw_pcie3_t *p);
 
-int nthw_pcie3_stat_req_enable(nthw_pcie3_t *p);
-int nthw_pcie3_stat_req_disable(nthw_pcie3_t *p);
-
-int nthw_pcie3_get_stat(nthw_pcie3_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
-	uint32_t *p_ref_clk_cnt, uint32_t *p_tg_unit_size, uint32_t *p_tg_ref_freq,
-	uint32_t *p_tag_use_cnt, uint32_t *p_rq_rdy_cnt, uint32_t *p_rq_vld_cnt);
-int nthw_pcie3_get_stat_rate(nthw_pcie3_t *p, uint64_t *p_pci_rx_rate, uint64_t *p_pci_tx_rate,
-	uint64_t *p_ref_clk_cnt, uint64_t *p_tag_use_cnt,
-	uint64_t *p_pci_nt_bus_util, uint64_t *p_pci_xil_bus_util);
-
-int nthw_pcie3_end_point_counters_sample_post(nthw_pcie3_t *p,
-	struct nthw_hif_end_point_counters *epc);
-
 #endif	/* __NTHW_PCIE3_H__ */
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_pcm_nt400dxx.h b/drivers/net/ntnic/nthw/core/include/nthw_pcm_nt400dxx.h
index 47d2670cf5..312dfff974 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_pcm_nt400dxx.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_pcm_nt400dxx.h
@@ -34,7 +34,6 @@ nthw_pcm_nt400dxx_t *nthw_pcm_nt400dxx_new(void);
 int nthw_pcm_nt400dxx_init(nthw_pcm_nt400dxx_t *p, nthw_fpga_t *p_fpga, int n_instance);
 void nthw_pcm_nt400dxx_set_ts_pll_recal(nthw_pcm_nt400dxx_t *p, uint32_t val);
 bool nthw_pcm_nt400dxx_get_ts_pll_locked_stat(nthw_pcm_nt400dxx_t *p);
-bool nthw_pcm_nt400dxx_get_ts_pll_locked_latch(nthw_pcm_nt400dxx_t *p);
 void nthw_pcm_nt400dxx_set_ts_pll_locked_latch(nthw_pcm_nt400dxx_t *p, uint32_t val);
 
 #endif	/* __NTHW_PCM_NT400DXX_H__ */
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_phy_tile.h b/drivers/net/ntnic/nthw/core/include/nthw_phy_tile.h
index c4ec100c23..c35d39e61d 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_phy_tile.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_phy_tile.h
@@ -133,8 +133,6 @@ bool nthw_phy_tile_get_rx_am_lock(nthw_phy_tile_t *p, uint8_t intf_no);
 void nthw_phy_tile_set_timestamp_comp_rx(nthw_phy_tile_t *p, uint8_t intf_no, uint32_t value);
 uint32_t nthw_phy_tile_get_timestamp_comp_rx(nthw_phy_tile_t *p, uint8_t intf_no);
 
-uint32_t nthw_phy_tile_read_eth(nthw_phy_tile_t *p, uint8_t intf_no, uint32_t address);
-void nthw_phy_tile_write_eth(nthw_phy_tile_t *p, uint8_t intf_no, uint32_t address, uint32_t data);
 bool nthw_phy_tile_configure_fec(nthw_phy_tile_t *p, uint8_t intf_no, bool enable);
 uint32_t nthw_phy_tile_read_xcvr(nthw_phy_tile_t *p, uint8_t intf_no, uint8_t lane,
 	uint32_t address);
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_rpf.h b/drivers/net/ntnic/nthw/core/include/nthw_rpf.h
index f893ac1c47..4916fb926e 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_rpf.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_rpf.h
@@ -37,9 +37,7 @@ typedef struct nthw_rpf nthw_rpf_t;
 typedef struct nthw_rpf nt_rpf;
 
 nthw_rpf_t *nthw_rpf_new(void);
-void nthw_rpf_delete(nthw_rpf_t *p);
 int nthw_rpf_init(nthw_rpf_t *p, nthw_fpga_t *p_fpga, int n_instance);
-void nthw_rpf_administrative_block(nthw_rpf_t *p);
 void nthw_rpf_block(nthw_rpf_t *p);
 void nthw_rpf_unblock(nthw_rpf_t *p);
 void nthw_rpf_set_maturing_delay(nthw_rpf_t *p, int32_t delay);
diff --git a/drivers/net/ntnic/nthw/core/include/nthw_si5340.h b/drivers/net/ntnic/nthw/core/include/nthw_si5340.h
index f56883d99a..0e11855b92 100644
--- a/drivers/net/ntnic/nthw/core/include/nthw_si5340.h
+++ b/drivers/net/ntnic/nthw/core/include/nthw_si5340.h
@@ -25,8 +25,6 @@ nthw_si5340_t *nthw_si5340_new(void);
 int nthw_si5340_init(nthw_si5340_t *p, nthw_iic_t *p_nthw_iic, uint8_t n_iic_addr);
 void nthw_si5340_delete(nthw_si5340_t *p);
 
-int nthw_si5340_config(nthw_si5340_t *p, const void *p_data, int data_cnt,
-	clk_profile_data_fmt_t data_format);
 int nthw_si5340_config_fmt2(nthw_si5340_t *p, const clk_profile_data_fmt2_t *p_data,
 	const int data_cnt);
 
diff --git a/drivers/net/ntnic/nthw/core/nthw_fpga.c b/drivers/net/ntnic/nthw/core/nthw_fpga.c
index b74a1607fd..9153b31cea 100644
--- a/drivers/net/ntnic/nthw/core/nthw_fpga.c
+++ b/drivers/net/ntnic/nthw/core/nthw_fpga.c
@@ -18,7 +18,7 @@
 
 #include <arpa/inet.h>
 
-int nthw_fpga_get_param_info(struct fpga_info_s *p_fpga_info, nthw_fpga_t *p_fpga)
+static int nthw_fpga_get_param_info(struct fpga_info_s *p_fpga_info, nthw_fpga_t *p_fpga)
 {
 	mcu_info_t *p_mcu_info = &p_fpga_info->mcu_info;
 
diff --git a/drivers/net/ntnic/nthw/core/nthw_hif.c b/drivers/net/ntnic/nthw/core/nthw_hif.c
index f2d6f372b0..2899c3706b 100644
--- a/drivers/net/ntnic/nthw/core/nthw_hif.c
+++ b/drivers/net/ntnic/nthw/core/nthw_hif.c
@@ -217,7 +217,7 @@ int nthw_hif_trigger_sample_time(nthw_hif_t *p)
 	return 0;
 }
 
-int nthw_hif_get_stat(nthw_hif_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
+static int nthw_hif_get_stat(nthw_hif_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
 	uint32_t *p_ref_clk_cnt, uint32_t *p_tg_unit_size, uint32_t *p_tg_ref_freq,
 	uint64_t *p_tags_in_use, uint64_t *p_rd_err, uint64_t *p_wr_err)
 {
@@ -241,7 +241,7 @@ int nthw_hif_get_stat(nthw_hif_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
 	return 0;
 }
 
-int nthw_hif_get_stat_rate(nthw_hif_t *p, uint64_t *p_pci_rx_rate, uint64_t *p_pci_tx_rate,
+static int nthw_hif_get_stat_rate(nthw_hif_t *p, uint64_t *p_pci_rx_rate, uint64_t *p_pci_tx_rate,
 	uint64_t *p_ref_clk_cnt, uint64_t *p_tags_in_use,
 	uint64_t *p_rd_err_cnt, uint64_t *p_wr_err_cnt)
 {
@@ -280,7 +280,7 @@ int nthw_hif_get_stat_rate(nthw_hif_t *p, uint64_t *p_pci_rx_rate, uint64_t *p_p
 	return 0;
 }
 
-int nthw_hif_stat_req_enable(nthw_hif_t *p)
+static int nthw_hif_stat_req_enable(nthw_hif_t *p)
 {
 	nthw_field_set_all(p->mp_fld_stat_ctrl_ena);
 	nthw_field_set_all(p->mp_fld_stat_ctrl_req);
@@ -288,7 +288,7 @@ int nthw_hif_stat_req_enable(nthw_hif_t *p)
 	return 0;
 }
 
-int nthw_hif_stat_req_disable(nthw_hif_t *p)
+static int nthw_hif_stat_req_disable(nthw_hif_t *p)
 {
 	nthw_field_clr_all(p->mp_fld_stat_ctrl_ena);
 	nthw_field_set_all(p->mp_fld_stat_ctrl_req);
@@ -296,7 +296,7 @@ int nthw_hif_stat_req_disable(nthw_hif_t *p)
 	return 0;
 }
 
-int nthw_hif_end_point_counters_sample(nthw_hif_t *p, struct nthw_hif_end_point_counters *epc)
+static int nthw_hif_end_point_cntrs_sample(nthw_hif_t *p, struct nthw_hif_end_point_counters *epc)
 {
 	RTE_ASSERT(epc);
 
diff --git a/drivers/net/ntnic/nthw/core/nthw_iic.c b/drivers/net/ntnic/nthw/core/nthw_iic.c
index a96d878f25..7a2247e371 100644
--- a/drivers/net/ntnic/nthw/core/nthw_iic.c
+++ b/drivers/net/ntnic/nthw/core/nthw_iic.c
@@ -271,50 +271,76 @@ int nthw_iic_set_retry_params(nthw_iic_t *p, const int n_poll_delay, const int n
 	return 0;
 }
 
-int nthw_iic_read_data(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
-	void *p_void)
+/*
+ * Support function for read/write functions below. Waits for bus ready.
+ */
+static bool nthw_iic_bus_ready(nthw_iic_t *p)
 {
-	const char *const p_adapter_id_str = p->mp_fpga->p_fpga_info->mp_adapter_id_str;
-	const int n_debug_mode = nthw_module_get_debug_mode(p->mp_mod_iic);
+	int count = (p->mn_bus_ready_retry >= 0 ? p->mn_bus_ready_retry : 1000);
+	bool b_bus_busy = true;
 
-	uint8_t *pb = (uint8_t *)p_void;
-	int retry = (p->mn_read_data_retry >= 0 ? p->mn_read_data_retry : 10);
+	while (true) {
+		nthw_iic_reg_busbusy(p, &b_bus_busy);
 
-	if (n_debug_mode == 0xff) {
-		NT_LOG(DBG, NTHW, "%s: adr=0x%2.2x, reg=%d, len=%d", p_adapter_id_str, dev_addr,
-			a_reg_addr, data_len);
-	}
+		if (!b_bus_busy)
+			break;
 
-	while (nthw_iic_readbyte(p, dev_addr, a_reg_addr, data_len, pb) != 0) {
-		retry--;
+		count--;
 
-		if (retry <= 0) {
-			NT_LOG(ERR, NTHW,
-				"%s: I2C%d: Read retry exhausted (dev_addr=%d a_reg_addr=%d)",
-				p_adapter_id_str, p->mn_iic_instance, dev_addr, a_reg_addr);
-			return -1;
+		if (count <= 0)	/* Test for timeout */
+			break;
 
-		} else {
-			NT_LOG(DBG, NTHW, "%s: I2C%d: Read retry=%d (dev_addr=%d a_reg_addr=%d)",
-				p_adapter_id_str, p->mn_iic_instance, retry, dev_addr, a_reg_addr);
-		}
+		if (p->mn_poll_delay != 0)
+			I2C_WAIT_US(p->mn_poll_delay);
 	}
 
-	if (n_debug_mode == 0xff) {
-		NT_LOG(DBG, NTHW, "%s: adr=0x%2.2x, reg=%d, len=%d, retries remaining: %d",
-			p_adapter_id_str, dev_addr, a_reg_addr, data_len, retry);
+	if (count == 0)
+		return false;
+
+	return true;
+}
+
+/*
+ * Support function for read function. Waits for data ready.
+ */
+static bool nthw_iic_data_ready(nthw_iic_t *p)
+{
+	int count = (p->mn_data_ready_retry >= 0 ? p->mn_data_ready_retry : 1000);
+	bool b_rx_fifo_empty = true;
+
+	while (true) {
+		nthw_iic_reg_rxfifo_empty(p, &b_rx_fifo_empty);
+
+		if (!b_rx_fifo_empty)
+			break;
+
+		count--;
+
+		if (count <= 0)	/* Test for timeout */
+			break;
+
+		if (p->mn_poll_delay != 0)
+			I2C_WAIT_US(p->mn_poll_delay);
 	}
 
-	return 0;
+	if (count == 0)
+		return false;
+
+	return true;
 }
 
-int nthw_iic_readbyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
+static int nthw_iic_writebyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
 	uint8_t *p_byte)
 {
 	const char *const p_adapter_id_str = p->mp_fpga->p_fpga_info->mp_adapter_id_str;
-
 	uint32_t value;
-	uint32_t i;
+	int count;
+	int i;
+
+	if (data_len == 0)
+		return -1;
+
+	count = data_len - 1;
 
 	if (nthw_iic_bus_ready(p)) {
 		/* Reset TX fifo */
@@ -325,38 +351,34 @@ int nthw_iic_readbyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8
 		nthw_iic_reg_tx_fifo_write(p, value, 1, 0);
 
 		/* Write a_reg_addr to TX FIFO */
-		nthw_iic_reg_tx_fifo_write(p, a_reg_addr, 0, 1);
+		nthw_iic_reg_tx_fifo_write(p, a_reg_addr, 0, 0);
 
-		if (!nthw_iic_bus_ready(p)) {
-			NT_LOG_DBGX(ERR, NTHW, "%s: error:", p_adapter_id_str);
-			return -1;
+		for (i = 0; i < count; i++) {
+			/* Write data byte to TX fifo and set stop bit */
+			nthw_iic_reg_tx_fifo_write(p, *p_byte, 0, 0);
+			p_byte++;
 		}
 
-		/* Write device address + RD bit to TX_FIFO and set start bit!! */
-		value = (dev_addr << 1) | I2C_TRANSMIT_RD;
-		nthw_iic_reg_tx_fifo_write(p, value, 1, 0);
-
-		/* Write data_len to TX_FIFO and set stop bit!! */
-		nthw_iic_reg_tx_fifo_write(p, data_len, 0, 1);
+		/* Write data byte to TX fifo and set stop bit */
+		nthw_iic_reg_tx_fifo_write(p, *p_byte, 0, 1);
 
-		for (i = 0; i < data_len; i++) {
-			/* Wait for RX FIFO not empty */
-			if (!nthw_iic_data_ready(p))
-				return -1;
+		if (!nthw_iic_bus_ready(p)) {
+			NT_LOG_DBGX(WRN, NTHW, "%s: warn: !busReady", p_adapter_id_str);
 
-			/* Read data_len bytes from RX_FIFO */
-			nthw_iic_reg_read_i2c_rx_fifo(p, p_byte);
-			p_byte++;
+			while (true)
+				if (nthw_iic_bus_ready(p)) {
+					NT_LOG_DBGX(DBG, NTHW, "%s: info: busReady",
+					p_adapter_id_str);
+					break;
+				}
 		}
 
 		return 0;
 
 	} else {
-		NT_LOG_DBGX(ERR, NTHW, "%s: error", p_adapter_id_str);
+		NT_LOG_DBGX(WRN, NTHW, "%s", p_adapter_id_str);
 		return -1;
 	}
-
-	return 0;
 }
 
 int nthw_iic_write_data(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
@@ -385,18 +407,13 @@ int nthw_iic_write_data(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uin
 	return 0;
 }
 
-int nthw_iic_writebyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
+static int nthw_iic_readbyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
 	uint8_t *p_byte)
 {
 	const char *const p_adapter_id_str = p->mp_fpga->p_fpga_info->mp_adapter_id_str;
-	uint32_t value;
-	int count;
-	int i;
-
-	if (data_len == 0)
-		return -1;
 
-	count = data_len - 1;
+	uint32_t value;
+	uint32_t i;
 
 	if (nthw_iic_bus_ready(p)) {
 		/* Reset TX fifo */
@@ -407,95 +424,78 @@ int nthw_iic_writebyte(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint
 		nthw_iic_reg_tx_fifo_write(p, value, 1, 0);
 
 		/* Write a_reg_addr to TX FIFO */
-		nthw_iic_reg_tx_fifo_write(p, a_reg_addr, 0, 0);
+		nthw_iic_reg_tx_fifo_write(p, a_reg_addr, 0, 1);
 
-		for (i = 0; i < count; i++) {
-			/* Write data byte to TX fifo and set stop bit */
-			nthw_iic_reg_tx_fifo_write(p, *p_byte, 0, 0);
-			p_byte++;
+		if (!nthw_iic_bus_ready(p)) {
+			NT_LOG_DBGX(ERR, NTHW, "%s: error:", p_adapter_id_str);
+			return -1;
 		}
 
-		/* Write data byte to TX fifo and set stop bit */
-		nthw_iic_reg_tx_fifo_write(p, *p_byte, 0, 1);
+		/* Write device address + RD bit to TX_FIFO and set start bit!! */
+		value = (dev_addr << 1) | I2C_TRANSMIT_RD;
+		nthw_iic_reg_tx_fifo_write(p, value, 1, 0);
 
-		if (!nthw_iic_bus_ready(p)) {
-			NT_LOG_DBGX(WRN, NTHW, "%s: warn: !busReady", p_adapter_id_str);
+		/* Write data_len to TX_FIFO and set stop bit!! */
+		nthw_iic_reg_tx_fifo_write(p, data_len, 0, 1);
 
-			while (true)
-				if (nthw_iic_bus_ready(p)) {
-					NT_LOG_DBGX(DBG, NTHW, "%s: info: busReady",
-					p_adapter_id_str);
-					break;
-				}
+		for (i = 0; i < data_len; i++) {
+			/* Wait for RX FIFO not empty */
+			if (!nthw_iic_data_ready(p))
+				return -1;
+
+			/* Read data_len bytes from RX_FIFO */
+			nthw_iic_reg_read_i2c_rx_fifo(p, p_byte);
+			p_byte++;
 		}
 
 		return 0;
 
 	} else {
-		NT_LOG_DBGX(WRN, NTHW, "%s", p_adapter_id_str);
+		NT_LOG_DBGX(ERR, NTHW, "%s: error", p_adapter_id_str);
 		return -1;
 	}
-}
-
-/*
- * Support function for read/write functions below. Waits for bus ready.
- */
-bool nthw_iic_bus_ready(nthw_iic_t *p)
-{
-	int count = (p->mn_bus_ready_retry >= 0 ? p->mn_bus_ready_retry : 1000);
-	bool b_bus_busy = true;
-
-	while (true) {
-		nthw_iic_reg_busbusy(p, &b_bus_busy);
-
-		if (!b_bus_busy)
-			break;
-
-		count--;
-
-		if (count <= 0)	/* Test for timeout */
-			break;
-
-		if (p->mn_poll_delay != 0)
-			I2C_WAIT_US(p->mn_poll_delay);
-	}
-
-	if (count == 0)
-		return false;
 
-	return true;
+	return 0;
 }
 
-/*
- * Support function for read function. Waits for data ready.
- */
-bool nthw_iic_data_ready(nthw_iic_t *p)
+int nthw_iic_read_data(nthw_iic_t *p, uint8_t dev_addr, uint8_t a_reg_addr, uint8_t data_len,
+	void *p_void)
 {
-	int count = (p->mn_data_ready_retry >= 0 ? p->mn_data_ready_retry : 1000);
-	bool b_rx_fifo_empty = true;
+	const char *const p_adapter_id_str = p->mp_fpga->p_fpga_info->mp_adapter_id_str;
+	const int n_debug_mode = nthw_module_get_debug_mode(p->mp_mod_iic);
 
-	while (true) {
-		nthw_iic_reg_rxfifo_empty(p, &b_rx_fifo_empty);
+	uint8_t *pb = (uint8_t *)p_void;
+	int retry = (p->mn_read_data_retry >= 0 ? p->mn_read_data_retry : 10);
 
-		if (!b_rx_fifo_empty)
-			break;
+	if (n_debug_mode == 0xff) {
+		NT_LOG(DBG, NTHW, "%s: adr=0x%2.2x, reg=%d, len=%d", p_adapter_id_str, dev_addr,
+			a_reg_addr, data_len);
+	}
 
-		count--;
+	while (nthw_iic_readbyte(p, dev_addr, a_reg_addr, data_len, pb) != 0) {
+		retry--;
 
-		if (count <= 0)	/* Test for timeout */
-			break;
+		if (retry <= 0) {
+			NT_LOG(ERR, NTHW,
+				"%s: I2C%d: Read retry exhausted (dev_addr=%d a_reg_addr=%d)",
+				p_adapter_id_str, p->mn_iic_instance, dev_addr, a_reg_addr);
+			return -1;
 
-		if (p->mn_poll_delay != 0)
-			I2C_WAIT_US(p->mn_poll_delay);
+		} else {
+			NT_LOG(DBG, NTHW, "%s: I2C%d: Read retry=%d (dev_addr=%d a_reg_addr=%d)",
+				p_adapter_id_str, p->mn_iic_instance, retry, dev_addr, a_reg_addr);
+		}
 	}
 
-	if (count == 0)
-		return false;
+	if (n_debug_mode == 0xff) {
+		NT_LOG(DBG, NTHW, "%s: adr=0x%2.2x, reg=%d, len=%d, retries remaining: %d",
+			p_adapter_id_str, dev_addr, a_reg_addr, data_len, retry);
+	}
 
-	return true;
+	return 0;
 }
 
-int nthw_iic_scan_dev_addr(nthw_iic_t *p, int n_dev_addr, int n_reg_addr)
+static int nthw_iic_scan_dev_addr(nthw_iic_t *p, int n_dev_addr, int n_reg_addr)
 {
 	const char *const p_adapter_id_str = p->mp_fpga->p_fpga_info->mp_adapter_id_str;
 	(void)p_adapter_id_str;
diff --git a/drivers/net/ntnic/nthw/core/nthw_mac_pcs.c b/drivers/net/ntnic/nthw/core/nthw_mac_pcs.c
index 23ed96e04d..a8d66268ff 100644
--- a/drivers/net/ntnic/nthw/core/nthw_mac_pcs.c
+++ b/drivers/net/ntnic/nthw/core/nthw_mac_pcs.c
@@ -16,6 +16,11 @@
 static const uint8_t c_pcs_lanes = NTHW_MAC_PCS_LANES;
 static const uint8_t c_mac_pcs_receiver_mode_dfe;
 
+static void nthw_mac_pcs_set_port_no(nthw_mac_pcs_t *p, uint8_t port_no)
+{
+	p->m_port_no = port_no;
+}
+
 /*
  * Parameters:
  *   p != NULL: init struct pointed to by p
@@ -424,7 +429,7 @@ void nthw_mac_pcs_set_tx_sel_host(nthw_mac_pcs_t *p, bool enable)
 		nthw_field_clr_flush(p->mp_fld_phymac_misc_tx_sel_host);
 }
 
-void nthw_mac_pcs_set_tx_sel_tfg(nthw_mac_pcs_t *p, bool enable)
+static void nthw_mac_pcs_set_tx_sel_tfg(nthw_mac_pcs_t *p, bool enable)
 {
 	nthw_field_get_updated(p->mp_fld_phymac_misc_tx_sel_tfg);
 
@@ -448,7 +453,7 @@ void nthw_mac_pcs_set_ts_eop(nthw_mac_pcs_t *p, bool enable)
 	}
 }
 
-void nthw_mac_pcs_tx_path_rst(nthw_mac_pcs_t *p, bool enable)
+static void nthw_mac_pcs_tx_path_rst(nthw_mac_pcs_t *p, bool enable)
 {
 	nthw_field_get_updated(p->mp_fld_pcs_config_tx_path_rst);
 
@@ -579,21 +584,6 @@ void nthw_mac_pcs_get_link_summary(nthw_mac_pcs_t *p,
 		*p_remote_fault = nthw_field_get_val32(p->mp_fld_link_summary_remote_fault);
 }
 
-/*
- * Returns true if the lane/block lock bits indicate that a reset is required.
- * This is the case if Block/Lane lock is not all zero but not all set either.
- */
-bool nthw_mac_pcs_reset_required(nthw_mac_pcs_t *p)
-{
-	uint32_t block_lock = nthw_mac_pcs_get_fld_block_lock_lock(p);
-	uint32_t lane_lock = nthw_mac_pcs_get_fld_lane_lock_lock(p);
-	uint32_t block_lock_mask = nthw_mac_pcs_get_fld_block_lock_lock_mask(p);
-	uint32_t lane_lock_mask = nthw_mac_pcs_get_fld_lane_lock_lock_mask(p);
-
-	return ((block_lock != 0) && (block_lock != block_lock_mask)) ||
-		((lane_lock != 0) && (lane_lock != lane_lock_mask));
-}
-
 void nthw_mac_pcs_set_fec(nthw_mac_pcs_t *p, bool enable)
 {
 	NT_LOG(DBG, NTHW, "Port %u: Set FEC: %u", p->m_port_no, enable);
@@ -838,27 +828,37 @@ void nthw_mac_pcs_set_timestamp_comp_rx(nthw_mac_pcs_t *p, uint16_t rx_dly)
 	}
 }
 
-void nthw_mac_pcs_set_port_no(nthw_mac_pcs_t *p, uint8_t port_no)
-{
-	p->m_port_no = port_no;
-}
-
-uint32_t nthw_mac_pcs_get_fld_block_lock_lock(nthw_mac_pcs_t *p)
+static uint32_t nthw_mac_pcs_get_fld_block_lock_lock(nthw_mac_pcs_t *p)
 {
 	return nthw_field_get_updated(p->mp_fld_block_lock_lock);
 }
 
-uint32_t nthw_mac_pcs_get_fld_block_lock_lock_mask(nthw_mac_pcs_t *p)
+static uint32_t nthw_mac_pcs_get_fld_block_lock_lock_mask(nthw_mac_pcs_t *p)
 {
 	return p->m_fld_block_lock_lock_mask;
 }
 
-uint32_t nthw_mac_pcs_get_fld_lane_lock_lock(nthw_mac_pcs_t *p)
+static uint32_t nthw_mac_pcs_get_fld_lane_lock_lock(nthw_mac_pcs_t *p)
 {
 	return nthw_field_get_updated(p->mp_fld_vl_demuxed_lock);
 }
 
-uint32_t nthw_mac_pcs_get_fld_lane_lock_lock_mask(nthw_mac_pcs_t *p)
+static uint32_t nthw_mac_pcs_get_fld_lane_lock_lock_mask(nthw_mac_pcs_t *p)
 {
 	return p->m_fld_vl_demuxed_lock_mask;
 }
+
+/*
+ * Returns true if the lane/block lock bits indicate that a reset is required.
+ * This is the case if Block/Lane lock is not all zero but not all set either.
+ */
+bool nthw_mac_pcs_reset_required(nthw_mac_pcs_t *p)
+{
+	uint32_t block_lock = nthw_mac_pcs_get_fld_block_lock_lock(p);
+	uint32_t lane_lock = nthw_mac_pcs_get_fld_lane_lock_lock(p);
+	uint32_t block_lock_mask = nthw_mac_pcs_get_fld_block_lock_lock_mask(p);
+	uint32_t lane_lock_mask = nthw_mac_pcs_get_fld_lane_lock_lock_mask(p);
+
+	return ((block_lock != 0) && (block_lock != block_lock_mask)) ||
+		((lane_lock != 0) && (lane_lock != lane_lock_mask));
+}
diff --git a/drivers/net/ntnic/nthw/core/nthw_pcie3.c b/drivers/net/ntnic/nthw/core/nthw_pcie3.c
index bad1c31e35..2953896759 100644
--- a/drivers/net/ntnic/nthw/core/nthw_pcie3.c
+++ b/drivers/net/ntnic/nthw/core/nthw_pcie3.c
@@ -169,7 +169,7 @@ int nthw_pcie3_trigger_sample_time(nthw_pcie3_t *p)
 	return 0;
 }
 
-int nthw_pcie3_stat_req_enable(nthw_pcie3_t *p)
+static int nthw_pcie3_stat_req_enable(nthw_pcie3_t *p)
 {
 	nthw_field_set_all(p->mp_fld_stat_ctrl_ena);
 	nthw_field_set_all(p->mp_fld_stat_ctrl_req);
@@ -177,7 +177,7 @@ int nthw_pcie3_stat_req_enable(nthw_pcie3_t *p)
 	return 0;
 }
 
-int nthw_pcie3_stat_req_disable(nthw_pcie3_t *p)
+static int nthw_pcie3_stat_req_disable(nthw_pcie3_t *p)
 {
 	nthw_field_clr_all(p->mp_fld_stat_ctrl_ena);
 	nthw_field_set_all(p->mp_fld_stat_ctrl_req);
@@ -185,7 +185,7 @@ int nthw_pcie3_stat_req_disable(nthw_pcie3_t *p)
 	return 0;
 }
 
-int nthw_pcie3_get_stat(nthw_pcie3_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
+static int nthw_pcie3_get_stat(nthw_pcie3_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
 	uint32_t *p_ref_clk_cnt, uint32_t *p_tg_unit_size, uint32_t *p_tg_ref_freq,
 	uint32_t *p_tag_use_cnt, uint32_t *p_rq_rdy_cnt, uint32_t *p_rq_vld_cnt)
 {
@@ -205,7 +205,8 @@ int nthw_pcie3_get_stat(nthw_pcie3_t *p, uint32_t *p_rx_cnt, uint32_t *p_tx_cnt,
 	return 0;
 }
 
-int nthw_pcie3_get_stat_rate(nthw_pcie3_t *p, uint64_t *p_pci_rx_rate, uint64_t *p_pci_tx_rate,
+static int nthw_pcie3_get_stat_rate(nthw_pcie3_t *p, uint64_t *p_pci_rx_rate,
+	uint64_t *p_pci_tx_rate,
 	uint64_t *p_ref_clk_cnt, uint64_t *p_tag_use_cnt,
 	uint64_t *p_pci_nt_bus_util, uint64_t *p_pci_xil_bus_util)
 {
@@ -244,7 +245,7 @@ int nthw_pcie3_get_stat_rate(nthw_pcie3_t *p, uint64_t *p_pci_rx_rate, uint64_t
 	return 0;
 }
 
-int nthw_pcie3_end_point_counters_sample_post(nthw_pcie3_t *p,
+static int nthw_pcie3_end_point_counters_sample_post(nthw_pcie3_t *p,
 	struct nthw_hif_end_point_counters *epc)
 {
 	NT_LOG_DBGX(DBG, NTHW);
diff --git a/drivers/net/ntnic/nthw/core/nthw_pcm_nt400dxx.c b/drivers/net/ntnic/nthw/core/nthw_pcm_nt400dxx.c
index e7be634a83..9004ebef06 100644
--- a/drivers/net/ntnic/nthw/core/nthw_pcm_nt400dxx.c
+++ b/drivers/net/ntnic/nthw/core/nthw_pcm_nt400dxx.c
@@ -68,7 +68,7 @@ bool nthw_pcm_nt400dxx_get_ts_pll_locked_stat(nthw_pcm_nt400dxx_t *p)
 	return nthw_field_get_updated(p->mp_fld_stat_ts_pll_locked) != 0;
 }
 
-bool nthw_pcm_nt400dxx_get_ts_pll_locked_latch(nthw_pcm_nt400dxx_t *p)
+static bool nthw_pcm_nt400dxx_get_ts_pll_locked_latch(nthw_pcm_nt400dxx_t *p)
 {
 	return nthw_field_get_updated(p->mp_fld_latch_ts_pll_locked) != 0;
 }
diff --git a/drivers/net/ntnic/nthw/core/nthw_phy_tile.c b/drivers/net/ntnic/nthw/core/nthw_phy_tile.c
index 5b2af77f7d..5e8055f0e3 100644
--- a/drivers/net/ntnic/nthw/core/nthw_phy_tile.c
+++ b/drivers/net/ntnic/nthw/core/nthw_phy_tile.c
@@ -954,7 +954,7 @@ uint32_t nthw_phy_tile_get_timestamp_comp_rx(nthw_phy_tile_t *p, uint8_t intf_no
 	return nthw_field_get_val32(p->mp_fld_port_comp_rx_compensation[intf_no]);
 }
 
-uint32_t nthw_phy_tile_read_eth(nthw_phy_tile_t *p, uint8_t intf_no, uint32_t address)
+static uint32_t nthw_phy_tile_read_eth(nthw_phy_tile_t *p, uint8_t intf_no, uint32_t address)
 {
 	nthw_register_update(p->mp_reg_port_eth_base[intf_no]);
 	nthw_field_set_val32(p->mp_fld_port_eth_base_cmd[intf_no], 0);
@@ -966,7 +966,8 @@ uint32_t nthw_phy_tile_read_eth(nthw_phy_tile_t *p, uint8_t intf_no, uint32_t ad
 	return nthw_field_get_updated(p->mp_fld_port_eth_data_data[intf_no]);
 }
 
-void nthw_phy_tile_write_eth(nthw_phy_tile_t *p, uint8_t intf_no, uint32_t address, uint32_t data)
+static void nthw_phy_tile_write_eth(nthw_phy_tile_t *p, uint8_t intf_no,
+	uint32_t address, uint32_t data)
 {
 	nthw_field_set_val_flush32(p->mp_fld_port_eth_data_data[intf_no], data);
 	nthw_register_update(p->mp_reg_port_eth_base[intf_no]);
diff --git a/drivers/net/ntnic/nthw/core/nthw_rpf.c b/drivers/net/ntnic/nthw/core/nthw_rpf.c
index d5c19e312b..6f06601de8 100644
--- a/drivers/net/ntnic/nthw/core/nthw_rpf.c
+++ b/drivers/net/ntnic/nthw/core/nthw_rpf.c
@@ -20,7 +20,7 @@ nthw_rpf_t *nthw_rpf_new(void)
 	return p;
 }
 
-void nthw_rpf_delete(nthw_rpf_t *p)
+static void nthw_rpf_delete(nthw_rpf_t *p)
 {
 	free(p);
 }
@@ -67,7 +67,7 @@ int nthw_rpf_init(nthw_rpf_t *p, nthw_fpga_t *p_fpga, int n_instance)
 	return 0;
 }
 
-void nthw_rpf_administrative_block(nthw_rpf_t *p)
+static void nthw_rpf_administrative_block(nthw_rpf_t *p)
 {
 	/* block all MAC ports */
 	nthw_register_update(p->mp_reg_control);
diff --git a/drivers/net/ntnic/nthw/core/nthw_si5340.c b/drivers/net/ntnic/nthw/core/nthw_si5340.c
index ceaa58e0f7..27f8653c9b 100644
--- a/drivers/net/ntnic/nthw/core/nthw_si5340.c
+++ b/drivers/net/ntnic/nthw/core/nthw_si5340.c
@@ -144,7 +144,7 @@ static int nthw_si5340_cfg(nthw_si5340_t *p, const void *p_data, int data_cnt,
 	return 0;
 }
 
-int nthw_si5340_config(nthw_si5340_t *p, const void *p_data, int data_cnt,
+static int nthw_si5340_config(nthw_si5340_t *p, const void *p_data, int data_cnt,
 	clk_profile_data_fmt_t data_format)
 {
 	const char *const p_adapter_id_str =
diff --git a/drivers/net/ntnic/nthw/flow_api/flow_api.c b/drivers/net/ntnic/nthw/flow_api/flow_api.c
index 90fc3f51a6..97594bd26d 100644
--- a/drivers/net/ntnic/nthw/flow_api/flow_api.c
+++ b/drivers/net/ntnic/nthw/flow_api/flow_api.c
@@ -375,68 +375,7 @@ static int nic_remove_eth_port_dev(struct flow_nic_dev *ndev, struct flow_eth_de
 	return -1;
 }
 
-static void flow_ndev_reset(struct flow_nic_dev *ndev)
-{
-	const struct profile_inline_ops *profile_inline_ops = get_profile_inline_ops();
-
-	if (profile_inline_ops == NULL) {
-		NT_LOG(ERR, FILTER, "%s: profile_inline module uninitialized", __func__);
-		return;
-	}
-
-	/* Delete all eth-port devices created on this NIC device */
-	while (ndev->eth_base) {
-		nthw_flow_delete_eth_dev(ndev->eth_base);
-		ndev->eth_base = NULL;
-	}
-
-	/* Error check */
-	while (ndev->flow_base) {
-		NT_LOG(ERR, FILTER,
-			"ERROR : Flows still defined but all eth-ports deleted. Flow %p",
-			ndev->flow_base);
-
-		profile_inline_ops->flow_destroy_profile_inline(ndev->flow_base->dev,
-			ndev->flow_base, NULL);
-	}
-
-	profile_inline_ops->done_flow_management_of_ndev_profile_inline(ndev);
-
-	km_free_ndev_resource_management(&ndev->km_res_handle);
-	kcc_free_ndev_resource_management(&ndev->kcc_res_handle);
-
-	ndev->flow_unique_id_counter = 0;
-
-	/*
-	 * free all resources default allocated, initially for this NIC DEV
-	 * Is not really needed since the bitmap will be freed in a sec. Therefore
-	 * only in debug mode
-	 */
-
-	/* Check if all resources has been released */
-	NT_LOG(DBG, FILTER, "Delete NIC DEV Adaptor %i", ndev->adapter_no);
-
-	for (unsigned int i = 0; i < RES_COUNT; i++) {
-		int err = 0;
-		NT_LOG(DBG, FILTER, "RES state for: %s", dbg_res_descr[i]);
-
-		for (unsigned int ii = 0; ii < ndev->res[i].resource_count; ii++) {
-			int ref = ndev->res[i].ref[ii];
-			int used = flow_nic_is_resource_used(ndev, i, ii);
-
-			if (ref || used) {
-				NT_LOG(DBG, FILTER, "  [%u]: ref cnt %i, used %i", ii, ref,
-					used);
-				err = 1;
-			}
-		}
-
-		if (err)
-			NT_LOG(DBG, FILTER, "ERROR - some resources not freed");
-	}
-}
-
-int nthw_flow_delete_eth_dev(struct flow_eth_dev *eth_dev)
+static int nthw_flow_delete_eth_dev(struct flow_eth_dev *eth_dev)
 {
 	const struct profile_inline_ops *profile_inline_ops = get_profile_inline_ops();
 
@@ -511,6 +450,68 @@ int nthw_flow_delete_eth_dev(struct flow_eth_dev *eth_dev)
 	return 0;
 }
 
+static void flow_ndev_reset(struct flow_nic_dev *ndev)
+{
+	const struct profile_inline_ops *profile_inline_ops = get_profile_inline_ops();
+
+	if (profile_inline_ops == NULL) {
+		NT_LOG(ERR, FILTER, "%s: profile_inline module uninitialized", __func__);
+		return;
+	}
+
+	/* Delete all eth-port devices created on this NIC device */
+	while (ndev->eth_base) {
+		nthw_flow_delete_eth_dev(ndev->eth_base);
+		ndev->eth_base = NULL;
+	}
+
+	/* Error check */
+	while (ndev->flow_base) {
+		NT_LOG(ERR, FILTER,
+			"ERROR : Flows still defined but all eth-ports deleted. Flow %p",
+			ndev->flow_base);
+
+		profile_inline_ops->flow_destroy_profile_inline(ndev->flow_base->dev,
+			ndev->flow_base, NULL);
+	}
+
+	profile_inline_ops->done_flow_management_of_ndev_profile_inline(ndev);
+
+	km_free_ndev_resource_management(&ndev->km_res_handle);
+	kcc_free_ndev_resource_management(&ndev->kcc_res_handle);
+
+	ndev->flow_unique_id_counter = 0;
+
+	/*
+	 * free all resources default allocated, initially for this NIC DEV
+	 * Is not really needed since the bitmap will be freed in a sec. Therefore
+	 * only in debug mode
+	 */
+
+	/* Check if all resources has been released */
+	NT_LOG(DBG, FILTER, "Delete NIC DEV Adaptor %i", ndev->adapter_no);
+
+	for (unsigned int i = 0; i < RES_COUNT; i++) {
+		int err = 0;
+		NT_LOG(DBG, FILTER, "RES state for: %s", dbg_res_descr[i]);
+
+		for (unsigned int ii = 0; ii < ndev->res[i].resource_count; ii++) {
+			int ref = ndev->res[i].ref[ii];
+			int used = flow_nic_is_resource_used(ndev, i, ii);
+
+			if (ref || used) {
+				NT_LOG(DBG, FILTER, "  [%u]: ref cnt %i, used %i", ii, ref,
+					used);
+				err = 1;
+			}
+		}
+
+		if (err)
+			NT_LOG(DBG, FILTER, "ERROR - some resources not freed");
+	}
+}
+
+
 /*
  * Flow API NIC Setup
  * Flow backend creation function - register and initialize common backend API to FPA modules
diff --git a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_cat.c b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_cat.c
index abe09bfad2..e778c7568a 100644
--- a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_cat.c
+++ b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_cat.c
@@ -230,114 +230,6 @@ static int cfn_reset(struct flow_api_backend_s *be, int i)
 	return err;
 }
 
-int hw_mod_cat_reset(struct flow_api_backend_s *be)
-{
-	/* Zero entire cache area */
-	nthw_zero_module_cache((struct common_func_s *)(&be->cat));
-
-	NT_LOG(DBG, FILTER, "INIT CAT CFN");
-
-	if (hw_mod_cat_cfn_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	if (_VER_ <= 18) {
-		NT_LOG(DBG, FILTER, "INIT CAT KCE");
-
-		if (hw_mod_cat_kce_flush(be, KM_FLM_IF_FIRST, 0, 0, ALL_ENTRIES))
-			return -1;
-
-		NT_LOG(DBG, FILTER, "INIT CAT KCS");
-
-		if (hw_mod_cat_kcs_flush(be, KM_FLM_IF_FIRST, 0, 0, ALL_ENTRIES))
-			return -1;
-
-		NT_LOG(DBG, FILTER, "INIT CAT FTE");
-
-		if (hw_mod_cat_fte_flush(be, KM_FLM_IF_FIRST, 0, 0, ALL_ENTRIES))
-			return -1;
-
-	} else {
-		NT_LOG(DBG, FILTER, "INIT CAT KCE 0");
-
-		if (hw_mod_cat_kce_flush(be, KM_FLM_IF_FIRST, be->cat.km_if_m0, 0, ALL_ENTRIES))
-			return -1;
-
-		NT_LOG(DBG, FILTER, "INIT CAT KCS 0");
-
-		if (hw_mod_cat_kcs_flush(be, KM_FLM_IF_FIRST, be->cat.km_if_m0, 0, ALL_ENTRIES))
-			return -1;
-
-		NT_LOG(DBG, FILTER, "INIT CAT FTE 0");
-
-		if (hw_mod_cat_fte_flush(be, KM_FLM_IF_FIRST, be->cat.km_if_m0, 0, ALL_ENTRIES))
-			return -1;
-
-		if (be->cat.km_if_count > 1) {
-			NT_LOG(DBG, FILTER, "INIT CAT KCE 1");
-
-			if (hw_mod_cat_kce_flush(be, KM_FLM_IF_SECOND, be->cat.km_if_m1, 0,
-					ALL_ENTRIES))
-				return -1;
-
-			NT_LOG(DBG, FILTER, "INIT CAT KCS 1");
-
-			if (hw_mod_cat_kcs_flush(be, KM_FLM_IF_SECOND, be->cat.km_if_m1, 0,
-					ALL_ENTRIES))
-				return -1;
-
-			NT_LOG(DBG, FILTER, "INIT CAT FTE 1");
-
-			if (hw_mod_cat_fte_flush(be, KM_FLM_IF_SECOND, be->cat.km_if_m1, 0,
-					ALL_ENTRIES))
-				return -1;
-		}
-	}
-
-	NT_LOG(DBG, FILTER, "INIT CAT CTE");
-
-	if (hw_mod_cat_cte_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	NT_LOG(DBG, FILTER, "INIT CAT CTS");
-
-	if (hw_mod_cat_cts_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	NT_LOG(DBG, FILTER, "INIT CAT COT");
-
-	if (hw_mod_cat_cot_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	NT_LOG(DBG, FILTER, "INIT CAT CCT");
-
-	if (hw_mod_cat_cct_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	NT_LOG(DBG, FILTER, "INIT CAT EXO");
-
-	if (hw_mod_cat_exo_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	NT_LOG(DBG, FILTER, "INIT CAT RCK");
-
-	if (hw_mod_cat_rck_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	NT_LOG(DBG, FILTER, "INIT CAT LEN");
-
-	if (hw_mod_cat_len_flush(be, 0, ALL_ENTRIES))
-		return -1;
-
-	if (be->cat.kcc_size) {
-		NT_LOG(DBG, FILTER, "INIT CAT KCC");
-
-		if (hw_mod_cat_kcc_flush(be, 0, ALL_ENTRIES))
-			return -1;
-	}
-
-	return 0;
-}
-
 int hw_mod_cat_cfn_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	switch (count) {
@@ -1449,7 +1341,7 @@ int hw_mod_cat_cot_set(struct flow_api_backend_s *be, enum hw_cat_e field, int i
 	return hw_mod_cat_cot_mod(be, field, index, &value, 0);
 }
 
-int hw_mod_cat_cct_flush(struct flow_api_backend_s *be, int start_idx, int count)
+static int hw_mod_cat_cct_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	if (count == ALL_ENTRIES)
 		count = be->cat.nb_cat_funcs * 4;
@@ -1462,7 +1354,7 @@ int hw_mod_cat_cct_flush(struct flow_api_backend_s *be, int start_idx, int count
 	return be->iface->cat_cct_flush(be->be_dev, &be->cat, start_idx, count);
 }
 
-int hw_mod_cat_kcc_flush(struct flow_api_backend_s *be, int start_idx, int count)
+static int hw_mod_cat_kcc_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	if (count == ALL_ENTRIES)
 		count = be->cat.kcc_size;
@@ -1475,7 +1367,7 @@ int hw_mod_cat_kcc_flush(struct flow_api_backend_s *be, int start_idx, int count
 	return be->iface->cat_kcc_flush(be->be_dev, &be->cat, start_idx, count);
 }
 
-int hw_mod_cat_exo_flush(struct flow_api_backend_s *be, int start_idx, int count)
+static int hw_mod_cat_exo_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	if (count == ALL_ENTRIES)
 		count = be->cat.nb_pm_ext;
@@ -1488,7 +1380,7 @@ int hw_mod_cat_exo_flush(struct flow_api_backend_s *be, int start_idx, int count
 	return be->iface->cat_exo_flush(be->be_dev, &be->cat, start_idx, count);
 }
 
-int hw_mod_cat_rck_flush(struct flow_api_backend_s *be, int start_idx, int count)
+static int hw_mod_cat_rck_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	if (count == ALL_ENTRIES)
 		count = be->cat.nb_pm_ext * 64;
@@ -1501,7 +1393,7 @@ int hw_mod_cat_rck_flush(struct flow_api_backend_s *be, int start_idx, int count
 	return be->iface->cat_rck_flush(be->be_dev, &be->cat, start_idx, count);
 }
 
-int hw_mod_cat_len_flush(struct flow_api_backend_s *be, int start_idx, int count)
+static int hw_mod_cat_len_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	if (count == ALL_ENTRIES)
 		count = be->cat.nb_len;
@@ -1513,3 +1405,111 @@ int hw_mod_cat_len_flush(struct flow_api_backend_s *be, int start_idx, int count
 
 	return be->iface->cat_len_flush(be->be_dev, &be->cat, start_idx, count);
 }
+
+int hw_mod_cat_reset(struct flow_api_backend_s *be)
+{
+	/* Zero entire cache area */
+	nthw_zero_module_cache((struct common_func_s *)(&be->cat));
+
+	NT_LOG(DBG, FILTER, "INIT CAT CFN");
+
+	if (hw_mod_cat_cfn_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	if (_VER_ <= 18) {
+		NT_LOG(DBG, FILTER, "INIT CAT KCE");
+
+		if (hw_mod_cat_kce_flush(be, KM_FLM_IF_FIRST, 0, 0, ALL_ENTRIES))
+			return -1;
+
+		NT_LOG(DBG, FILTER, "INIT CAT KCS");
+
+		if (hw_mod_cat_kcs_flush(be, KM_FLM_IF_FIRST, 0, 0, ALL_ENTRIES))
+			return -1;
+
+		NT_LOG(DBG, FILTER, "INIT CAT FTE");
+
+		if (hw_mod_cat_fte_flush(be, KM_FLM_IF_FIRST, 0, 0, ALL_ENTRIES))
+			return -1;
+
+	} else {
+		NT_LOG(DBG, FILTER, "INIT CAT KCE 0");
+
+		if (hw_mod_cat_kce_flush(be, KM_FLM_IF_FIRST, be->cat.km_if_m0, 0, ALL_ENTRIES))
+			return -1;
+
+		NT_LOG(DBG, FILTER, "INIT CAT KCS 0");
+
+		if (hw_mod_cat_kcs_flush(be, KM_FLM_IF_FIRST, be->cat.km_if_m0, 0, ALL_ENTRIES))
+			return -1;
+
+		NT_LOG(DBG, FILTER, "INIT CAT FTE 0");
+
+		if (hw_mod_cat_fte_flush(be, KM_FLM_IF_FIRST, be->cat.km_if_m0, 0, ALL_ENTRIES))
+			return -1;
+
+		if (be->cat.km_if_count > 1) {
+			NT_LOG(DBG, FILTER, "INIT CAT KCE 1");
+
+			if (hw_mod_cat_kce_flush(be, KM_FLM_IF_SECOND, be->cat.km_if_m1, 0,
+					ALL_ENTRIES))
+				return -1;
+
+			NT_LOG(DBG, FILTER, "INIT CAT KCS 1");
+
+			if (hw_mod_cat_kcs_flush(be, KM_FLM_IF_SECOND, be->cat.km_if_m1, 0,
+					ALL_ENTRIES))
+				return -1;
+
+			NT_LOG(DBG, FILTER, "INIT CAT FTE 1");
+
+			if (hw_mod_cat_fte_flush(be, KM_FLM_IF_SECOND, be->cat.km_if_m1, 0,
+					ALL_ENTRIES))
+				return -1;
+		}
+	}
+
+	NT_LOG(DBG, FILTER, "INIT CAT CTE");
+
+	if (hw_mod_cat_cte_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	NT_LOG(DBG, FILTER, "INIT CAT CTS");
+
+	if (hw_mod_cat_cts_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	NT_LOG(DBG, FILTER, "INIT CAT COT");
+
+	if (hw_mod_cat_cot_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	NT_LOG(DBG, FILTER, "INIT CAT CCT");
+
+	if (hw_mod_cat_cct_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	NT_LOG(DBG, FILTER, "INIT CAT EXO");
+
+	if (hw_mod_cat_exo_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	NT_LOG(DBG, FILTER, "INIT CAT RCK");
+
+	if (hw_mod_cat_rck_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	NT_LOG(DBG, FILTER, "INIT CAT LEN");
+
+	if (hw_mod_cat_len_flush(be, 0, ALL_ENTRIES))
+		return -1;
+
+	if (be->cat.kcc_size) {
+		NT_LOG(DBG, FILTER, "INIT CAT KCC");
+
+		if (hw_mod_cat_kcc_flush(be, 0, ALL_ENTRIES))
+			return -1;
+	}
+
+	return 0;
+}
diff --git a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_km.c b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_km.c
index e1c97f62f5..a1b9abae66 100644
--- a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_km.c
+++ b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_km.c
@@ -114,44 +114,6 @@ void hw_mod_km_free(struct flow_api_backend_s *be)
 	}
 }
 
-int hw_mod_km_reset(struct flow_api_backend_s *be)
-{
-	uint32_t tcam_v_set[3] = { 0x00000000, 0x00000000, 0x00000000 };
-
-	/* Zero entire cache area */
-	nthw_zero_module_cache((struct common_func_s *)(&be->km));
-
-	NT_LOG(DBG, FILTER, "INIT KM RCP");
-	hw_mod_km_rcp_flush(be, 0, ALL_ENTRIES);
-
-	/* init CAM - all zero */
-	NT_LOG(DBG, FILTER, "INIT KM CAM");
-	hw_mod_km_cam_flush(be, 0, 0, ALL_ENTRIES);
-
-	/* init TCAM - all zero */
-	NT_LOG(DBG, FILTER, "INIT KM TCAM");
-
-	for (unsigned int i = 0; i < be->km.nb_tcam_banks; i++) {
-		/* TCAM entries are cache controlled,
-		 * thus need to hard reset initially to sync cache with HW
-		 */
-		hw_mod_km_tcam_set(be, HW_KM_TCAM_BANK_RESET, i, 0, 0, tcam_v_set);
-	}
-
-	hw_mod_km_tcam_flush(be, 0, ALL_ENTRIES);
-
-	/* init TCI - all zero */
-	NT_LOG(DBG, FILTER, "INIT KM TCI");
-	hw_mod_km_tci_flush(be, 0, 0, ALL_ENTRIES);
-
-	NT_LOG(DBG, FILTER, "INIT KM TCQ");
-
-	for (unsigned int i = 0; i < be->km.nb_tcam_bank_width; i++)
-		hw_mod_km_tcq_flush(be, 0, i, be->km.nb_tcam_banks);
-
-	return 0;
-}
-
 int hw_mod_km_rcp_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	if (count == ALL_ENTRIES)
@@ -668,7 +630,8 @@ int hw_mod_km_tci_set(struct flow_api_backend_s *be, enum hw_km_e field, int ban
 	return hw_mod_km_tci_mod(be, field, bank, record, &value, 0);
 }
 
-int hw_mod_km_tcq_flush(struct flow_api_backend_s *be, int start_bank, int start_record, int count)
+static int hw_mod_km_tcq_flush(struct flow_api_backend_s *be, int start_bank,
+	int start_record, int count)
 {
 	if (count == ALL_ENTRIES)
 		count = be->km.nb_tcam_banks * be->km.nb_tcam_bank_width;
@@ -682,3 +645,41 @@ int hw_mod_km_tcq_flush(struct flow_api_backend_s *be, int start_bank, int start
 
 	return be->iface->km_tcq_flush(be->be_dev, &be->km, start_bank, start_record, count);
 }
+
+int hw_mod_km_reset(struct flow_api_backend_s *be)
+{
+	uint32_t tcam_v_set[3] = { 0x00000000, 0x00000000, 0x00000000 };
+
+	/* Zero entire cache area */
+	nthw_zero_module_cache((struct common_func_s *)(&be->km));
+
+	NT_LOG(DBG, FILTER, "INIT KM RCP");
+	hw_mod_km_rcp_flush(be, 0, ALL_ENTRIES);
+
+	/* init CAM - all zero */
+	NT_LOG(DBG, FILTER, "INIT KM CAM");
+	hw_mod_km_cam_flush(be, 0, 0, ALL_ENTRIES);
+
+	/* init TCAM - all zero */
+	NT_LOG(DBG, FILTER, "INIT KM TCAM");
+
+	for (unsigned int i = 0; i < be->km.nb_tcam_banks; i++) {
+		/* TCAM entries are cache controlled,
+		 * thus need to hard reset initially to sync cache with HW
+		 */
+		hw_mod_km_tcam_set(be, HW_KM_TCAM_BANK_RESET, i, 0, 0, tcam_v_set);
+	}
+
+	hw_mod_km_tcam_flush(be, 0, ALL_ENTRIES);
+
+	/* init TCI - all zero */
+	NT_LOG(DBG, FILTER, "INIT KM TCI");
+	hw_mod_km_tci_flush(be, 0, 0, ALL_ENTRIES);
+
+	NT_LOG(DBG, FILTER, "INIT KM TCQ");
+
+	for (unsigned int i = 0; i < be->km.nb_tcam_bank_width; i++)
+		hw_mod_km_tcq_flush(be, 0, i, be->km.nb_tcam_banks);
+
+	return 0;
+}
diff --git a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_pdb.c b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_pdb.c
index 4e8bd73d90..c5357a98c5 100644
--- a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_pdb.c
+++ b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_pdb.c
@@ -58,20 +58,6 @@ void hw_mod_pdb_free(struct flow_api_backend_s *be)
 	}
 }
 
-int hw_mod_pdb_reset(struct flow_api_backend_s *be)
-{
-	int err = 0;
-	/* Zero entire cache area */
-	nthw_zero_module_cache((struct common_func_s *)(&be->hsh));
-
-	NT_LOG(DBG, FILTER, "INIT PDB RCP");
-	err |= hw_mod_pdb_rcp_flush(be, 0, ALL_ENTRIES);
-
-	NT_LOG(DBG, FILTER, "INIT PDB CONFIG");
-	err |= hw_mod_pdb_config_flush(be);
-	return err;
-}
-
 int hw_mod_pdb_rcp_flush(struct flow_api_backend_s *be, int start_idx, int count)
 {
 	if (count == ALL_ENTRIES)
@@ -243,7 +229,21 @@ int hw_mod_pdb_rcp_set(struct flow_api_backend_s *be, enum hw_pdb_e field, uint3
 	return hw_mod_pdb_rcp_mod(be, field, index, &value, 0);
 }
 
-int hw_mod_pdb_config_flush(struct flow_api_backend_s *be)
+static int hw_mod_pdb_config_flush(struct flow_api_backend_s *be)
 {
 	return be->iface->pdb_config_flush(be->be_dev, &be->pdb);
 }
+
+int hw_mod_pdb_reset(struct flow_api_backend_s *be)
+{
+	int err = 0;
+	/* Zero entire cache area */
+	nthw_zero_module_cache((struct common_func_s *)(&be->hsh));
+
+	NT_LOG(DBG, FILTER, "INIT PDB RCP");
+	err |= hw_mod_pdb_rcp_flush(be, 0, ALL_ENTRIES);
+
+	NT_LOG(DBG, FILTER, "INIT PDB CONFIG");
+	err |= hw_mod_pdb_config_flush(be);
+	return err;
+}
diff --git a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_tpe.c b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_tpe.c
index b2915efce5..d55adc6687 100644
--- a/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_tpe.c
+++ b/drivers/net/ntnic/nthw/flow_api/hw_mod/hw_mod_tpe.c
@@ -402,8 +402,8 @@ static int hw_mod_tpe_ifr_counters_mod(struct flow_api_backend_s *be, enum hw_tp
 	return 0;
 }
 
-int hw_mod_tpe_ifr_counters_set(struct flow_api_backend_s *be, enum hw_tpe_e field, int index,
-	uint32_t value)
+static int hw_mod_tpe_ifr_counters_set(struct flow_api_backend_s *be, enum hw_tpe_e field,
+	int index, uint32_t value)
 {
 	return hw_mod_tpe_ifr_counters_mod(be, field, index, &value, 0);
 }
diff --git a/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.c b/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.c
index 52ca79f104..18d550a327 100644
--- a/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.c
+++ b/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.c
@@ -319,82 +319,6 @@ void hw_db_inline_destroy(void *db_handle)
 	free(db);
 }
 
-void hw_db_inline_deref_idxs(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_idx *idxs,
-	uint32_t size)
-{
-	for (uint32_t i = 0; i < size; ++i) {
-		switch (idxs[i].type) {
-		case HW_DB_IDX_TYPE_NONE:
-			break;
-
-		case HW_DB_IDX_TYPE_MATCH_SET:
-			hw_db_inline_match_set_deref(ndev, db_handle,
-				*(struct hw_db_match_set_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_ACTION_SET:
-			hw_db_inline_action_set_deref(ndev, db_handle,
-				*(struct hw_db_action_set_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_CAT:
-			hw_db_inline_cat_deref(ndev, db_handle, *(struct hw_db_cat_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_COT:
-			hw_db_inline_cot_deref(ndev, db_handle, *(struct hw_db_cot_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_QSL:
-			hw_db_inline_qsl_deref(ndev, db_handle, *(struct hw_db_qsl_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_SLC_LR:
-			hw_db_inline_slc_lr_deref(ndev, db_handle,
-				*(struct hw_db_slc_lr_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_TPE:
-			hw_db_inline_tpe_deref(ndev, db_handle, *(struct hw_db_tpe_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_TPE_EXT:
-			hw_db_inline_tpe_ext_deref(ndev, db_handle,
-				*(struct hw_db_tpe_ext_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_FLM_RCP:
-			hw_db_inline_flm_deref(ndev, db_handle, *(struct hw_db_flm_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_FLM_FT:
-			hw_db_inline_flm_ft_deref(ndev, db_handle,
-				*(struct hw_db_flm_ft *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_KM_RCP:
-			hw_db_inline_km_deref(ndev, db_handle, *(struct hw_db_km_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_KM_FT:
-			hw_db_inline_km_ft_deref(ndev, db_handle, *(struct hw_db_km_ft *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_HSH:
-			hw_db_inline_hsh_deref(ndev, db_handle, *(struct hw_db_hsh_idx *)&idxs[i]);
-			break;
-
-		case HW_DB_IDX_TYPE_FLM_SCRUB:
-			hw_db_inline_scrub_deref(ndev, db_handle,
-				*(struct hw_db_flm_scrub_idx *)&idxs[i]);
-			break;
-
-		default:
-			break;
-		}
-	}
-}
-
 struct hw_db_idx *hw_db_inline_find_idx(struct flow_nic_dev *ndev, void *db_handle,
 	enum hw_db_idx_type type, struct hw_db_idx *idxs, uint32_t size)
 {
@@ -1508,6 +1432,16 @@ static int hw_db_inline_match_set_compare(const struct hw_db_inline_match_set_da
 		data1->km_ft.raw == data2->km_ft.raw && data1->jump == data2->jump;
 }
 
+static void hw_db_inline_match_set_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_match_set_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->match_set[idx.ids].ref += 1;
+}
+
 struct hw_db_match_set_idx
 hw_db_inline_match_set_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_match_set_data *data)
@@ -1563,17 +1497,7 @@ hw_db_inline_match_set_add(struct flow_nic_dev *ndev, void *db_handle,
 	return idx;
 }
 
-void hw_db_inline_match_set_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_match_set_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->match_set[idx.ids].ref += 1;
-}
-
-void hw_db_inline_match_set_deref(struct flow_nic_dev *ndev, void *db_handle,
+static void hw_db_inline_match_set_deref(struct flow_nic_dev *ndev, void *db_handle,
 	struct hw_db_match_set_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -1619,6 +1543,16 @@ static int hw_db_inline_action_set_compare(const struct hw_db_inline_action_set_
 		data1->hsh.raw == data2->hsh.raw && data1->scrub.raw == data2->scrub.raw;
 }
 
+static void hw_db_inline_action_set_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_action_set_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->action_set[idx.ids].ref += 1;
+}
+
 struct hw_db_action_set_idx
 hw_db_inline_action_set_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_action_set_data *data)
@@ -1654,17 +1588,7 @@ hw_db_inline_action_set_add(struct flow_nic_dev *ndev, void *db_handle,
 	return idx;
 }
 
-void hw_db_inline_action_set_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_action_set_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->action_set[idx.ids].ref += 1;
-}
-
-void hw_db_inline_action_set_deref(struct flow_nic_dev *ndev, void *db_handle,
+static void hw_db_inline_action_set_deref(struct flow_nic_dev *ndev, void *db_handle,
 	struct hw_db_action_set_idx idx)
 {
 	(void)ndev;
@@ -1693,6 +1617,15 @@ static int hw_db_inline_cot_compare(const struct hw_db_inline_cot_data *data1,
 		data1->frag_rcp == data2->frag_rcp;
 }
 
+static void hw_db_inline_cot_ref(struct flow_nic_dev *ndev __rte_unused, void *db_handle,
+	struct hw_db_cot_idx idx)
+{
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->cot[idx.ids].ref += 1;
+}
+
 struct hw_db_cot_idx hw_db_inline_cot_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_cot_data *data)
 {
@@ -1728,16 +1661,7 @@ struct hw_db_cot_idx hw_db_inline_cot_add(struct flow_nic_dev *ndev, void *db_ha
 	return idx;
 }
 
-void hw_db_inline_cot_ref(struct flow_nic_dev *ndev __rte_unused, void *db_handle,
-	struct hw_db_cot_idx idx)
-{
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->cot[idx.ids].ref += 1;
-}
-
-void hw_db_inline_cot_deref(struct flow_nic_dev *ndev __rte_unused, void *db_handle,
+static void hw_db_inline_cot_deref(struct flow_nic_dev *ndev __rte_unused, void *db_handle,
 	struct hw_db_cot_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -1791,6 +1715,15 @@ static int hw_db_inline_qsl_compare(const struct hw_db_inline_qsl_data *data1,
 	return 1;
 }
 
+static void hw_db_inline_qsl_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_qsl_idx idx)
+{
+	(void)db_handle;
+
+	if (!idx.error && idx.ids != 0)
+		nthw_flow_nic_ref_resource(ndev, RES_QSL_RCP, idx.ids);
+}
+
 struct hw_db_qsl_idx hw_db_inline_qsl_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_qsl_data *data)
 {
@@ -1884,15 +1817,8 @@ struct hw_db_qsl_idx hw_db_inline_qsl_add(struct flow_nic_dev *ndev, void *db_ha
 	return qsl_idx;
 }
 
-void hw_db_inline_qsl_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_qsl_idx idx)
-{
-	(void)db_handle;
-
-	if (!idx.error && idx.ids != 0)
-		nthw_flow_nic_ref_resource(ndev, RES_QSL_RCP, idx.ids);
-}
-
-void hw_db_inline_qsl_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_qsl_idx idx)
+static void hw_db_inline_qsl_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_qsl_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
 
@@ -1937,6 +1863,16 @@ static int hw_db_inline_slc_lr_compare(const struct hw_db_inline_slc_lr_data *da
 		data1->head_slice_ofs == data2->head_slice_ofs;
 }
 
+static void hw_db_inline_slc_lr_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_slc_lr_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->slc_lr[idx.ids].ref += 1;
+}
+
 struct hw_db_slc_lr_idx hw_db_inline_slc_lr_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_slc_lr_data *data)
 {
@@ -1977,17 +1913,7 @@ struct hw_db_slc_lr_idx hw_db_inline_slc_lr_add(struct flow_nic_dev *ndev, void
 	return idx;
 }
 
-void hw_db_inline_slc_lr_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_slc_lr_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->slc_lr[idx.ids].ref += 1;
-}
-
-void hw_db_inline_slc_lr_deref(struct flow_nic_dev *ndev, void *db_handle,
+static void hw_db_inline_slc_lr_deref(struct flow_nic_dev *ndev, void *db_handle,
 	struct hw_db_slc_lr_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -2044,6 +1970,16 @@ static int hw_db_inline_tpe_compare(const struct hw_db_inline_tpe_data *data1,
 		data1->len_c_sub_dyn == data2->len_c_sub_dyn;
 }
 
+static void hw_db_inline_tpe_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_tpe_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->tpe[idx.ids].ref += 1;
+}
+
 struct hw_db_tpe_idx hw_db_inline_tpe_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_tpe_data *data)
 {
@@ -2173,16 +2109,8 @@ struct hw_db_tpe_idx hw_db_inline_tpe_add(struct flow_nic_dev *ndev, void *db_ha
 	return idx;
 }
 
-void hw_db_inline_tpe_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_tpe_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->tpe[idx.ids].ref += 1;
-}
-
-void hw_db_inline_tpe_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_tpe_idx idx)
+static void hw_db_inline_tpe_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_tpe_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
 
@@ -2229,6 +2157,16 @@ static int hw_db_inline_tpe_ext_compare(const struct hw_db_inline_tpe_ext_data *
 		memcmp(data1->hdr8, data2->hdr8, HW_DB_INLINE_MAX_ENCAP_SIZE) == 0;
 }
 
+static void hw_db_inline_tpe_ext_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_tpe_ext_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->tpe_ext[idx.ids].ref += 1;
+}
+
 struct hw_db_tpe_ext_idx hw_db_inline_tpe_ext_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_tpe_ext_data *data)
 {
@@ -2291,17 +2229,7 @@ struct hw_db_tpe_ext_idx hw_db_inline_tpe_ext_add(struct flow_nic_dev *ndev, voi
 	return idx;
 }
 
-void hw_db_inline_tpe_ext_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_tpe_ext_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->tpe_ext[idx.ids].ref += 1;
-}
-
-void hw_db_inline_tpe_ext_deref(struct flow_nic_dev *ndev, void *db_handle,
+static void hw_db_inline_tpe_ext_deref(struct flow_nic_dev *ndev, void *db_handle,
 	struct hw_db_tpe_ext_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -2337,6 +2265,16 @@ void hw_db_inline_tpe_ext_deref(struct flow_nic_dev *ndev, void *db_handle,
 /* CAT                                                                        */
 /******************************************************************************/
 
+static void hw_db_inline_cat_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_cat_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->cat[idx.ids].ref += 1;
+}
+
 static int hw_db_inline_cat_compare(const struct hw_db_inline_cat_data *data1,
 	const struct hw_db_inline_cat_data *data2)
 {
@@ -2389,16 +2327,8 @@ struct hw_db_cat_idx hw_db_inline_cat_add(struct flow_nic_dev *ndev, void *db_ha
 	return idx;
 }
 
-void hw_db_inline_cat_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_cat_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->cat[idx.ids].ref += 1;
-}
-
-void hw_db_inline_cat_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_cat_idx idx)
+static void hw_db_inline_cat_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_cat_idx idx)
 {
 	(void)ndev;
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -2424,6 +2354,15 @@ static int hw_db_inline_km_compare(const struct hw_db_inline_km_rcp_data *data1,
 	return data1->rcp == data2->rcp;
 }
 
+static void hw_db_inline_km_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->km[idx.id1].ref += 1;
+}
+
 struct hw_db_km_idx hw_db_inline_km_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_km_rcp_data *data)
 {
@@ -2457,16 +2396,8 @@ struct hw_db_km_idx hw_db_inline_km_add(struct flow_nic_dev *ndev, void *db_hand
 	return idx;
 }
 
-void hw_db_inline_km_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->km[idx.id1].ref += 1;
-}
-
-void hw_db_inline_km_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_idx idx)
+static void hw_db_inline_km_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_km_idx idx)
 {
 	(void)ndev;
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -2493,6 +2424,18 @@ static int hw_db_inline_km_ft_compare(const struct hw_db_inline_km_ft_data *data
 		data1->action_set.raw == data2->action_set.raw;
 }
 
+static void hw_db_inline_km_ft_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_km_ft idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error) {
+		uint32_t cat_offset = idx.id3 * db->nb_cat;
+		db->km[idx.id2].ft[cat_offset + idx.id1].ref += 1;
+	}
+}
+
 struct hw_db_km_ft hw_db_inline_km_ft_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_km_ft_data *data)
 {
@@ -2538,18 +2481,8 @@ struct hw_db_km_ft hw_db_inline_km_ft_add(struct flow_nic_dev *ndev, void *db_ha
 	return idx;
 }
 
-void hw_db_inline_km_ft_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_ft idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error) {
-		uint32_t cat_offset = idx.id3 * db->nb_cat;
-		db->km[idx.id2].ft[cat_offset + idx.id1].ref += 1;
-	}
-}
-
-void hw_db_inline_km_ft_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_ft idx)
+static void hw_db_inline_km_ft_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_km_ft idx)
 {
 	(void)ndev;
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -2590,6 +2523,16 @@ static int hw_db_inline_flm_compare(const struct hw_db_inline_flm_rcp_data *data
 	return 1;
 }
 
+static void hw_db_inline_flm_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_flm_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->flm[idx.id1].ref += 1;
+}
+
 struct hw_db_flm_idx hw_db_inline_flm_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_flm_rcp_data *data, int group)
 {
@@ -2653,16 +2596,8 @@ struct hw_db_flm_idx hw_db_inline_flm_add(struct flow_nic_dev *ndev, void *db_ha
 	return idx;
 }
 
-void hw_db_inline_flm_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_flm_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->flm[idx.id1].ref += 1;
-}
-
-void hw_db_inline_flm_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_flm_idx idx)
+static void hw_db_inline_flm_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_flm_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
 
@@ -2693,6 +2628,16 @@ static int hw_db_inline_flm_ft_compare(const struct hw_db_inline_flm_ft_data *da
 		data1->action_set.raw == data2->action_set.raw;
 }
 
+static void hw_db_inline_flm_ft_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_flm_ft idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error && idx.id3 == 0)
+		db->flm[idx.id2].ft[idx.id1].ref += 1;
+}
+
 struct hw_db_flm_ft hw_db_inline_flm_ft_default(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_flm_ft_data *data)
 {
@@ -2784,16 +2729,8 @@ struct hw_db_flm_ft hw_db_inline_flm_ft_add(struct flow_nic_dev *ndev, void *db_
 	return idx;
 }
 
-void hw_db_inline_flm_ft_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_flm_ft idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error && idx.id3 == 0)
-		db->flm[idx.id2].ft[idx.id1].ref += 1;
-}
-
-void hw_db_inline_flm_ft_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_flm_ft idx)
+static void hw_db_inline_flm_ft_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_flm_ft idx)
 {
 	(void)ndev;
 	(void)db_handle;
@@ -2829,6 +2766,16 @@ static int hw_db_inline_hsh_compare(const struct hw_db_inline_hsh_data *data1,
 	return data1->func == data2->func && data1->hash_mask == data2->hash_mask;
 }
 
+static void hw_db_inline_hsh_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_hsh_idx idx)
+{
+	(void)ndev;
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->hsh[idx.ids].ref += 1;
+}
+
 struct hw_db_hsh_idx hw_db_inline_hsh_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_hsh_data *data)
 {
@@ -2890,16 +2837,8 @@ struct hw_db_hsh_idx hw_db_inline_hsh_add(struct flow_nic_dev *ndev, void *db_ha
 	return idx;
 }
 
-void hw_db_inline_hsh_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_hsh_idx idx)
-{
-	(void)ndev;
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->hsh[idx.ids].ref += 1;
-}
-
-void hw_db_inline_hsh_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_hsh_idx idx)
+static void hw_db_inline_hsh_deref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_hsh_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
 
@@ -2938,6 +2877,17 @@ static int hw_db_inline_scrub_compare(const struct hw_db_inline_scrub_data *data
 	return data1->timeout == data2->timeout;
 }
 
+static void hw_db_inline_scrub_ref(struct flow_nic_dev *ndev, void *db_handle,
+	struct hw_db_flm_scrub_idx idx)
+{
+	(void)ndev;
+
+	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
+
+	if (!idx.error)
+		db->scrub[idx.ids].ref += 1;
+}
+
 struct hw_db_flm_scrub_idx hw_db_inline_scrub_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_scrub_data *data)
 {
@@ -2994,18 +2944,7 @@ struct hw_db_flm_scrub_idx hw_db_inline_scrub_add(struct flow_nic_dev *ndev, voi
 	return idx;
 }
 
-void hw_db_inline_scrub_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_flm_scrub_idx idx)
-{
-	(void)ndev;
-
-	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
-
-	if (!idx.error)
-		db->scrub[idx.ids].ref += 1;
-}
-
-void hw_db_inline_scrub_deref(struct flow_nic_dev *ndev, void *db_handle,
+static void hw_db_inline_scrub_deref(struct flow_nic_dev *ndev, void *db_handle,
 	struct hw_db_flm_scrub_idx idx)
 {
 	struct hw_db_inline_resource_db *db = (struct hw_db_inline_resource_db *)db_handle;
@@ -3030,3 +2969,79 @@ void hw_db_inline_scrub_deref(struct flow_nic_dev *ndev, void *db_handle,
 		db->scrub[idx.ids].ref = 0;
 	}
 }
+
+void hw_db_inline_deref_idxs(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_idx *idxs,
+	uint32_t size)
+{
+	for (uint32_t i = 0; i < size; ++i) {
+		switch (idxs[i].type) {
+		case HW_DB_IDX_TYPE_NONE:
+			break;
+
+		case HW_DB_IDX_TYPE_MATCH_SET:
+			hw_db_inline_match_set_deref(ndev, db_handle,
+				*(struct hw_db_match_set_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_ACTION_SET:
+			hw_db_inline_action_set_deref(ndev, db_handle,
+				*(struct hw_db_action_set_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_CAT:
+			hw_db_inline_cat_deref(ndev, db_handle, *(struct hw_db_cat_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_COT:
+			hw_db_inline_cot_deref(ndev, db_handle, *(struct hw_db_cot_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_QSL:
+			hw_db_inline_qsl_deref(ndev, db_handle, *(struct hw_db_qsl_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_SLC_LR:
+			hw_db_inline_slc_lr_deref(ndev, db_handle,
+				*(struct hw_db_slc_lr_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_TPE:
+			hw_db_inline_tpe_deref(ndev, db_handle, *(struct hw_db_tpe_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_TPE_EXT:
+			hw_db_inline_tpe_ext_deref(ndev, db_handle,
+				*(struct hw_db_tpe_ext_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_FLM_RCP:
+			hw_db_inline_flm_deref(ndev, db_handle, *(struct hw_db_flm_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_FLM_FT:
+			hw_db_inline_flm_ft_deref(ndev, db_handle,
+				*(struct hw_db_flm_ft *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_KM_RCP:
+			hw_db_inline_km_deref(ndev, db_handle, *(struct hw_db_km_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_KM_FT:
+			hw_db_inline_km_ft_deref(ndev, db_handle, *(struct hw_db_km_ft *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_HSH:
+			hw_db_inline_hsh_deref(ndev, db_handle, *(struct hw_db_hsh_idx *)&idxs[i]);
+			break;
+
+		case HW_DB_IDX_TYPE_FLM_SCRUB:
+			hw_db_inline_scrub_deref(ndev, db_handle,
+				*(struct hw_db_flm_scrub_idx *)&idxs[i]);
+			break;
+
+		default:
+			break;
+		}
+	}
+}
diff --git a/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.h b/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.h
index aa046b68a7..e7f66dc075 100644
--- a/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.h
+++ b/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.h
@@ -298,96 +298,43 @@ void hw_db_inline_dump_cfn(struct flow_nic_dev *ndev, void *db_handle, FILE *fil
 struct hw_db_match_set_idx
 hw_db_inline_match_set_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_match_set_data *data);
-void hw_db_inline_match_set_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_match_set_idx idx);
-void hw_db_inline_match_set_deref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_match_set_idx idx);
-
 struct hw_db_action_set_idx
 hw_db_inline_action_set_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_action_set_data *data);
-void hw_db_inline_action_set_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_action_set_idx idx);
-void hw_db_inline_action_set_deref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_action_set_idx idx);
-
 /**/
 
 struct hw_db_cot_idx hw_db_inline_cot_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_cot_data *data);
-void hw_db_inline_cot_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_cot_idx idx);
-void hw_db_inline_cot_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_cot_idx idx);
-
 struct hw_db_qsl_idx hw_db_inline_qsl_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_qsl_data *data);
-void hw_db_inline_qsl_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_qsl_idx idx);
-void hw_db_inline_qsl_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_qsl_idx idx);
-
 struct hw_db_slc_lr_idx hw_db_inline_slc_lr_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_slc_lr_data *data);
-void hw_db_inline_slc_lr_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_slc_lr_idx idx);
-void hw_db_inline_slc_lr_deref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_slc_lr_idx idx);
-
 struct hw_db_tpe_idx hw_db_inline_tpe_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_tpe_data *data);
-void hw_db_inline_tpe_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_tpe_idx idx);
-void hw_db_inline_tpe_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_tpe_idx idx);
-
 struct hw_db_tpe_ext_idx hw_db_inline_tpe_ext_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_tpe_ext_data *data);
-void hw_db_inline_tpe_ext_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_tpe_ext_idx idx);
-void hw_db_inline_tpe_ext_deref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_tpe_ext_idx idx);
-
 struct hw_db_hsh_idx hw_db_inline_hsh_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_hsh_data *data);
-void hw_db_inline_hsh_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_hsh_idx idx);
-void hw_db_inline_hsh_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_hsh_idx idx);
-
 /**/
 
 struct hw_db_cat_idx hw_db_inline_cat_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_cat_data *data);
-void hw_db_inline_cat_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_cat_idx idx);
-void hw_db_inline_cat_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_cat_idx idx);
-
 /**/
 
 struct hw_db_km_idx hw_db_inline_km_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_km_rcp_data *data);
-void hw_db_inline_km_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_idx idx);
-void hw_db_inline_km_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_idx idx);
-
 struct hw_db_km_ft hw_db_inline_km_ft_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_km_ft_data *data);
-void hw_db_inline_km_ft_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_ft idx);
-void hw_db_inline_km_ft_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_km_ft idx);
-
 /**/
 
 struct hw_db_flm_idx hw_db_inline_flm_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_flm_rcp_data *data, int group);
-void hw_db_inline_flm_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_flm_idx idx);
-void hw_db_inline_flm_deref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_flm_idx idx);
-
 struct hw_db_flm_ft hw_db_inline_flm_ft_default(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_flm_ft_data *data);
 struct hw_db_flm_ft hw_db_inline_flm_ft_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_flm_ft_data *data);
-void hw_db_inline_flm_ft_ref(struct flow_nic_dev *ndev, void *db_handle, struct hw_db_flm_ft idx);
-void hw_db_inline_flm_ft_deref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_flm_ft idx);
-
 struct hw_db_flm_scrub_idx hw_db_inline_scrub_add(struct flow_nic_dev *ndev, void *db_handle,
 	const struct hw_db_inline_scrub_data *data);
-void hw_db_inline_scrub_ref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_flm_scrub_idx idx);
-void hw_db_inline_scrub_deref(struct flow_nic_dev *ndev, void *db_handle,
-	struct hw_db_flm_scrub_idx idx);
-
 int hw_db_inline_setup_mbr_filter(struct flow_nic_dev *ndev, uint32_t cat_hw_id, uint32_t ft,
 	uint32_t qsl_hw_id);
 
diff --git a/drivers/net/ntnic/nthw/model/nthw_fpga_model.c b/drivers/net/ntnic/nthw/model/nthw_fpga_model.c
index 5256adc648..3655c86f51 100644
--- a/drivers/net/ntnic/nthw/model/nthw_fpga_model.c
+++ b/drivers/net/ntnic/nthw/model/nthw_fpga_model.c
@@ -171,6 +171,191 @@ int nthw_fpga_extract_rev_id(const uint64_t n_fpga_ident)
 {
 	return (uint16_t)(n_fpga_ident & 0xFF);
 }
+/*
+ * Field
+ */
+nthw_field_t *nthw_field_new(void)
+{
+	nthw_field_t *p = malloc(sizeof(nthw_field_t));
+
+	return p;
+}
+
+static void nthw_field_init(nthw_field_t *p, nthw_register_t *p_reg,
+	const nthw_fpga_field_init_s *p_init)
+{
+	p->mp_owner = p_reg;
+
+	p->mn_debug_mode = p_reg->mn_debug_mode;
+
+	p->mn_id = p_init->id;
+	p->mn_bit_width = p_init->bw;
+	p->mn_bit_pos_low = p_init->low;
+	p->mn_reset_val = (uint32_t)p_init->reset_val;
+	p->mn_first_word = p_init->low / 32;
+	p->mn_first_bit = p_init->low % 32;
+	p->mn_front_mask = 0;
+	p->mn_body_length = 0;
+	p->mn_words = (p_init->bw + 0x1f) / 0x20;
+	p->mn_tail_mask = 0;
+
+	{
+		int bits_remaining = p_init->bw;
+		int front_mask_length = 32 - p->mn_first_bit;
+
+		if (front_mask_length > bits_remaining)
+			front_mask_length = bits_remaining;
+
+		bits_remaining -= front_mask_length;
+
+		p->mn_front_mask =
+			(uint32_t)(((1ULL << front_mask_length) - 1) << p->mn_first_bit);
+
+		p->mn_body_length = bits_remaining / 32;
+		bits_remaining -= p->mn_body_length * 32;
+		p->mn_tail_mask = (1 << bits_remaining) - 1;
+
+		if (p->mn_debug_mode >= 0x100) {
+			NT_LOG_DBGX(DBG, NTHW,
+				"fldid=%08" PRIu32 ": [%08" PRIu16 ":%08" PRIu16 "] %08" PRIu16 "/%08"
+				PRIu16 ": (%08i ,%08" PRIu32 ") (0x%08" PRIx32 ",%08"
+				PRIu32 ",0x%08" PRIx32 ")",
+				p_init->id, p_init->low, (p_init->low + p_init->bw),
+				p_init->bw, ((p_init->bw + 31) / 32), p->mn_first_word,
+				p->mn_first_bit, p->mn_front_mask, p->mn_body_length,
+				p->mn_tail_mask);
+		}
+	}
+}
+
+static void nthw_field_reset(const nthw_field_t *p)
+{
+	nthw_field_set_val32(p, (uint32_t)p->mn_reset_val);
+}
+
+/*
+ * Register
+ */
+nthw_register_t *nthw_register_new(void)
+{
+	nthw_register_t *p = malloc(sizeof(nthw_register_t));
+
+	return p;
+}
+
+static void nthw_register_init(nthw_register_t *p, nthw_module_t *p_module,
+	nthw_fpga_register_init_s *p_init)
+{
+	int i;
+
+	p->mp_owner = p_module;
+
+	p->mn_id = p_init->id;
+	p->mn_bit_width = p_init->bw;
+	p->mn_addr_rel = p_init->addr_rel;
+	p->mn_addr = p_module->mn_addr_base + p_init->addr_rel;
+	p->mn_type = p_init->type;
+	/* Old P200 registers have no bw at register level - default to BW=-1 */
+	p->mn_len = ((p_init->bw != (uint16_t)-1) ? ((p_init->bw + 31) >> 5) : 1);
+	p->mn_debug_mode = p_module->mn_debug_mode;
+
+	p->mn_fields = p_init->nb_fields;
+
+	if (p->mn_fields) {
+		p->mpa_fields = malloc(p->mn_fields * sizeof(nthw_field_t *));
+
+		if (p->mpa_fields) {
+			memset(p->mpa_fields, 0, (p->mn_fields * sizeof(nthw_field_t *)));
+
+			for (i = 0; i < p->mn_fields; i++) {
+				nthw_field_t *p_field = nthw_field_new();
+
+				nthw_field_init(p_field, p, &p_init->fields[i]);
+				p->mpa_fields[i] = p_field;
+			}
+
+			p->mp_shadow = malloc(p->mn_len * sizeof(uint32_t));
+
+			if (p->mp_shadow)
+				memset(p->mp_shadow, 0x00, (p->mn_len * sizeof(uint32_t)));
+
+			p->mp_dirty = malloc(p->mn_len * sizeof(bool));
+
+			if (p->mp_dirty)
+				memset(p->mp_dirty, 0x00, (p->mn_len * sizeof(bool)));
+		}
+	}
+}
+
+/*
+ * Param
+ */
+nthw_param_t *nthw_param_new(void)
+{
+	nthw_param_t *p = malloc(sizeof(nthw_param_t));
+
+	return p;
+}
+
+static void nthw_param_init(nthw_param_t *p, nthw_fpga_t *p_fpga, nthw_fpga_prod_param_s *p_init)
+{
+	p->mp_owner = p_fpga;
+	p->mp_init = p_init;
+
+	p->mn_param_id = p_init->id;
+	p->mn_param_value = p_init->value;
+}
+
+/*
+ * Module
+ */
+nthw_module_t *nthw_module_new(void)
+{
+	nthw_module_t *p = malloc(sizeof(nthw_module_t));
+
+	return p;
+}
+
+static void nthw_module_init(nthw_module_t *p, nthw_fpga_t *p_fpga, nthw_fpga_module_init_s *p_init)
+{
+	int i;
+
+	p->mp_owner = p_fpga;
+	p->mp_init = p_init;
+
+	p->mn_mod_id = p_init->id;
+	p->mn_instance = p_init->instance;
+
+	/* Copy debug mode from owner */
+	if (p->mp_owner)
+		p->mn_debug_mode = p->mp_owner->m_debug_mode;
+
+	else
+		p->mn_debug_mode = 0;
+
+	p->mn_mod_def_id = p_init->def_id;
+	p->mn_major_version = p_init->major_version;
+	p->mn_minor_version = p_init->minor_version;
+	p->mn_bus = p_init->bus_id;
+	p->mn_addr_base = p_init->addr_base;
+
+	p->mn_registers = p_init->nb_registers;
+
+	if (p->mn_registers) {
+		p->mpa_registers = malloc(p->mn_registers * sizeof(nthw_register_t *));
+
+		if (p->mpa_registers) {
+			memset(p->mpa_registers, 0, (p->mn_registers * sizeof(nthw_register_t *)));
+
+			for (i = 0; i < p->mn_registers; i++) {
+				nthw_register_t *p_reg = nthw_register_new();
+
+				nthw_register_init(p_reg, p, &p_init->registers[i]);
+				p->mpa_registers[i] = p_reg;
+			}
+		}
+	}
+}
 
 /*
  * FpgaMgr
@@ -204,47 +389,6 @@ void nthw_fpga_mgr_init(nthw_fpga_mgr_t *p, struct nthw_fpga_prod_init **pa_nthw
 	p->mn_fpgas = (int)i;
 }
 
-static nthw_fpga_t *nthw_fpga_mgr_lookup_fpga(nthw_fpga_mgr_t *p, uint64_t n_fpga_id,
-	struct fpga_info_s *p_fpga_info)
-{
-	const int n_fpga_prod_id = nthw_fpga_extract_prod_id(n_fpga_id);
-	const int n_fpga_ver = nthw_fpga_extract_ver_id(n_fpga_id);
-	const int n_fpga_rev = nthw_fpga_extract_rev_id(n_fpga_id);
-	int i;
-
-	for (i = 0; i < p->mn_fpgas; i++) {
-		nthw_fpga_prod_init_s *p_init = p->mpa_fpga_prod_init[i];
-
-		if (p_init->fpga_product_id == n_fpga_prod_id &&
-			p_init->fpga_version == n_fpga_ver && p_init->fpga_revision == n_fpga_rev) {
-			nthw_fpga_t *p_fpga = nthw_fpga_model_new();
-			nthw_fpga_model_init(p_fpga, p_init, p_fpga_info);
-			return p_fpga;
-		}
-	}
-
-	return NULL;
-}
-
-nthw_fpga_t *nthw_fpga_mgr_query_fpga(nthw_fpga_mgr_t *p_fpga_mgr, uint64_t n_fpga_id,
-	struct fpga_info_s *p_fpga_info)
-{
-	const int n_fpga_prod_id = nthw_fpga_extract_prod_id(n_fpga_id);
-	const int n_fpga_ver = nthw_fpga_extract_ver_id(n_fpga_id);
-	const int n_fpga_rev = nthw_fpga_extract_rev_id(n_fpga_id);
-
-	nthw_fpga_t *p_fpga = nthw_fpga_mgr_lookup_fpga(p_fpga_mgr, n_fpga_id, p_fpga_info);
-
-	if (p_fpga) {
-	} else {
-		NT_LOG(ERR, NTHW, "FPGA Id 0x%" PRIX64 ": %04d: %d.%d: no match found",
-			n_fpga_id, n_fpga_prod_id, n_fpga_ver, n_fpga_rev);
-	}
-
-	return p_fpga;
-}
-
-
 void nthw_fpga_mgr_log_dump(nthw_fpga_mgr_t *p)
 {
 	int i;
@@ -272,7 +416,7 @@ nthw_fpga_t *nthw_fpga_model_new(void)
 	return p;
 }
 
-void nthw_fpga_model_init(nthw_fpga_t *p, nthw_fpga_prod_init_s *p_init,
+static void nthw_fpga_model_init(nthw_fpga_t *p, nthw_fpga_prod_init_s *p_init,
 	struct fpga_info_s *p_fpga_info)
 {
 	int i;
@@ -323,7 +467,7 @@ void nthw_fpga_model_init(nthw_fpga_t *p, nthw_fpga_prod_init_s *p_init,
 	}
 }
 
-void nthw_fpga_set_debug_mode(nthw_fpga_t *p, int debug_mode)
+static void nthw_fpga_set_debug_mode(nthw_fpga_t *p, int debug_mode)
 {
 	int i;
 
@@ -376,76 +520,6 @@ int nthw_fpga_get_product_id(const nthw_fpga_t *p)
 	return p->mn_product_id;
 }
 
-/*
- * Param
- */
-nthw_param_t *nthw_param_new(void)
-{
-	nthw_param_t *p = malloc(sizeof(nthw_param_t));
-
-	return p;
-}
-
-void nthw_param_init(nthw_param_t *p, nthw_fpga_t *p_fpga, nthw_fpga_prod_param_s *p_init)
-{
-	p->mp_owner = p_fpga;
-	p->mp_init = p_init;
-
-	p->mn_param_id = p_init->id;
-	p->mn_param_value = p_init->value;
-}
-
-/*
- * Module
- */
-nthw_module_t *nthw_module_new(void)
-{
-	nthw_module_t *p = malloc(sizeof(nthw_module_t));
-
-	return p;
-}
-
-void nthw_module_init(nthw_module_t *p, nthw_fpga_t *p_fpga, nthw_fpga_module_init_s *p_init)
-{
-	int i;
-
-	p->mp_owner = p_fpga;
-	p->mp_init = p_init;
-
-	p->mn_mod_id = p_init->id;
-	p->mn_instance = p_init->instance;
-
-	/* Copy debug mode from owner */
-	if (p->mp_owner)
-		p->mn_debug_mode = p->mp_owner->m_debug_mode;
-
-	else
-		p->mn_debug_mode = 0;
-
-	p->mn_mod_def_id = p_init->def_id;
-	p->mn_major_version = p_init->major_version;
-	p->mn_minor_version = p_init->minor_version;
-	p->mn_bus = p_init->bus_id;
-	p->mn_addr_base = p_init->addr_base;
-
-	p->mn_registers = p_init->nb_registers;
-
-	if (p->mn_registers) {
-		p->mpa_registers = malloc(p->mn_registers * sizeof(nthw_register_t *));
-
-		if (p->mpa_registers) {
-			memset(p->mpa_registers, 0, (p->mn_registers * sizeof(nthw_register_t *)));
-
-			for (i = 0; i < p->mn_registers; i++) {
-				nthw_register_t *p_reg = nthw_register_new();
-
-				nthw_register_init(p_reg, p, &p_init->registers[i]);
-				p->mpa_registers[i] = p_reg;
-			}
-		}
-	}
-}
-
 int nthw_module_get_major_version(const nthw_module_t *p)
 {
 	return p->mn_major_version;
@@ -528,71 +602,17 @@ void nthw_module_set_debug_mode(nthw_module_t *p, unsigned int debug_mode)
 	}
 }
 
-int nthw_module_get_bus(const nthw_module_t *p)
+static int nthw_module_get_bus(const nthw_module_t *p)
 {
 	return p->mn_bus;
 }
 
-/*
- * Register
- */
-nthw_register_t *nthw_register_new(void)
-{
-	nthw_register_t *p = malloc(sizeof(nthw_register_t));
-
-	return p;
-}
-
-void nthw_register_init(nthw_register_t *p, nthw_module_t *p_module,
-	nthw_fpga_register_init_s *p_init)
-{
-	int i;
-
-	p->mp_owner = p_module;
-
-	p->mn_id = p_init->id;
-	p->mn_bit_width = p_init->bw;
-	p->mn_addr_rel = p_init->addr_rel;
-	p->mn_addr = p_module->mn_addr_base + p_init->addr_rel;
-	p->mn_type = p_init->type;
-	/* Old P200 registers have no bw at register level - default to BW=-1 */
-	p->mn_len = ((p_init->bw != (uint16_t)-1) ? ((p_init->bw + 31) >> 5) : 1);
-	p->mn_debug_mode = p_module->mn_debug_mode;
-
-	p->mn_fields = p_init->nb_fields;
-
-	if (p->mn_fields) {
-		p->mpa_fields = malloc(p->mn_fields * sizeof(nthw_field_t *));
-
-		if (p->mpa_fields) {
-			memset(p->mpa_fields, 0, (p->mn_fields * sizeof(nthw_field_t *)));
-
-			for (i = 0; i < p->mn_fields; i++) {
-				nthw_field_t *p_field = nthw_field_new();
-
-				nthw_field_init(p_field, p, &p_init->fields[i]);
-				p->mpa_fields[i] = p_field;
-			}
-
-			p->mp_shadow = malloc(p->mn_len * sizeof(uint32_t));
-
-			if (p->mp_shadow)
-				memset(p->mp_shadow, 0x00, (p->mn_len * sizeof(uint32_t)));
-
-			p->mp_dirty = malloc(p->mn_len * sizeof(bool));
-
-			if (p->mp_dirty)
-				memset(p->mp_dirty, 0x00, (p->mn_len * sizeof(bool)));
-		}
-	}
-}
-
 uint32_t nthw_register_get_address(const nthw_register_t *p)
 {
 	return p->mn_addr;
 }
 
-void nthw_register_reset(const nthw_register_t *p)
+static void nthw_register_reset(const nthw_register_t *p)
 {
 	int i;
 	nthw_field_t *p_field = NULL;
@@ -647,12 +667,12 @@ nthw_field_t *nthw_register_get_field(const nthw_register_t *p, nthw_id_t id)
 	return p_field;
 }
 
-int nthw_register_get_bit_width(const nthw_register_t *p)
+static int nthw_register_get_bit_width(const nthw_register_t *p)
 {
 	return p->mn_bit_width;
 }
 
-int nthw_register_get_debug_mode(const nthw_register_t *p)
+static int nthw_register_get_debug_mode(const nthw_register_t *p)
 {
 	return p->mn_debug_mode;
 }
@@ -660,6 +680,11 @@ int nthw_register_get_debug_mode(const nthw_register_t *p)
 /*
  * NOTE: do not set debug on fields - as register operation dumps typically are enough
  */
+static void nthw_field_set_debug_mode(nthw_field_t *p, unsigned int debug_mode)
+{
+	p->mn_debug_mode = debug_mode;
+}
+
 void nthw_register_set_debug_mode(nthw_register_t *p, unsigned int debug_mode)
 {
 	int i;
@@ -725,7 +750,7 @@ static int nthw_register_write_data(const nthw_register_t *p, uint32_t cnt)
 	return rc;
 }
 
-void nthw_register_get_val(const nthw_register_t *p, uint32_t *p_data, uint32_t len)
+static void nthw_register_get_val(const nthw_register_t *p, uint32_t *p_data, uint32_t len)
 {
 	uint32_t i;
 
@@ -739,7 +764,7 @@ void nthw_register_get_val(const nthw_register_t *p, uint32_t *p_data, uint32_t
 		p_data[i] = p->mp_shadow[i];
 }
 
-uint32_t nthw_register_get_val32(const nthw_register_t *p)
+static uint32_t nthw_register_get_val32(const nthw_register_t *p)
 {
 	uint32_t val = 0;
 
@@ -781,7 +806,7 @@ void nthw_register_update(const nthw_register_t *p)
 	}
 }
 
-uint32_t nthw_register_get_val_updated32(const nthw_register_t *p)
+static uint32_t nthw_register_get_val_updated32(const nthw_register_t *p)
 {
 	uint32_t val = 0;
 
@@ -852,7 +877,7 @@ void nthw_register_flush(const nthw_register_t *p, uint32_t cnt)
 	}
 }
 
-void nthw_register_clr(nthw_register_t *p)
+static void nthw_register_clr(nthw_register_t *p)
 {
 	if (p->mp_shadow) {
 		memset(p->mp_shadow, 0, p->mn_len * sizeof(uint32_t));
@@ -860,72 +885,11 @@ void nthw_register_clr(nthw_register_t *p)
 	}
 }
 
-/*
- * Field
- */
-nthw_field_t *nthw_field_new(void)
-{
-	nthw_field_t *p = malloc(sizeof(nthw_field_t));
-
-	return p;
-}
-
-void nthw_field_init(nthw_field_t *p, nthw_register_t *p_reg, const nthw_fpga_field_init_s *p_init)
-{
-	p->mp_owner = p_reg;
-
-	p->mn_debug_mode = p_reg->mn_debug_mode;
-
-	p->mn_id = p_init->id;
-	p->mn_bit_width = p_init->bw;
-	p->mn_bit_pos_low = p_init->low;
-	p->mn_reset_val = (uint32_t)p_init->reset_val;
-	p->mn_first_word = p_init->low / 32;
-	p->mn_first_bit = p_init->low % 32;
-	p->mn_front_mask = 0;
-	p->mn_body_length = 0;
-	p->mn_words = (p_init->bw + 0x1f) / 0x20;
-	p->mn_tail_mask = 0;
-
-	{
-		int bits_remaining = p_init->bw;
-		int front_mask_length = 32 - p->mn_first_bit;
-
-		if (front_mask_length > bits_remaining)
-			front_mask_length = bits_remaining;
-
-		bits_remaining -= front_mask_length;
-
-		p->mn_front_mask =
-			(uint32_t)(((1ULL << front_mask_length) - 1) << p->mn_first_bit);
-
-		p->mn_body_length = bits_remaining / 32;
-		bits_remaining -= p->mn_body_length * 32;
-		p->mn_tail_mask = (1 << bits_remaining) - 1;
-
-		if (p->mn_debug_mode >= 0x100) {
-			NT_LOG_DBGX(DBG, NTHW,
-				"fldid=%08" PRIu32 ": [%08" PRIu16 ":%08" PRIu16 "] %08" PRIu16 "/%08"
-				PRIu16 ": (%08i ,%08" PRIu32 ") (0x%08" PRIx32 ",%08"
-				PRIu32 ",0x%08" PRIx32 ")",
-				p_init->id, p_init->low, (p_init->low + p_init->bw),
-				p_init->bw, ((p_init->bw + 31) / 32), p->mn_first_word,
-				p->mn_first_bit, p->mn_front_mask, p->mn_body_length,
-				p->mn_tail_mask);
-		}
-	}
-}
-
-int nthw_field_get_debug_mode(const nthw_field_t *p)
+static int nthw_field_get_debug_mode(const nthw_field_t *p)
 {
 	return p->mn_debug_mode;
 }
 
-void nthw_field_set_debug_mode(nthw_field_t *p, unsigned int debug_mode)
-{
-	p->mn_debug_mode = debug_mode;
-}
-
 int nthw_field_get_bit_width(const nthw_field_t *p)
 {
 	return p->mn_bit_width;
@@ -936,7 +900,7 @@ int nthw_field_get_bit_pos_low(const nthw_field_t *p)
 	return p->mn_bit_pos_low;
 }
 
-int nthw_field_get_bit_pos_high(const nthw_field_t *p)
+static int nthw_field_get_bit_pos_high(const nthw_field_t *p)
 {
 	return p->mn_bit_pos_low + p->mn_bit_width - 1;
 }
@@ -946,11 +910,6 @@ uint32_t nthw_field_get_mask(const nthw_field_t *p)
 	return p->mn_front_mask;
 }
 
-void nthw_field_reset(const nthw_field_t *p)
-{
-	nthw_field_set_val32(p, (uint32_t)p->mn_reset_val);
-}
-
 void nthw_field_get_val(const nthw_field_t *p, uint32_t *p_data, uint32_t len)
 {
 	uint32_t i;
@@ -1210,3 +1169,43 @@ int nthw_field_wait_set_any32(const nthw_field_t *p, int n_poll_iterations, int
 	return nthw_field_wait_cond32(p, NTHW_FIELD_MATCH_SET_ANY, n_poll_iterations,
 			n_poll_interval);
 }
+
+static nthw_fpga_t *nthw_fpga_mgr_lookup_fpga(nthw_fpga_mgr_t *p, uint64_t n_fpga_id,
+	struct fpga_info_s *p_fpga_info)
+{
+	const int n_fpga_prod_id = nthw_fpga_extract_prod_id(n_fpga_id);
+	const int n_fpga_ver = nthw_fpga_extract_ver_id(n_fpga_id);
+	const int n_fpga_rev = nthw_fpga_extract_rev_id(n_fpga_id);
+	int i;
+
+	for (i = 0; i < p->mn_fpgas; i++) {
+		nthw_fpga_prod_init_s *p_init = p->mpa_fpga_prod_init[i];
+
+		if (p_init->fpga_product_id == n_fpga_prod_id &&
+			p_init->fpga_version == n_fpga_ver && p_init->fpga_revision == n_fpga_rev) {
+			nthw_fpga_t *p_fpga = nthw_fpga_model_new();
+			nthw_fpga_model_init(p_fpga, p_init, p_fpga_info);
+			return p_fpga;
+		}
+	}
+
+	return NULL;
+}
+
+nthw_fpga_t *nthw_fpga_mgr_query_fpga(nthw_fpga_mgr_t *p_fpga_mgr, uint64_t n_fpga_id,
+	struct fpga_info_s *p_fpga_info)
+{
+	const int n_fpga_prod_id = nthw_fpga_extract_prod_id(n_fpga_id);
+	const int n_fpga_ver = nthw_fpga_extract_ver_id(n_fpga_id);
+	const int n_fpga_rev = nthw_fpga_extract_rev_id(n_fpga_id);
+
+	nthw_fpga_t *p_fpga = nthw_fpga_mgr_lookup_fpga(p_fpga_mgr, n_fpga_id, p_fpga_info);
+
+	if (p_fpga) {
+	} else {
+		NT_LOG(ERR, NTHW, "FPGA Id 0x%" PRIX64 ": %04d: %d.%d: no match found",
+			n_fpga_id, n_fpga_prod_id, n_fpga_ver, n_fpga_rev);
+	}
+
+	return p_fpga;
+}
diff --git a/drivers/net/ntnic/nthw/model/nthw_fpga_model.h b/drivers/net/ntnic/nthw/model/nthw_fpga_model.h
index d4e7ab3edd..459c9f081d 100644
--- a/drivers/net/ntnic/nthw/model/nthw_fpga_model.h
+++ b/drivers/net/ntnic/nthw/model/nthw_fpga_model.h
@@ -159,21 +159,13 @@ nthw_fpga_t *nthw_fpga_mgr_query_fpga(nthw_fpga_mgr_t *p, uint64_t n_fpga_id,
 void nthw_fpga_mgr_log_dump(nthw_fpga_mgr_t *p);
 
 nthw_fpga_t *nthw_fpga_model_new(void);
-void nthw_fpga_model_init(nthw_fpga_t *p, nthw_fpga_prod_init_s *p_init,
-	struct fpga_info_s *p_fpga_info);
-
 int nthw_fpga_get_product_param(const nthw_fpga_t *p, const nthw_id_t n_param_id,
 	const int default_value);
 int nthw_fpga_get_product_id(const nthw_fpga_t *p);
 
 nthw_module_t *nthw_fpga_query_module(const nthw_fpga_t *p, nthw_id_t id, int instance);
-void nthw_fpga_set_debug_mode(nthw_fpga_t *p, int n_debug_mode);
-
 nthw_param_t *nthw_param_new(void);
-void nthw_param_init(nthw_param_t *p, nthw_fpga_t *p_fpga, nthw_fpga_prod_param_s *p_init);
-
 nthw_module_t *nthw_module_new(void);
-void nthw_module_init(nthw_module_t *p, nthw_fpga_t *p_fpga, nthw_fpga_module_init_s *p_init);
 void nthw_module_init2(nthw_module_t *p, nthw_fpga_t *p_fpga, nthw_id_t mod_id, int instance,
 	int debug_mode);
 
@@ -182,47 +174,27 @@ int nthw_module_get_minor_version(const nthw_module_t *p);
 uint64_t nthw_module_get_version_packed64(const nthw_module_t *p);
 bool nthw_module_is_version_newer(const nthw_module_t *p, int major_version, int minor_version);
 
-int nthw_module_get_bus(const nthw_module_t *p);
 nthw_register_t *nthw_module_query_register(nthw_module_t *p, nthw_id_t id);
 nthw_register_t *nthw_module_get_register(nthw_module_t *p, nthw_id_t id);
 int nthw_module_get_debug_mode(const nthw_module_t *p);
 void nthw_module_set_debug_mode(nthw_module_t *p, unsigned int debug_mode);
 
 nthw_register_t *nthw_register_new(void);
-void nthw_register_init(nthw_register_t *p, nthw_module_t *p_module,
-	nthw_fpga_register_init_s *p_init);
-
 nthw_field_t *nthw_register_query_field(const nthw_register_t *p, nthw_id_t id);
 nthw_field_t *nthw_register_get_field(const nthw_register_t *p, nthw_id_t id);
 
 uint32_t nthw_register_get_address(const nthw_register_t *p);
-int nthw_register_get_bit_width(const nthw_register_t *p);
-int nthw_register_get_debug_mode(const nthw_register_t *p);
 void nthw_register_set_debug_mode(nthw_register_t *p, unsigned int debug_mode);
 
-void nthw_register_get_val(const nthw_register_t *p, uint32_t *p_data, uint32_t len);
-uint32_t nthw_register_get_val32(const nthw_register_t *p);
-uint32_t nthw_register_get_val_updated32(const nthw_register_t *p);
-
 void nthw_register_set_val(nthw_register_t *p, const uint32_t *p_data, uint32_t len);
 
 void nthw_register_make_dirty(nthw_register_t *p);
 void nthw_register_update(const nthw_register_t *p);
-void nthw_register_reset(const nthw_register_t *p);
 void nthw_register_flush(const nthw_register_t *p, uint32_t cnt);
-void nthw_register_clr(nthw_register_t *p);
-
 nthw_field_t *nthw_field_new(void);
-void nthw_field_init(nthw_field_t *p, nthw_register_t *p_reg,
-	const nthw_fpga_field_init_s *p_init);
-
-int nthw_field_get_debug_mode(const nthw_field_t *p);
-void nthw_field_set_debug_mode(nthw_field_t *p, unsigned int n_debug_mode);
 int nthw_field_get_bit_width(const nthw_field_t *p);
 int nthw_field_get_bit_pos_low(const nthw_field_t *p);
-int nthw_field_get_bit_pos_high(const nthw_field_t *p);
 uint32_t nthw_field_get_mask(const nthw_field_t *p);
-void nthw_field_reset(const nthw_field_t *p);
 void nthw_field_get_val(const nthw_field_t *p, uint32_t *p_data, uint32_t len);
 void nthw_field_set_val(const nthw_field_t *p, const uint32_t *p_data, uint32_t len);
 void nthw_field_set_val_flush(const nthw_field_t *p, const uint32_t *p_data, uint32_t len);
diff --git a/drivers/net/ntnic/ntnic_filter/ntnic_filter.c b/drivers/net/ntnic/ntnic_filter/ntnic_filter.c
index c6c448312f..f498551e8d 100644
--- a/drivers/net/ntnic/ntnic_filter/ntnic_filter.c
+++ b/drivers/net/ntnic/ntnic_filter/ntnic_filter.c
@@ -31,7 +31,8 @@ static struct rte_flow nt_flows[MAX_RTE_FLOWS];
 rte_spinlock_t flow_lock = RTE_SPINLOCK_INITIALIZER;
 static struct rte_flow nt_flows[MAX_RTE_FLOWS];
 
-int nthw_interpret_raw_data(uint8_t *data, uint8_t *preserve, int size, struct rte_flow_item *out)
+static int nthw_interpret_raw_data(uint8_t *data, uint8_t *preserve, int size,
+	struct rte_flow_item *out)
 {
 	int hdri = 0;
 	int pkti = 0;
@@ -249,7 +250,7 @@ int nthw_interpret_raw_data(uint8_t *data, uint8_t *preserve, int size, struct r
 	return hdri + 1;
 }
 
-int nthw_create_attr(struct cnv_attr_s *attribute, const struct rte_flow_attr *attr)
+static int nthw_create_attr(struct cnv_attr_s *attribute, const struct rte_flow_attr *attr)
 {
 	if (!attribute) {
 		NT_LOG(ERR, FILTER, "ERROR no attribute to iterate!");
@@ -266,7 +267,7 @@ int nthw_create_attr(struct cnv_attr_s *attribute, const struct rte_flow_attr *a
 	return 0;
 }
 
-int nthw_create_match_elements(struct cnv_match_s *match, const struct rte_flow_item items[],
+static int nthw_create_match_elements(struct cnv_match_s *match, const struct rte_flow_item items[],
 	int max_elem)
 {
 	int eidx = 0;
@@ -316,7 +317,7 @@ int nthw_create_match_elements(struct cnv_match_s *match, const struct rte_flow_
 	return (type >= 0) ? 0 : -1;
 }
 
-int nthw_create_action_elements_inline(struct cnv_action_s *action,
+static int nthw_create_action_elements_inline(struct cnv_action_s *action,
 	const struct rte_flow_action actions[],
 	int max_elem,
 	uint32_t queue_offset)
diff --git a/drivers/net/ntnic/ntnic_vfio.c b/drivers/net/ntnic/ntnic_vfio.c
index 1031b3cf67..b1e807d6fa 100644
--- a/drivers/net/ntnic/ntnic_vfio.c
+++ b/drivers/net/ntnic/ntnic_vfio.c
@@ -20,7 +20,7 @@
 #define ONE_G_MASK (ONE_G_SIZE - 1)
 #define START_VF_IOVA 0x220000000000
 
-int
+static int
 nt_vfio_vf_num(const struct rte_pci_device *pdev)
 {
 	return ((pdev->addr.devid & 0x1f) << 3) + ((pdev->addr.function) & 0x7);
diff --git a/drivers/net/ntnic/ntnic_vfio.h b/drivers/net/ntnic/ntnic_vfio.h
index 69fef7923d..e070e9460c 100644
--- a/drivers/net/ntnic/ntnic_vfio.h
+++ b/drivers/net/ntnic/ntnic_vfio.h
@@ -24,6 +24,4 @@ int
 nt_vfio_dma_unmap(int vf_num, void *virt_addr, uint64_t iova_addr, uint64_t size);
 
 /* Find device (PF/VF) number from device address */
-int
-nt_vfio_vf_num(const struct rte_pci_device *dev);
 #endif	/* _NTNIC_VFIO_H_ */
diff --git a/drivers/net/ntnic/ntutil/nt_util.c b/drivers/net/ntnic/ntutil/nt_util.c
index a4d30d8ca4..c4a49d8358 100644
--- a/drivers/net/ntnic/ntutil/nt_util.c
+++ b/drivers/net/ntnic/ntutil/nt_util.c
@@ -85,7 +85,7 @@ struct nt_dma_s *nt_dma_alloc(uint64_t size, uint64_t align, int numa)
 	return vfio_addr;
 }
 
-void nt_dma_free(struct nt_dma_s *vfio_addr)
+static void nt_dma_free(struct nt_dma_s *vfio_addr)
 {
 	NT_LOG(DBG, GENERAL, "VFIO DMA free addr=%" PRIX64 ", iova=%" PRIX64 ", size=%" PRIX64,
 		vfio_addr->addr, vfio_addr->iova, vfio_addr->size);
@@ -181,7 +181,7 @@ uint32_t nt_link_speed_capa_to_eth_speed_capa(int nt_link_speed_capa)
 }
 
 /* Converts link speed provided in Mbps to NT specific definitions.*/
-nt_link_speed_t nthw_convert_link_speed(int link_speed_mbps)
+static nt_link_speed_t nthw_convert_link_speed(int link_speed_mbps)
 {
 	switch (link_speed_mbps) {
 	case 10:
diff --git a/drivers/net/ntnic/ntutil/nt_util.h b/drivers/net/ntnic/ntutil/nt_util.h
index 5be84be9c3..39a4956187 100644
--- a/drivers/net/ntnic/ntutil/nt_util.h
+++ b/drivers/net/ntnic/ntutil/nt_util.h
@@ -55,8 +55,6 @@ struct port_link_speed {
 };
 
 struct nt_dma_s *nt_dma_alloc(uint64_t size, uint64_t align, int numa);
-void nt_dma_free(struct nt_dma_s *vfio_addr);
-
 struct nt_util_vfio_impl {
 	int (*vfio_dma_map)(int vf_num, void *virt_addr, uint64_t *iova_addr, uint64_t size);
 	int (*vfio_dma_unmap)(int vf_num, void *virt_addr, uint64_t iova_addr, uint64_t size);
@@ -66,7 +64,6 @@ void nt_util_vfio_init(struct nt_util_vfio_impl *impl);
 
 int nt_link_speed_to_eth_speed_num(enum nt_link_speed_e nt_link_speed);
 uint32_t nt_link_speed_capa_to_eth_speed_capa(int nt_link_speed_capa);
-nt_link_speed_t nthw_convert_link_speed(int link_speed_mbps);
 int nt_link_duplex_to_eth_duplex(enum nt_link_duplex_e nt_link_duplex);
 
 int nthw_string_to_u32(const char *key_str __rte_unused, const char *value_str, void *extra_args);
-- 
2.45.0


  reply	other threads:[~2025-09-19  9:21 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-19  9:14 [PATCH v1 00/16] refactoring naming the for exported symbols Serhii Iliushyk
2025-09-19  9:14 ` Serhii Iliushyk [this message]
2025-09-19  9:14 ` [PATCH v1 02/16] net/ntnic: remove unused functions Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 03/16] net/ntnic: move nthw_ to prefix Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 04/16] net/ntnic: change prefix hw_ to prefix nthw_ Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 05/16] net/ntnic: modify prefix flow_ with " Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 06/16] net/ntnic: change prefix flm_ to prefix nthw_flm_ Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 07/16] net/ntnic: change prefix nt_ to prefix nthw_ Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 08/16] net/ntnic: change prefix ntlog_ to prefix nthw_log Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 09/16] net/ntnic: change prefix km_ to prefix nthw_km_ Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 10/16] net/ntnic: change prefix set_ to prefix nthw_set_ Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 11/16] net/ntnic: rename common hash and flow functions Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 12/16] net/ntnic: rename register ops function Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 13/16] net/ntnic: rename get ops functions Serhii Iliushyk
2025-09-19  9:14 ` [PATCH v1 14/16] net/ntnic: rename ops_init functions Serhii Iliushyk
2025-09-19  9:15 ` [PATCH v1 15/16] net/ntnic: rename nim agx setup function Serhii Iliushyk
2025-09-19  9:15 ` [PATCH v1 16/16] net/ntnic: rename table id functions Serhii Iliushyk

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=20250919091504.1548351-2-sil-plv@napatech.com \
    --to=sil-plv@napatech.com \
    --cc=ckm@napatech.com \
    --cc=dev@dpdk.org \
    --cc=mko-plv@napatech.com \
    --cc=stephen@networkplumber.org \
    /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).