| /linux/drivers/net/ethernet/qlogic/qed/ |
| H A D | qed_ptp.c | 42 static int qed_ptp_res_lock(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_ptp_res_lock() argument 54 rc = qed_mcp_resc_lock(p_hwfn, p_ptt, ¶ms); in qed_ptp_res_lock() 74 static int qed_ptp_res_unlock(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_ptp_res_unlock() argument 86 rc = qed_mcp_resc_unlock(p_hwfn, p_ptt, ¶ms); in qed_ptp_res_unlock() 106 struct qed_ptt *p_ptt = p_hwfn->p_ptp_ptt; in qed_ptp_hw_read_rx_ts() local 110 val = qed_rd(p_hwfn, p_ptt, NIG_REG_LLH_PTP_HOST_BUF_SEQID); in qed_ptp_hw_read_rx_ts() 116 val = qed_rd(p_hwfn, p_ptt, NIG_REG_LLH_PTP_HOST_BUF_TS_LSB); in qed_ptp_hw_read_rx_ts() 117 *timestamp = qed_rd(p_hwfn, p_ptt, NIG_REG_LLH_PTP_HOST_BUF_TS_MSB); in qed_ptp_hw_read_rx_ts() 122 qed_wr(p_hwfn, p_ptt, NIG_REG_LLH_PTP_HOST_BUF_SEQID, in qed_ptp_hw_read_rx_ts() 132 struct qed_ptt *p_ptt = p_hwfn->p_ptp_ptt; in qed_ptp_hw_read_tx_ts() local [all …]
|
| H A D | qed_mcp.h | 310 struct qed_ptt *p_ptt, 324 struct qed_ptt *p_ptt, 337 struct qed_ptt *p_ptt, u32 *p_mbi_ver); 350 struct qed_ptt *p_ptt, u32 *media_type); 364 struct qed_ptt *p_ptt, 380 struct qed_ptt *p_ptt, u32 *p_speed_mask); 393 struct qed_ptt *p_ptt, u32 *p_board_config); 414 struct qed_ptt *p_ptt, 439 struct qed_ptt *p_ptt, 456 struct qed_ptt *p_ptt); [all …]
|
| H A D | qed_mcp.c | 60 void qed_mcp_cmd_port_init(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_mcp_cmd_port_init() argument 64 u32 mfw_mb_offsize = qed_rd(p_hwfn, p_ptt, addr); in qed_mcp_cmd_port_init() 73 void qed_mcp_read_mb(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_mcp_read_mb() argument 82 tmp = qed_rd(p_hwfn, p_ptt, in qed_mcp_read_mb() 167 static int qed_load_mcp_offsets(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_load_mcp_offsets() argument 175 p_info->public_base = qed_rd(p_hwfn, p_ptt, MISC_REG_SHARED_MEM_ADDR); in qed_load_mcp_offsets() 185 mfw_mb_offsize = qed_rd(p_hwfn, p_ptt, in qed_load_mcp_offsets() 189 p_info->mfw_mb_length = (u16)qed_rd(p_hwfn, p_ptt, in qed_load_mcp_offsets() 202 (u16)qed_rd(p_hwfn, p_ptt, in qed_load_mcp_offsets() 215 drv_mb_offsize = qed_rd(p_hwfn, p_ptt, in qed_load_mcp_offsets() [all …]
|
| H A D | qed_hw.c | 85 struct qed_ptt *p_ptt; in qed_ptt_acquire_context() local 98 p_ptt = list_first_entry(&p_hwfn->p_ptt_pool->free_list, in qed_ptt_acquire_context() 100 list_del(&p_ptt->list_entry); in qed_ptt_acquire_context() 105 "allocated ptt %d\n", p_ptt->idx); in qed_ptt_acquire_context() 106 return p_ptt; in qed_ptt_acquire_context() 122 void qed_ptt_release(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_ptt_release() argument 125 list_add(&p_ptt->list_entry, &p_hwfn->p_ptt_pool->free_list); in qed_ptt_release() 129 u32 qed_ptt_get_hw_addr(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_ptt_get_hw_addr() argument 132 return le32_to_cpu(p_ptt->pxp.offset) << 2; in qed_ptt_get_hw_addr() 135 static u32 qed_ptt_config_addr(struct qed_ptt *p_ptt) in qed_ptt_config_addr() argument [all …]
|
| H A D | qed_init_fw_funcs.c | 606 struct qed_ptt *p_ptt, in qed_tx_pq_map_rt_init() argument 702 qed_wr(p_hwfn, p_ptt, PQ_INFO_RAM_GRC_ADDRESS(pq_id), in qed_tx_pq_map_rt_init() 882 struct qed_ptt *p_ptt) in qed_poll_on_qm_cmd_ready() argument 889 reg_val = qed_rd(p_hwfn, p_ptt, QM_REG_SDMCMDREADY); in qed_poll_on_qm_cmd_ready() 903 struct qed_ptt *p_ptt, in qed_send_qm_cmd() argument 906 if (!qed_poll_on_qm_cmd_ready(p_hwfn, p_ptt)) in qed_send_qm_cmd() 909 qed_wr(p_hwfn, p_ptt, QM_REG_SDMCMDADDR, cmd_addr); in qed_send_qm_cmd() 910 qed_wr(p_hwfn, p_ptt, QM_REG_SDMCMDDATALSB, cmd_data_lsb); in qed_send_qm_cmd() 911 qed_wr(p_hwfn, p_ptt, QM_REG_SDMCMDDATAMSB, cmd_data_msb); in qed_send_qm_cmd() 912 qed_wr(p_hwfn, p_ptt, QM_REG_SDMCMDGO, 1); in qed_send_qm_cmd() [all …]
|
| H A D | qed_selftest.c | 43 struct qed_ptt *p_ptt; in qed_selftest_register() local 49 p_ptt = qed_ptt_acquire(p_hwfn); in qed_selftest_register() 50 if (!p_ptt) { in qed_selftest_register() 54 rc = qed_mcp_bist_register_test(p_hwfn, p_ptt); in qed_selftest_register() 55 qed_ptt_release(p_hwfn, p_ptt); in qed_selftest_register() 66 struct qed_ptt *p_ptt; in qed_selftest_clock() local 72 p_ptt = qed_ptt_acquire(p_hwfn); in qed_selftest_clock() 73 if (!p_ptt) { in qed_selftest_clock() 77 rc = qed_mcp_bist_clock_test(p_hwfn, p_ptt); in qed_selftest_clock() 78 qed_ptt_release(p_hwfn, p_ptt); in qed_selftest_clock() [all …]
|
| H A D | qed_int.h | 65 struct qed_ptt *p_ptt, 77 struct qed_ptt *p_ptt); 106 struct qed_ptt *p_ptt, 121 struct qed_ptt *p_ptt, 198 int qed_int_get_sb_dbg(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt, 211 int qed_db_rec_handler(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt); 259 int qed_int_igu_reset_cam(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt); 284 struct qed_ptt *p_ptt, 302 struct qed_ptt *p_ptt); 367 struct qed_ptt *p_ptt, [all …]
|
| H A D | qed_dev.c | 622 qed_llh_set_engine_affin(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_llh_set_engine_affin() argument 629 rc = qed_mcp_get_engine_config(p_hwfn, p_ptt); in qed_llh_set_engine_affin() 677 struct qed_ptt *p_ptt) in qed_llh_hw_init_pf() argument 691 qed_wr(p_hwfn, p_ptt, addr, p_hwfn->rel_pf_id); in qed_llh_hw_init_pf() 704 rc = qed_llh_set_engine_affin(p_hwfn, p_ptt); in qed_llh_hw_init_pf() 725 struct qed_ptt *p_ptt = qed_ptt_acquire(p_hwfn); in qed_llh_set_ppfid_affinity() local 730 if (!p_ptt) in qed_llh_set_ppfid_affinity() 757 val = qed_rd(p_hwfn, p_ptt, addr); in qed_llh_set_ppfid_affinity() 759 qed_wr(p_hwfn, p_ptt, addr, val); in qed_llh_set_ppfid_affinity() 765 qed_ptt_release(p_hwfn, p_ptt); in qed_llh_set_ppfid_affinity() [all …]
|
| H A D | qed_int.c | 234 int qed_pglueb_rbc_attn_handler(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt, in qed_pglueb_rbc_attn_handler() argument 240 tmp = qed_rd(p_hwfn, p_ptt, PGLUE_B_REG_TX_ERR_WR_DETAILS2); in qed_pglueb_rbc_attn_handler() 244 addr_lo = qed_rd(p_hwfn, p_ptt, in qed_pglueb_rbc_attn_handler() 246 addr_hi = qed_rd(p_hwfn, p_ptt, in qed_pglueb_rbc_attn_handler() 248 details = qed_rd(p_hwfn, p_ptt, in qed_pglueb_rbc_attn_handler() 270 tmp = qed_rd(p_hwfn, p_ptt, PGLUE_B_REG_TX_ERR_RD_DETAILS2); in qed_pglueb_rbc_attn_handler() 274 addr_lo = qed_rd(p_hwfn, p_ptt, in qed_pglueb_rbc_attn_handler() 276 addr_hi = qed_rd(p_hwfn, p_ptt, in qed_pglueb_rbc_attn_handler() 278 details = qed_rd(p_hwfn, p_ptt, in qed_pglueb_rbc_attn_handler() 299 tmp = qed_rd(p_hwfn, p_ptt, PGLUE_B_REG_TX_ERR_WR_DETAILS_ICPL); in qed_pglueb_rbc_attn_handler() [all …]
|
| H A D | qed_debug.c | 1058 struct qed_ptt *p_ptt, in qed_read_storm_fw_info() argument 1079 dest[i] = qed_rd(p_hwfn, p_ptt, addr); in qed_read_storm_fw_info() 1091 dest[i] = qed_rd(p_hwfn, p_ptt, addr); in qed_read_storm_fw_info() 1181 struct qed_ptt *p_ptt, in qed_dump_fw_ver_param() argument 1191 qed_read_fw_info(p_hwfn, p_ptt, &fw_info); in qed_dump_fw_ver_param() 1231 struct qed_ptt *p_ptt, in qed_dump_mfw_ver_param() argument 1245 p_ptt, in qed_dump_mfw_ver_param() 1254 global_section_offsize = qed_rd(p_hwfn, p_ptt, in qed_dump_mfw_ver_param() 1261 mfw_ver = qed_rd(p_hwfn, p_ptt, in qed_dump_mfw_ver_param() 1280 struct qed_ptt *p_ptt, in qed_dump_chip_revision_param() argument [all …]
|
| H A D | qed_init_ops.c | 160 struct qed_ptt *p_ptt, in qed_init_rt() argument 179 qed_wr(p_hwfn, p_ptt, addr + (i << 2), p_init_val[i]); in qed_init_rt() 189 rc = qed_dmae_host2grc(p_hwfn, p_ptt, in qed_init_rt() 237 struct qed_ptt *p_ptt, in qed_init_array_dmae() argument 253 qed_wr(p_hwfn, p_ptt, addr + (i << 2), data[i]); in qed_init_array_dmae() 255 rc = qed_dmae_host2grc(p_hwfn, p_ptt, in qed_init_array_dmae() 264 struct qed_ptt *p_ptt, in qed_init_fill_dmae() argument 279 return qed_dmae_host2grc(p_hwfn, p_ptt, in qed_init_fill_dmae() 285 struct qed_ptt *p_ptt, in qed_init_fill() argument 291 qed_wr(p_hwfn, p_ptt, addr, fill); in qed_init_fill() [all …]
|
| H A D | qed_sriov.c | 306 int vfid, struct qed_ptt *p_ptt) in qed_iov_post_vf_bulletin() argument 335 return qed_dmae_host2host(p_hwfn, p_ptt, p_vf->bulletin.phys, in qed_iov_post_vf_bulletin() 706 struct qed_ptt *p_ptt, u8 abs_vfid) in qed_iov_vf_pglue_clear_err() argument 708 qed_wr(p_hwfn, p_ptt, in qed_iov_vf_pglue_clear_err() 714 struct qed_ptt *p_ptt, struct qed_vf_info *vf) in qed_iov_vf_igu_reset() argument 719 qed_fid_pretend(p_hwfn, p_ptt, (u16)vf->concrete_fid); in qed_iov_vf_igu_reset() 721 qed_wr(p_hwfn, p_ptt, IGU_REG_STATISTIC_NUM_VF_MSG_SENT, 0); in qed_iov_vf_igu_reset() 724 qed_fid_pretend(p_hwfn, p_ptt, (u16)p_hwfn->hw_info.concrete_fid); in qed_iov_vf_igu_reset() 728 qed_int_igu_init_pure_rt_single(p_hwfn, p_ptt, in qed_iov_vf_igu_reset() 734 struct qed_ptt *p_ptt, in qed_iov_vf_igu_set_int() argument [all …]
|
| H A D | qed_dev_api.h | 224 struct qed_ptt *p_ptt); 248 struct qed_ptt *p_ptt, 266 int qed_dmae_grc2host(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt, 285 struct qed_ptt *p_ptt, 453 struct qed_ptt *p_ptt, u16 id, bool is_vf); 494 struct qed_ptt *p_ptt, bool b_enable);
|
| H A D | qed_dcbx.c | 167 struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt, in qed_dcbx_set_params() argument 191 qed_wr(p_hwfn, p_ptt, DORQ_REG_TAG1_OVRD_MODE, 1); in qed_dcbx_set_params() 192 qed_wr(p_hwfn, p_ptt, DORQ_REG_PF_PCP_BB_K2, prio << 1); in qed_dcbx_set_params() 199 struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt, in qed_dcbx_update_app_info() argument 215 qed_dcbx_set_params(p_data, p_hwfn, p_ptt, app_tlv, enable, in qed_dcbx_update_app_info() 250 qed_dcbx_process_tlv(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt, in qed_dcbx_process_tlv() argument 294 qed_dcbx_update_app_info(p_data, p_hwfn, p_ptt, true, in qed_dcbx_process_tlv() 316 qed_dcbx_update_app_info(p_data, p_hwfn, p_ptt, false, enable, in qed_dcbx_process_tlv() 327 qed_dcbx_process_mib_info(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_dcbx_process_mib_info() argument 351 rc = qed_dcbx_process_tlv(p_hwfn, p_ptt, &data, p_tbl, pri_tc_tbl, in qed_dcbx_process_mib_info() [all …]
|
| H A D | qed_roce.h | 13 void qed_roce_dpm_dcbx(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt); 16 struct qed_ptt *p_ptt) {} in qed_roce_dpm_dcbx() argument 21 int qed_roce_init_hw(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt);
|
| H A D | qed_sp_commands.c | 238 struct qed_ptt *p_ptt, in qed_set_hw_tunn_mode() argument 241 qed_set_gre_enable(p_hwfn, p_ptt, p_tun->l2_gre.b_mode_enabled, in qed_set_hw_tunn_mode() 243 qed_set_vxlan_enable(p_hwfn, p_ptt, p_tun->vxlan.b_mode_enabled); in qed_set_hw_tunn_mode() 245 qed_set_geneve_enable(p_hwfn, p_ptt, p_tun->l2_geneve.b_mode_enabled, in qed_set_hw_tunn_mode() 250 struct qed_ptt *p_ptt, in qed_set_hw_tunn_mode_port() argument 254 qed_set_vxlan_dest_port(p_hwfn, p_ptt, in qed_set_hw_tunn_mode_port() 258 qed_set_geneve_dest_port(p_hwfn, p_ptt, in qed_set_hw_tunn_mode_port() 261 qed_set_hw_tunn_mode(p_hwfn, p_ptt, p_tunn); in qed_set_hw_tunn_mode_port() 301 struct qed_ptt *p_ptt, in qed_sp_pf_start() argument 423 qed_set_hw_tunn_mode_port(p_hwfn, p_ptt, in qed_sp_pf_start() [all …]
|
| H A D | qed_rdma.c | 535 static int qed_rdma_init_hw(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt) in qed_rdma_init_hw() argument 543 qed_iwarp_init_hw(p_hwfn, p_ptt); in qed_rdma_init_hw() 545 rc = qed_roce_init_hw(p_hwfn, p_ptt); in qed_rdma_init_hw() 552 struct qed_ptt *p_ptt) in qed_rdma_start_fw() argument 661 struct qed_ptt *p_ptt, in qed_rdma_setup() argument 676 rc = qed_rdma_init_hw(p_hwfn, p_ptt); in qed_rdma_setup() 690 return qed_rdma_start_fw(p_hwfn, params, p_ptt); in qed_rdma_setup() 699 struct qed_ptt *p_ptt; in qed_rdma_stop() local 705 p_ptt = qed_ptt_acquire(p_hwfn); in qed_rdma_stop() 706 if (!p_ptt) { in qed_rdma_stop() [all …]
|
| H A D | qed_fcoe.c | 336 struct qed_ptt *p_ptt, in qed_sp_fcoe_func_stop() argument 358 active_segs = qed_rd(p_hwfn, p_ptt, TM_REG_PF_ENABLE_TASK); in qed_sp_fcoe_func_stop() 360 qed_wr(p_hwfn, p_ptt, TM_REG_PF_ENABLE_TASK, active_segs); in qed_sp_fcoe_func_stop() 643 struct qed_ptt *p_ptt, in _qed_fcoe_get_tstats() argument 652 qed_memcpy_from(p_hwfn, p_ptt, &tstats, tstats_addr, sizeof(tstats)); in _qed_fcoe_get_tstats() 675 struct qed_ptt *p_ptt, in _qed_fcoe_get_pstats() argument 684 qed_memcpy_from(p_hwfn, p_ptt, &pstats, pstats_addr, sizeof(pstats)); in _qed_fcoe_get_pstats() 699 struct qed_ptt *p_ptt; in qed_fcoe_get_stats() local 703 p_ptt = qed_ptt_acquire_context(p_hwfn, is_atomic); in qed_fcoe_get_stats() 705 if (!p_ptt) { in qed_fcoe_get_stats() [all …]
|
| H A D | qed_l2.h | 293 struct qed_ptt *p_ptt, 439 struct qed_ptt *p_ptt, 443 struct qed_ptt *p_ptt, 447 struct qed_ptt *p_ptt, 451 struct qed_ptt *p_ptt,
|
| H A D | qed_rdma.h | 173 void qed_rdma_dpm_bar(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt); 174 void qed_rdma_dpm_conf(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt); 179 struct qed_ptt *p_ptt) {} in qed_rdma_dpm_conf() argument 181 struct qed_ptt *p_ptt) {} in qed_rdma_dpm_bar() argument
|
| H A D | qed_iscsi.c | 884 struct qed_ptt *p_ptt, in _qed_iscsi_get_tstats() argument 893 qed_memcpy_from(p_hwfn, p_ptt, &tstats, tstats_addr, sizeof(tstats)); in _qed_iscsi_get_tstats() 910 struct qed_ptt *p_ptt, in _qed_iscsi_get_mstats() argument 919 qed_memcpy_from(p_hwfn, p_ptt, &mstats, mstats_addr, sizeof(mstats)); in _qed_iscsi_get_mstats() 926 struct qed_ptt *p_ptt, in _qed_iscsi_get_ustats() argument 935 qed_memcpy_from(p_hwfn, p_ptt, &ustats, ustats_addr, sizeof(ustats)); in _qed_iscsi_get_ustats() 946 struct qed_ptt *p_ptt, in _qed_iscsi_get_xstats() argument 955 qed_memcpy_from(p_hwfn, p_ptt, &xstats, xstats_addr, sizeof(xstats)); in _qed_iscsi_get_xstats() 964 struct qed_ptt *p_ptt, in _qed_iscsi_get_ystats() argument 973 qed_memcpy_from(p_hwfn, p_ptt, &ystats, ystats_addr, sizeof(ystats)); in _qed_iscsi_get_ystats() [all …]
|
| H A D | qed_spq.c | 95 struct qed_ptt *p_ptt; in qed_spq_block() local 112 p_ptt = qed_ptt_acquire(p_hwfn); in qed_spq_block() 113 if (!p_ptt) { in qed_spq_block() 119 rc = qed_mcp_drain(p_hwfn, p_ptt); in qed_spq_block() 120 qed_ptt_release(p_hwfn, p_ptt); in qed_spq_block() 138 p_ptt = qed_ptt_acquire(p_hwfn); in qed_spq_block() 139 if (!p_ptt) in qed_spq_block() 141 qed_hw_err_notify(p_hwfn, p_ptt, QED_HW_ERR_RAMROD_FAIL, in qed_spq_block() 150 qed_ptt_release(p_hwfn, p_ptt); in qed_spq_block()
|
| H A D | qed_dcbx.h | 90 int qed_dcbx_config_params(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt, 96 qed_dcbx_mib_update_event(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt,
|
| H A D | qed_cxt.h | 146 void qed_cxt_hw_init_pf(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt); 158 struct qed_ptt *p_ptt, bool is_pf_loading); 168 int qed_qm_reconf(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt);
|
| H A D | qed_ll2.c | 1569 struct qed_ptt *p_ptt; in qed_ll2_establish_connection() local 1575 p_ptt = qed_ptt_acquire(p_hwfn); in qed_ll2_establish_connection() 1576 if (!p_ptt) in qed_ll2_establish_connection() 1701 qed_wr(p_hwfn, p_ptt, PRS_REG_USE_LIGHT_L2, 1); in qed_ll2_establish_connection() 1716 qed_ptt_release(p_hwfn, p_ptt); in qed_ll2_establish_connection() 2093 struct qed_ptt *p_ptt; in qed_ll2_terminate_connection() local 2095 p_ptt = qed_ptt_acquire(p_hwfn); in qed_ll2_terminate_connection() 2096 if (!p_ptt) in qed_ll2_terminate_connection() 2148 qed_ptt_release(p_hwfn, p_ptt); in qed_ll2_terminate_connection() 2234 struct qed_ptt *p_ptt, in _qed_ll2_get_port_stats() argument [all …]
|