Changeset View
Changeset View
Standalone View
Standalone View
head/sys/dev/sfxge/common/efx_mon.c
Show First 20 Lines • Show All 60 Lines • ▼ Show 20 Lines | efx_mon_name( | ||||
EFSYS_ASSERT(encp->enc_mon_type != EFX_MON_INVALID); | EFSYS_ASSERT(encp->enc_mon_type != EFX_MON_INVALID); | ||||
EFSYS_ASSERT3U(encp->enc_mon_type, <, EFX_MON_NTYPES); | EFSYS_ASSERT3U(encp->enc_mon_type, <, EFX_MON_NTYPES); | ||||
return (__efx_mon_name[encp->enc_mon_type]); | return (__efx_mon_name[encp->enc_mon_type]); | ||||
} | } | ||||
#endif /* EFSYS_OPT_NAMES */ | #endif /* EFSYS_OPT_NAMES */ | ||||
#if EFSYS_OPT_MON_MCDI | #if EFSYS_OPT_MON_MCDI | ||||
static efx_mon_ops_t __efx_mon_mcdi_ops = { | static const efx_mon_ops_t __efx_mon_mcdi_ops = { | ||||
NULL, /* emo_reset */ | NULL, /* emo_reset */ | ||||
NULL, /* emo_reconfigure */ | NULL, /* emo_reconfigure */ | ||||
#if EFSYS_OPT_MON_STATS | #if EFSYS_OPT_MON_STATS | ||||
mcdi_mon_stats_update /* emo_stats_update */ | mcdi_mon_stats_update /* emo_stats_update */ | ||||
#endif /* EFSYS_OPT_MON_STATS */ | #endif /* EFSYS_OPT_MON_STATS */ | ||||
}; | }; | ||||
#endif | #endif | ||||
__checkReturn efx_rc_t | __checkReturn efx_rc_t | ||||
efx_mon_init( | efx_mon_init( | ||||
__in efx_nic_t *enp) | __in efx_nic_t *enp) | ||||
{ | { | ||||
efx_nic_cfg_t *encp = &(enp->en_nic_cfg); | efx_nic_cfg_t *encp = &(enp->en_nic_cfg); | ||||
efx_mon_t *emp = &(enp->en_mon); | efx_mon_t *emp = &(enp->en_mon); | ||||
efx_mon_ops_t *emop; | const efx_mon_ops_t *emop; | ||||
efx_rc_t rc; | efx_rc_t rc; | ||||
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); | ||||
if (enp->en_mod_flags & EFX_MOD_MON) { | if (enp->en_mod_flags & EFX_MOD_MON) { | ||||
rc = EINVAL; | rc = EINVAL; | ||||
goto fail1; | goto fail1; | ||||
▲ Show 20 Lines • Show All 154 Lines • ▼ Show 20 Lines | #endif /* EFSYS_OPT_NAMES */ | ||||
__checkReturn efx_rc_t | __checkReturn efx_rc_t | ||||
efx_mon_stats_update( | efx_mon_stats_update( | ||||
__in efx_nic_t *enp, | __in efx_nic_t *enp, | ||||
__in efsys_mem_t *esmp, | __in efsys_mem_t *esmp, | ||||
__inout_ecount(EFX_MON_NSTATS) efx_mon_stat_value_t *values) | __inout_ecount(EFX_MON_NSTATS) efx_mon_stat_value_t *values) | ||||
{ | { | ||||
efx_mon_t *emp = &(enp->en_mon); | efx_mon_t *emp = &(enp->en_mon); | ||||
efx_mon_ops_t *emop = emp->em_emop; | const efx_mon_ops_t *emop = emp->em_emop; | ||||
EFSYS_ASSERT3U(enp->en_magic, ==, EFX_NIC_MAGIC); | EFSYS_ASSERT3U(enp->en_magic, ==, EFX_NIC_MAGIC); | ||||
EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_MON); | EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_MON); | ||||
return (emop->emo_stats_update(enp, esmp, values)); | return (emop->emo_stats_update(enp, esmp, values)); | ||||
} | } | ||||
#endif /* EFSYS_OPT_MON_STATS */ | #endif /* EFSYS_OPT_MON_STATS */ | ||||
void | void | ||||
efx_mon_fini( | efx_mon_fini( | ||||
__in efx_nic_t *enp) | __in efx_nic_t *enp) | ||||
{ | { | ||||
efx_mon_t *emp = &(enp->en_mon); | efx_mon_t *emp = &(enp->en_mon); | ||||
efx_mon_ops_t *emop = emp->em_emop; | const efx_mon_ops_t *emop = emp->em_emop; | ||||
efx_rc_t rc; | efx_rc_t rc; | ||||
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_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_MON); | EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_MON); | ||||
emp->em_emop = NULL; | emp->em_emop = NULL; | ||||
Show All 10 Lines |