1 /*- 2 * Copyright 2008-2013 Solarflare Communications Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * 2. Redistributions in binary form must reproduce the above copyright 10 * notice, this list of conditions and the following disclaimer in the 11 * documentation and/or other materials provided with the distribution. 12 * 13 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS AND 14 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23 * SUCH DAMAGE. 24 */ 25 26 #ifndef _SYS_FALCON_GMAC_H 27 #define _SYS_FALCON_GMAC_H 28 29 #include "efx.h" 30 31 #ifdef __cplusplus 32 extern "C" { 33 #endif 34 35 #if EFSYS_OPT_MAC_FALCON_GMAC 36 37 #if EFSYS_OPT_LOOPBACK 38 39 #define FALCON_GMAC_LOOPBACK_MASK \ 40 (1 << EFX_LOOPBACK_GMAC) 41 42 #endif /* EFSYS_OPT_LOOPBACK */ 43 44 #define GMAC_INTR_SUPPORTED B_FALSE 45 46 extern __checkReturn int 47 falcon_gmac_reset( 48 __in efx_nic_t *enp); 49 50 extern __checkReturn int 51 falcon_gmac_reconfigure( 52 __in efx_nic_t *enp); 53 54 #if EFSYS_OPT_MAC_STATS 55 56 extern __checkReturn int 57 falcon_gmac_stats_update( 58 __in efx_nic_t *enp, 59 __in efsys_mem_t *esmp, 60 __inout_ecount(EFX_MAC_NSTATS) efsys_stat_t *essp, 61 __out_opt uint32_t *generationp); 62 #endif 63 64 #endif /* EFSYS_OPT_MAC_GMAC */ 65 66 #ifdef __cplusplus 67 } 68 #endif 69 70 #endif /* _SYS_FALCON_GMAC_H */