+int tf_msg_session_resc_flush(struct tf *tfp,
+ enum tf_dir dir,
+ uint16_t size,
+ struct tf_rm_resc_entry *resv);
+/**
+ * Sends EM internal insert request to Firmware
+ *
+ * [in] tfp
+ * Pointer to TF handle
+ *
+ * [in] params
+ * Pointer to em insert parameter list
+ *
+ * [in] rptr_index
+ * Record ptr index
+ *
+ * [in] rptr_entry
+ * Record ptr entry
+ *
+ * [in] num_of_entries
+ * Number of entries to insert
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_insert_em_internal_entry(struct tf *tfp,
+ struct tf_insert_em_entry_parms *params,
+ uint16_t *rptr_index,
+ uint8_t *rptr_entry,
+ uint8_t *num_of_entries);
+/**
+ * Sends EM internal delete request to Firmware
+ *
+ * [in] tfp
+ * Pointer to TF handle
+ *
+ * [in] em_parms
+ * Pointer to em delete parameters
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_delete_em_entry(struct tf *tfp,
+ struct tf_delete_em_entry_parms *em_parms);
+
+/**
+ * Sends EM mem register request to Firmware
+ *
+ * [in] tfp
+ * Pointer to TF handle
+ *
+ * [in] page_lvl
+ * Page level
+ *
+ * [in] page_size
+ * Page size
+ *
+ * [in] dma_addr
+ * DMA Address for the memory page
+ *
+ * [in] ctx_id
+ * Context id
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_em_mem_rgtr(struct tf *tfp,
+ int page_lvl,
+ int page_size,
+ uint64_t dma_addr,
+ uint16_t *ctx_id);
+
+/**
+ * Sends EM mem unregister request to Firmware
+ *
+ * [in] tfp
+ * Pointer to TF handle
+ *
+ * [in] ctx_id
+ * Context id
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_em_mem_unrgtr(struct tf *tfp,
+ uint16_t *ctx_id);
+
+/**
+ * Sends EM qcaps request to Firmware
+ *
+ * [in] tfp
+ * Pointer to TF handle
+ *
+ * [in] dir
+ * Receive or Transmit direction
+ *
+ * [in] em_caps
+ * Pointer to EM capabilities
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_em_qcaps(struct tf *tfp,
+ int dir,
+ struct tf_em_caps *em_caps);
+
+/**
+ * Sends EM config request to Firmware
+ *
+ * [in] tfp
+ * Pointer to TF handle
+ *
+ * [in] num_entries
+ * EM Table, key 0, number of entries to configure
+ *
+ * [in] key0_ctx_id
+ * EM Table, Key 0 context id
+ *
+ * [in] key1_ctx_id
+ * EM Table, Key 1 context id
+ *
+ * [in] record_ctx_id
+ * EM Table, Record context id
+ *
+ * [in] efc_ctx_id
+ * EM Table, EFC Table context id
+ *
+ * [in] flush_interval
+ * Flush pending HW cached flows every 1/10th of value set in
+ * seconds, both idle and active flows are flushed from the HW
+ * cache. If set to 0, this feature will be disabled.
+ *
+ * [in] dir
+ * Receive or Transmit direction
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_em_cfg(struct tf *tfp,
+ uint32_t num_entries,
+ uint16_t key0_ctx_id,
+ uint16_t key1_ctx_id,
+ uint16_t record_ctx_id,
+ uint16_t efc_ctx_id,
+ uint8_t flush_interval,
+ int dir);
+
+/**
+ * Sends EM operation request to Firmware
+ *
+ * [in] tfp
+ * Pointer to TF handle
+ *
+ * [in] dir
+ * Receive or Transmit direction
+ *
+ * [in] op
+ * CFA Operator
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_em_op(struct tf *tfp,
+ int dir,
+ uint16_t op);
+
+/**
+ * Sends tcam entry 'set' to the Firmware.
+ *
+ * [in] tfp
+ * Pointer to session handle
+ *
+ * [in] parms
+ * Pointer to set parameters
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_tcam_entry_set(struct tf *tfp,
+ struct tf_tcam_set_parms *parms);
+
+/**
+ * Sends tcam entry 'free' to the Firmware.
+ *
+ * [in] tfp
+ * Pointer to session handle
+ *
+ * [in] parms
+ * Pointer to free parameters
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_tcam_entry_free(struct tf *tfp,
+ struct tf_tcam_free_parms *parms);
+
+/**
+ * Sends Set message of a Table Type element to the firmware.
+ *
+ * [in] tfp
+ * Pointer to session handle
+ *
+ * [in] dir
+ * Direction location of the element to set
+ *
+ * [in] hcapi_type
+ * Type of the object to set
+ *
+ * [in] size
+ * Size of the data to set
+ *
+ * [in] data
+ * Data to set
+ *
+ * [in] index
+ * Index to set
+ *
+ * Returns:
+ * 0 - Success
+ */
+int tf_msg_set_tbl_entry(struct tf *tfp,
+ enum tf_dir dir,
+ uint16_t hcapi_type,
+ uint16_t size,
+ uint8_t *data,
+ uint32_t index);
+
+/**
+ * Sends get message of a Table Type element to the firmware.
+ *
+ * [in] tfp
+ * Pointer to session handle
+ *
+ * [in] dir
+ * Direction location of the element to get
+ *
+ * [in] hcapi_type
+ * Type of the object to get
+ *
+ * [in] size
+ * Size of the data read
+ *
+ * [in] data
+ * Data read
+ *
+ * [in] index
+ * Index to get
+ *
+ * Returns:
+ * 0 - Success
+ */
+int tf_msg_get_tbl_entry(struct tf *tfp,
+ enum tf_dir dir,
+ uint16_t hcapi_type,
+ uint16_t size,
+ uint8_t *data,
+ uint32_t index);
+
+/* HWRM Tunneled messages */
+
+/**
+ * Sends bulk get message of a Table Type element to the firmware.
+ *
+ * [in] tfp
+ * Pointer to session handle
+ *
+ * [in] parms
+ * Pointer to table get bulk parameters
+ *
+ * Returns:
+ * 0 on Success else internal Truflow error
+ */
+int tf_msg_bulk_get_tbl_entry(struct tf *tfp,
+ struct tf_bulk_get_tbl_entry_parms *parms);
+