From 8614cb6afdedb10eaa41cac458cd3fe898498d27 Mon Sep 17 00:00:00 2001 From: Pavan Nikhilesh Date: Wed, 13 May 2020 15:25:56 +0530 Subject: [PATCH] common/octeontx2: mark internal symbols Move the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage. Signed-off-by: Pavan Nikhilesh Acked-by: Ray Kinsella Signed-off-by: David Marchand --- devtools/libabigail.abignore | 4 +++ drivers/common/octeontx2/otx2_common.h | 8 ++++++ drivers/common/octeontx2/otx2_dev.h | 3 ++ drivers/common/octeontx2/otx2_irq.h | 3 ++ drivers/common/octeontx2/otx2_mbox.h | 6 ++++ drivers/common/octeontx2/otx2_sec_idev.h | 6 ++++ .../rte_common_octeontx2_version.map | 28 +++++++------------ 7 files changed, 40 insertions(+), 18 deletions(-) diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore index c9ee73cb3c..1c90361e5b 100644 --- a/devtools/libabigail.abignore +++ b/devtools/libabigail.abignore @@ -48,3 +48,7 @@ changed_enumerators = RTE_CRYPTO_AEAD_LIST_END [suppress_variable] name = rte_crypto_aead_algorithm_strings + +; Ignore moving OCTEONTX2 stable functions to INTERNAL tag +[suppress_file] + file_name_regexp = ^librte_common_octeontx2\. diff --git a/drivers/common/octeontx2/otx2_common.h b/drivers/common/octeontx2/otx2_common.h index e62cdea076..1747026870 100644 --- a/drivers/common/octeontx2/otx2_common.h +++ b/drivers/common/octeontx2/otx2_common.h @@ -62,13 +62,21 @@ struct otx2_idev_cfg { }; }; +__rte_internal struct otx2_idev_cfg *otx2_intra_dev_get_cfg(void); +__rte_internal void otx2_sso_pf_func_set(uint16_t sso_pf_func); +__rte_internal uint16_t otx2_sso_pf_func_get(void); +__rte_internal uint16_t otx2_npa_pf_func_get(void); +__rte_internal struct otx2_npa_lf *otx2_npa_lf_obj_get(void); +__rte_internal void otx2_npa_set_defaults(struct otx2_idev_cfg *idev); +__rte_internal int otx2_npa_lf_active(void *dev); +__rte_internal int otx2_npa_lf_obj_ref(void); /* Log */ diff --git a/drivers/common/octeontx2/otx2_dev.h b/drivers/common/octeontx2/otx2_dev.h index 13b75e1188..cd4fe517db 100644 --- a/drivers/common/octeontx2/otx2_dev.h +++ b/drivers/common/octeontx2/otx2_dev.h @@ -94,6 +94,7 @@ struct otx2_dev { OTX2_DEV; }; +__rte_internal int otx2_dev_priv_init(struct rte_pci_device *pci_dev, void *otx2_dev); /* Common dev init and fini routines */ @@ -116,7 +117,9 @@ otx2_dev_init(struct rte_pci_device *pci_dev, void *otx2_dev) return otx2_dev_priv_init(pci_dev, otx2_dev); } +__rte_internal void otx2_dev_fini(struct rte_pci_device *pci_dev, void *otx2_dev); +__rte_internal int otx2_dev_active_vfs(void *otx2_dev); #define RVU_PFVF_PF_SHIFT 10 diff --git a/drivers/common/octeontx2/otx2_irq.h b/drivers/common/octeontx2/otx2_irq.h index 9d326276e6..0683cf5543 100644 --- a/drivers/common/octeontx2/otx2_irq.h +++ b/drivers/common/octeontx2/otx2_irq.h @@ -16,10 +16,13 @@ typedef struct { uint64_t bits[MAX_VFPF_DWORD_BITS]; } otx2_intr_t; +__rte_internal int otx2_register_irq(struct rte_intr_handle *intr_handle, rte_intr_callback_fn cb, void *data, unsigned int vec); +__rte_internal void otx2_unregister_irq(struct rte_intr_handle *intr_handle, rte_intr_callback_fn cb, void *data, unsigned int vec); +__rte_internal int otx2_disable_irqs(struct rte_intr_handle *intr_handle); #endif /* _OTX2_IRQ_H_ */ diff --git a/drivers/common/octeontx2/otx2_mbox.h b/drivers/common/octeontx2/otx2_mbox.h index 80778a0be5..7fa4276e9e 100644 --- a/drivers/common/octeontx2/otx2_mbox.h +++ b/drivers/common/octeontx2/otx2_mbox.h @@ -1617,19 +1617,25 @@ struct tim_enable_rsp { uint32_t __otx2_io currentbucket; }; +__rte_internal const char *otx2_mbox_id2name(uint16_t id); int otx2_mbox_id2size(uint16_t id); void otx2_mbox_reset(struct otx2_mbox *mbox, int devid); int otx2_mbox_init(struct otx2_mbox *mbox, uintptr_t hwbase, uintptr_t reg_base, int direction, int ndevsi, uint64_t intr_offset); void otx2_mbox_fini(struct otx2_mbox *mbox); +__rte_internal void otx2_mbox_msg_send(struct otx2_mbox *mbox, int devid); +__rte_internal int otx2_mbox_wait_for_rsp(struct otx2_mbox *mbox, int devid); int otx2_mbox_wait_for_rsp_tmo(struct otx2_mbox *mbox, int devid, uint32_t tmo); +__rte_internal int otx2_mbox_get_rsp(struct otx2_mbox *mbox, int devid, void **msg); +__rte_internal int otx2_mbox_get_rsp_tmo(struct otx2_mbox *mbox, int devid, void **msg, uint32_t tmo); int otx2_mbox_get_availmem(struct otx2_mbox *mbox, int devid); +__rte_internal struct mbox_msghdr *otx2_mbox_alloc_msg_rsp(struct otx2_mbox *mbox, int devid, int size, int size_rsp); diff --git a/drivers/common/octeontx2/otx2_sec_idev.h b/drivers/common/octeontx2/otx2_sec_idev.h index c681f50945..89cdaf66ab 100644 --- a/drivers/common/octeontx2/otx2_sec_idev.h +++ b/drivers/common/octeontx2/otx2_sec_idev.h @@ -22,16 +22,22 @@ struct otx2_sec_idev_cfg { rte_spinlock_t tx_cpt_lock; }; +__rte_internal uint8_t otx2_eth_dev_is_sec_capable(struct rte_eth_dev *eth_dev); +__rte_internal int otx2_sec_idev_cfg_init(int port_id); +__rte_internal int otx2_sec_idev_tx_cpt_qp_add(uint16_t port_id, struct otx2_cpt_qp *qp); +__rte_internal int otx2_sec_idev_tx_cpt_qp_remove(struct otx2_cpt_qp *qp); +__rte_internal int otx2_sec_idev_tx_cpt_qp_put(struct otx2_cpt_qp *qp); +__rte_internal int otx2_sec_idev_tx_cpt_qp_get(uint16_t port_id, struct otx2_cpt_qp **qp); #endif /* _OTX2_SEC_IDEV_H_ */ diff --git a/drivers/common/octeontx2/rte_common_octeontx2_version.map b/drivers/common/octeontx2/rte_common_octeontx2_version.map index 01279c3390..a47a60af3c 100644 --- a/drivers/common/octeontx2/rte_common_octeontx2_version.map +++ b/drivers/common/octeontx2/rte_common_octeontx2_version.map @@ -1,13 +1,19 @@ DPDK_20.0 { + local: *; +}; + +INTERNAL { global: otx2_dev_active_vfs; otx2_dev_fini; otx2_dev_priv_init; otx2_disable_irqs; + otx2_eth_dev_is_sec_capable; otx2_intra_dev_get_cfg; otx2_logtype_base; otx2_logtype_dpi; + otx2_logtype_ep; otx2_logtype_mbox; otx2_logtype_nix; otx2_logtype_npa; @@ -27,26 +33,12 @@ DPDK_20.0 { otx2_npa_pf_func_get; otx2_npa_set_defaults; otx2_register_irq; - otx2_sso_pf_func_get; - otx2_sso_pf_func_set; - otx2_unregister_irq; - - local: *; -}; - -DPDK_21 { - global: - - otx2_eth_dev_is_sec_capable; otx2_sec_idev_cfg_init; otx2_sec_idev_tx_cpt_qp_add; - otx2_sec_idev_tx_cpt_qp_remove; otx2_sec_idev_tx_cpt_qp_get; otx2_sec_idev_tx_cpt_qp_put; -} DPDK_20.0; - -EXPERIMENTAL { - global: - - otx2_logtype_ep; + otx2_sec_idev_tx_cpt_qp_remove; + otx2_sso_pf_func_get; + otx2_sso_pf_func_set; + otx2_unregister_irq; }; -- 2.20.1