Changeset View
Changeset View
Standalone View
Standalone View
head/sys/dev/sfxge/common/efx_mac.c
Show First 20 Lines • Show All 54 Lines • ▼ Show 20 Lines | static const efx_mac_ops_t __efx_siena_mac_ops = { | ||||
siena_mac_multicast_list_set, /* emo_multicast_list_set */ | siena_mac_multicast_list_set, /* emo_multicast_list_set */ | ||||
NULL, /* emo_filter_set_default_rxq */ | NULL, /* emo_filter_set_default_rxq */ | ||||
NULL, /* emo_filter_default_rxq_clear */ | NULL, /* emo_filter_default_rxq_clear */ | ||||
#if EFSYS_OPT_LOOPBACK | #if EFSYS_OPT_LOOPBACK | ||||
siena_mac_loopback_set, /* emo_loopback_set */ | siena_mac_loopback_set, /* emo_loopback_set */ | ||||
#endif /* EFSYS_OPT_LOOPBACK */ | #endif /* EFSYS_OPT_LOOPBACK */ | ||||
#if EFSYS_OPT_MAC_STATS | #if EFSYS_OPT_MAC_STATS | ||||
siena_mac_stats_get_mask, /* emo_stats_get_mask */ | siena_mac_stats_get_mask, /* emo_stats_get_mask */ | ||||
efx_mcdi_mac_stats_clear, /* emo_stats_clear */ | |||||
efx_mcdi_mac_stats_upload, /* emo_stats_upload */ | efx_mcdi_mac_stats_upload, /* emo_stats_upload */ | ||||
efx_mcdi_mac_stats_periodic, /* emo_stats_periodic */ | efx_mcdi_mac_stats_periodic, /* emo_stats_periodic */ | ||||
siena_mac_stats_update /* emo_stats_update */ | siena_mac_stats_update /* emo_stats_update */ | ||||
#endif /* EFSYS_OPT_MAC_STATS */ | #endif /* EFSYS_OPT_MAC_STATS */ | ||||
}; | }; | ||||
#endif /* EFSYS_OPT_SIENA */ | #endif /* EFSYS_OPT_SIENA */ | ||||
#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD | #if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD | ||||
static const efx_mac_ops_t __efx_ef10_mac_ops = { | static const efx_mac_ops_t __efx_ef10_mac_ops = { | ||||
ef10_mac_poll, /* emo_poll */ | ef10_mac_poll, /* emo_poll */ | ||||
ef10_mac_up, /* emo_up */ | ef10_mac_up, /* emo_up */ | ||||
ef10_mac_addr_set, /* emo_addr_set */ | ef10_mac_addr_set, /* emo_addr_set */ | ||||
ef10_mac_pdu_set, /* emo_pdu_set */ | ef10_mac_pdu_set, /* emo_pdu_set */ | ||||
ef10_mac_pdu_get, /* emo_pdu_get */ | ef10_mac_pdu_get, /* emo_pdu_get */ | ||||
ef10_mac_reconfigure, /* emo_reconfigure */ | ef10_mac_reconfigure, /* emo_reconfigure */ | ||||
ef10_mac_multicast_list_set, /* emo_multicast_list_set */ | ef10_mac_multicast_list_set, /* emo_multicast_list_set */ | ||||
ef10_mac_filter_default_rxq_set, /* emo_filter_default_rxq_set */ | ef10_mac_filter_default_rxq_set, /* emo_filter_default_rxq_set */ | ||||
ef10_mac_filter_default_rxq_clear, | ef10_mac_filter_default_rxq_clear, | ||||
/* emo_filter_default_rxq_clear */ | /* emo_filter_default_rxq_clear */ | ||||
#if EFSYS_OPT_LOOPBACK | #if EFSYS_OPT_LOOPBACK | ||||
ef10_mac_loopback_set, /* emo_loopback_set */ | ef10_mac_loopback_set, /* emo_loopback_set */ | ||||
#endif /* EFSYS_OPT_LOOPBACK */ | #endif /* EFSYS_OPT_LOOPBACK */ | ||||
#if EFSYS_OPT_MAC_STATS | #if EFSYS_OPT_MAC_STATS | ||||
ef10_mac_stats_get_mask, /* emo_stats_get_mask */ | ef10_mac_stats_get_mask, /* emo_stats_get_mask */ | ||||
efx_mcdi_mac_stats_clear, /* emo_stats_clear */ | |||||
efx_mcdi_mac_stats_upload, /* emo_stats_upload */ | efx_mcdi_mac_stats_upload, /* emo_stats_upload */ | ||||
efx_mcdi_mac_stats_periodic, /* emo_stats_periodic */ | efx_mcdi_mac_stats_periodic, /* emo_stats_periodic */ | ||||
ef10_mac_stats_update /* emo_stats_update */ | ef10_mac_stats_update /* emo_stats_update */ | ||||
#endif /* EFSYS_OPT_MAC_STATS */ | #endif /* EFSYS_OPT_MAC_STATS */ | ||||
}; | }; | ||||
#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD */ | #endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD */ | ||||
__checkReturn efx_rc_t | __checkReturn efx_rc_t | ||||
▲ Show 20 Lines • Show All 608 Lines • ▼ Show 20 Lines | efx_mac_stats_get_mask( | ||||
EFSYS_ASSERT3U(enp->en_magic, ==, EFX_NIC_MAGIC); | EFSYS_ASSERT3U(enp->en_magic, ==, EFX_NIC_MAGIC); | ||||
EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_PROBE); | EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_PROBE); | ||||
EFSYS_ASSERT(maskp != NULL); | EFSYS_ASSERT(maskp != NULL); | ||||
EFSYS_ASSERT(mask_size % sizeof (maskp[0]) == 0); | EFSYS_ASSERT(mask_size % sizeof (maskp[0]) == 0); | ||||
(void) memset(maskp, 0, mask_size); | (void) memset(maskp, 0, mask_size); | ||||
if ((rc = emop->emo_stats_get_mask(enp, maskp, mask_size)) != 0) | if ((rc = emop->emo_stats_get_mask(enp, maskp, mask_size)) != 0) | ||||
goto fail1; | |||||
return (0); | |||||
fail1: | |||||
EFSYS_PROBE1(fail1, efx_rc_t, rc); | |||||
return (rc); | |||||
} | |||||
__checkReturn efx_rc_t | |||||
efx_mac_stats_clear( | |||||
__in efx_nic_t *enp) | |||||
{ | |||||
efx_port_t *epp = &(enp->en_port); | |||||
const efx_mac_ops_t *emop = epp->ep_emop; | |||||
efx_rc_t rc; | |||||
EFSYS_ASSERT3U(enp->en_magic, ==, EFX_NIC_MAGIC); | |||||
EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_PORT); | |||||
EFSYS_ASSERT(emop != NULL); | |||||
if ((rc = emop->emo_stats_clear(enp)) != 0) | |||||
goto fail1; | goto fail1; | ||||
return (0); | return (0); | ||||
fail1: | fail1: | ||||
EFSYS_PROBE1(fail1, efx_rc_t, rc); | EFSYS_PROBE1(fail1, efx_rc_t, rc); | ||||
return (rc); | return (rc); | ||||
▲ Show 20 Lines • Show All 213 Lines • Show Last 20 Lines |