New upstream version 18.11-rc1
[deb_dpdk.git] / drivers / net / sfc / base / mcdi_mon.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  *
3  * Copyright (c) 2009-2018 Solarflare Communications Inc.
4  * All rights reserved.
5  */
6
7 #ifndef _SYS_MCDI_MON_H
8 #define _SYS_MCDI_MON_H
9
10 #include "efx.h"
11
12 #ifdef  __cplusplus
13 extern "C" {
14 #endif
15
16 #if EFSYS_OPT_MON_MCDI
17
18 #if EFSYS_OPT_MON_STATS
19
20         __checkReturn   efx_rc_t
21 mcdi_mon_cfg_build(
22     __in                efx_nic_t *enp);
23
24                         void
25 mcdi_mon_cfg_free(
26         __in            efx_nic_t *enp);
27
28
29 extern  __checkReturn                   efx_rc_t
30 mcdi_mon_ev(
31         __in                            efx_nic_t *enp,
32         __in                            efx_qword_t *eqp,
33         __out                           efx_mon_stat_t *idp,
34         __out                           efx_mon_stat_value_t *valuep);
35
36 extern  __checkReturn                   efx_rc_t
37 mcdi_mon_stats_update(
38         __in                            efx_nic_t *enp,
39         __in                            efsys_mem_t *esmp,
40         __inout_ecount(EFX_MON_NSTATS)  efx_mon_stat_value_t *values);
41
42 extern  __checkReturn                   efx_rc_t
43 mcdi_mon_limits_update(
44         __in                            efx_nic_t *enp,
45         __inout_ecount(EFX_MON_NSTATS)  efx_mon_stat_limits_t *values);
46
47 #endif  /* EFSYS_OPT_MON_STATS */
48
49 #endif /* EFSYS_OPT_MON_MCDI */
50
51 #ifdef  __cplusplus
52 }
53 #endif
54
55 #endif  /* _SYS_MCDI_MON_H */