efx_intr.c (291436) | efx_intr.c (293751) |
---|---|
1/*- 2 * Copyright (c) 2007-2015 Solarflare Communications Inc. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright notice, --- 15 unchanged lines hidden (view full) --- 24 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * 26 * The views and conclusions contained in the software and documentation are 27 * those of the authors and should not be interpreted as representing official 28 * policies, either expressed or implied, of the FreeBSD Project. 29 */ 30 31#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 2007-2015 Solarflare Communications Inc. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright notice, --- 15 unchanged lines hidden (view full) --- 24 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * 26 * The views and conclusions contained in the software and documentation are 27 * those of the authors and should not be interpreted as representing official 28 * policies, either expressed or implied, of the FreeBSD Project. 29 */ 30 31#include <sys/cdefs.h> |
32__FBSDID("$FreeBSD: head/sys/dev/sfxge/common/efx_intr.c 291436 2015-11-29 05:42:49Z arybchik $"); | 32__FBSDID("$FreeBSD: head/sys/dev/sfxge/common/efx_intr.c 293751 2016-01-12 13:30:42Z arybchik $"); |
33 34#include "efsys.h" 35#include "efx.h" 36#include "efx_types.h" 37#include "efx_regs.h" 38#include "efx_impl.h" 39 40 --- 55 unchanged lines hidden (view full) --- 96 falconsiena_intr_enable, /* eio_enable */ 97 falconsiena_intr_disable, /* eio_disable */ 98 falconsiena_intr_disable_unlocked, /* eio_disable_unlocked */ 99 falconsiena_intr_trigger, /* eio_trigger */ 100 falconsiena_intr_fini, /* eio_fini */ 101}; 102#endif /* EFSYS_OPT_SIENA */ 103 | 33 34#include "efsys.h" 35#include "efx.h" 36#include "efx_types.h" 37#include "efx_regs.h" 38#include "efx_impl.h" 39 40 --- 55 unchanged lines hidden (view full) --- 96 falconsiena_intr_enable, /* eio_enable */ 97 falconsiena_intr_disable, /* eio_disable */ 98 falconsiena_intr_disable_unlocked, /* eio_disable_unlocked */ 99 falconsiena_intr_trigger, /* eio_trigger */ 100 falconsiena_intr_fini, /* eio_fini */ 101}; 102#endif /* EFSYS_OPT_SIENA */ 103 |
104#if EFSYS_OPT_HUNTINGTON 105static efx_intr_ops_t __efx_intr_hunt_ops = { 106 hunt_intr_init, /* eio_init */ 107 hunt_intr_enable, /* eio_enable */ 108 hunt_intr_disable, /* eio_disable */ 109 hunt_intr_disable_unlocked, /* eio_disable_unlocked */ 110 hunt_intr_trigger, /* eio_trigger */ 111 hunt_intr_fini, /* eio_fini */ | 104#if EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD 105static efx_intr_ops_t __efx_intr_ef10_ops = { 106 ef10_intr_init, /* eio_init */ 107 ef10_intr_enable, /* eio_enable */ 108 ef10_intr_disable, /* eio_disable */ 109 ef10_intr_disable_unlocked, /* eio_disable_unlocked */ 110 ef10_intr_trigger, /* eio_trigger */ 111 ef10_intr_fini, /* eio_fini */ |
112}; | 112}; |
113#endif /* EFSYS_OPT_HUNTINGTON */ | 113#endif /* EFSYS_OPT_HUNTINGTON || EFSYS_OPT_MEDFORD */ |
114 | 114 |
115 | |
116 __checkReturn efx_rc_t 117efx_intr_init( 118 __in efx_nic_t *enp, 119 __in efx_intr_type_t type, 120 __in efsys_mem_t *esmp) 121{ 122 efx_intr_t *eip = &(enp->en_intr); 123 efx_intr_ops_t *eiop; --- 23 unchanged lines hidden (view full) --- 147#if EFSYS_OPT_SIENA 148 case EFX_FAMILY_SIENA: 149 eiop = (efx_intr_ops_t *)&__efx_intr_siena_ops; 150 break; 151#endif /* EFSYS_OPT_SIENA */ 152 153#if EFSYS_OPT_HUNTINGTON 154 case EFX_FAMILY_HUNTINGTON: | 115 __checkReturn efx_rc_t 116efx_intr_init( 117 __in efx_nic_t *enp, 118 __in efx_intr_type_t type, 119 __in efsys_mem_t *esmp) 120{ 121 efx_intr_t *eip = &(enp->en_intr); 122 efx_intr_ops_t *eiop; --- 23 unchanged lines hidden (view full) --- 146#if EFSYS_OPT_SIENA 147 case EFX_FAMILY_SIENA: 148 eiop = (efx_intr_ops_t *)&__efx_intr_siena_ops; 149 break; 150#endif /* EFSYS_OPT_SIENA */ 151 152#if EFSYS_OPT_HUNTINGTON 153 case EFX_FAMILY_HUNTINGTON: |
155 eiop = (efx_intr_ops_t *)&__efx_intr_hunt_ops; | 154 eiop = (efx_intr_ops_t *)&__efx_intr_ef10_ops; |
156 break; 157#endif /* EFSYS_OPT_HUNTINGTON */ 158 | 155 break; 156#endif /* EFSYS_OPT_HUNTINGTON */ 157 |
158#if EFSYS_OPT_MEDFORD 159 case EFX_FAMILY_MEDFORD: 160 eiop = (efx_intr_ops_t *)&__efx_intr_ef10_ops; 161 break; 162#endif /* EFSYS_OPT_MEDFORD */ 163 |
|
159 default: 160 EFSYS_ASSERT(B_FALSE); 161 rc = ENOTSUP; 162 goto fail2; 163 } 164 165 if ((rc = eiop->eio_init(enp, type, esmp)) != 0) 166 goto fail3; --- 413 unchanged lines hidden --- | 164 default: 165 EFSYS_ASSERT(B_FALSE); 166 rc = ENOTSUP; 167 goto fail2; 168 } 169 170 if ((rc = eiop->eio_init(enp, type, esmp)) != 0) 171 goto fail3; --- 413 unchanged lines hidden --- |