Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
0002 /* QLogic qed NIC Driver
0003  * Copyright (c) 2015 QLogic Corporation
0004  * Copyright (c) 2019-2021 Marvell International Ltd.
0005  */
0006 
0007 #ifndef _QED_DEBUG_H
0008 #define _QED_DEBUG_H
0009 
0010 enum qed_dbg_features {
0011     DBG_FEATURE_GRC,
0012     DBG_FEATURE_IDLE_CHK,
0013     DBG_FEATURE_MCP_TRACE,
0014     DBG_FEATURE_REG_FIFO,
0015     DBG_FEATURE_IGU_FIFO,
0016     DBG_FEATURE_PROTECTION_OVERRIDE,
0017     DBG_FEATURE_FW_ASSERTS,
0018     DBG_FEATURE_ILT,
0019     DBG_FEATURE_NUM
0020 };
0021 
0022 /* Forward Declaration */
0023 struct qed_dev;
0024 struct qed_hwfn;
0025 
0026 int qed_dbg_grc(struct qed_dev *cdev, void *buffer, u32 *num_dumped_bytes);
0027 int qed_dbg_grc_size(struct qed_dev *cdev);
0028 int qed_dbg_idle_chk(struct qed_dev *cdev, void *buffer,
0029              u32 *num_dumped_bytes);
0030 int qed_dbg_idle_chk_size(struct qed_dev *cdev);
0031 int qed_dbg_reg_fifo(struct qed_dev *cdev, void *buffer,
0032              u32 *num_dumped_bytes);
0033 int qed_dbg_reg_fifo_size(struct qed_dev *cdev);
0034 int qed_dbg_igu_fifo(struct qed_dev *cdev, void *buffer,
0035              u32 *num_dumped_bytes);
0036 int qed_dbg_igu_fifo_size(struct qed_dev *cdev);
0037 int qed_dbg_protection_override(struct qed_dev *cdev, void *buffer,
0038                 u32 *num_dumped_bytes);
0039 int qed_dbg_protection_override_size(struct qed_dev *cdev);
0040 int qed_dbg_fw_asserts(struct qed_dev *cdev, void *buffer,
0041                u32 *num_dumped_bytes);
0042 int qed_dbg_fw_asserts_size(struct qed_dev *cdev);
0043 int qed_dbg_ilt(struct qed_dev *cdev, void *buffer, u32 *num_dumped_bytes);
0044 int qed_dbg_ilt_size(struct qed_dev *cdev);
0045 int qed_dbg_mcp_trace(struct qed_dev *cdev, void *buffer,
0046               u32 *num_dumped_bytes);
0047 int qed_dbg_mcp_trace_size(struct qed_dev *cdev);
0048 int qed_dbg_phy_size(struct qed_dev *cdev);
0049 int qed_dbg_all_data(struct qed_dev *cdev, void *buffer);
0050 int qed_dbg_all_data_size(struct qed_dev *cdev);
0051 u8 qed_get_debug_engine(struct qed_dev *cdev);
0052 void qed_set_debug_engine(struct qed_dev *cdev, int engine_number);
0053 int qed_dbg_feature(struct qed_dev *cdev, void *buffer,
0054             enum qed_dbg_features feature, u32 *num_dumped_bytes);
0055 int qed_dbg_feature_size(struct qed_dev *cdev, enum qed_dbg_features feature);
0056 
0057 void qed_dbg_pf_init(struct qed_dev *cdev);
0058 void qed_dbg_pf_exit(struct qed_dev *cdev);
0059 
0060 #endif