xref: /freebsd/sys/dev/sfxge/common/medford_impl.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
15f5c71ccSAndrew Rybchenko /*-
2*929c7febSAndrew Rybchenko  * Copyright (c) 2015-2016 Solarflare Communications Inc.
35f5c71ccSAndrew Rybchenko  * All rights reserved.
45f5c71ccSAndrew Rybchenko  *
55f5c71ccSAndrew Rybchenko  * Redistribution and use in source and binary forms, with or without
65f5c71ccSAndrew Rybchenko  * modification, are permitted provided that the following conditions are met:
75f5c71ccSAndrew Rybchenko  *
85f5c71ccSAndrew Rybchenko  * 1. Redistributions of source code must retain the above copyright notice,
95f5c71ccSAndrew Rybchenko  *    this list of conditions and the following disclaimer.
105f5c71ccSAndrew Rybchenko  * 2. Redistributions in binary form must reproduce the above copyright notice,
115f5c71ccSAndrew Rybchenko  *    this list of conditions and the following disclaimer in the documentation
125f5c71ccSAndrew Rybchenko  *    and/or other materials provided with the distribution.
135f5c71ccSAndrew Rybchenko  *
145f5c71ccSAndrew Rybchenko  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
155f5c71ccSAndrew Rybchenko  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
165f5c71ccSAndrew Rybchenko  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
175f5c71ccSAndrew Rybchenko  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
185f5c71ccSAndrew Rybchenko  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
195f5c71ccSAndrew Rybchenko  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
205f5c71ccSAndrew Rybchenko  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
215f5c71ccSAndrew Rybchenko  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
225f5c71ccSAndrew Rybchenko  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
235f5c71ccSAndrew Rybchenko  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
245f5c71ccSAndrew Rybchenko  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
255f5c71ccSAndrew Rybchenko  *
265f5c71ccSAndrew Rybchenko  * The views and conclusions contained in the software and documentation are
275f5c71ccSAndrew Rybchenko  * those of the authors and should not be interpreted as representing official
285f5c71ccSAndrew Rybchenko  * policies, either expressed or implied, of the FreeBSD Project.
295f5c71ccSAndrew Rybchenko  */
305f5c71ccSAndrew Rybchenko 
315f5c71ccSAndrew Rybchenko #ifndef	_SYS_MEDFORD_IMPL_H
325f5c71ccSAndrew Rybchenko #define	_SYS_MEDFORD_IMPL_H
335f5c71ccSAndrew Rybchenko 
345f5c71ccSAndrew Rybchenko #ifdef	__cplusplus
355f5c71ccSAndrew Rybchenko extern "C" {
365f5c71ccSAndrew Rybchenko #endif
375f5c71ccSAndrew Rybchenko 
38cfa023ebSAndrew Rybchenko #ifndef	ER_EZ_TX_PIOBUF_SIZE
39cfa023ebSAndrew Rybchenko #define	ER_EZ_TX_PIOBUF_SIZE	4096
40cfa023ebSAndrew Rybchenko #endif
41cfa023ebSAndrew Rybchenko 
42e7119ad9SAndrew Rybchenko #define	MEDFORD_PIOBUF_NBUFS	(16)
43cfa023ebSAndrew Rybchenko #define	MEDFORD_PIOBUF_SIZE	(ER_EZ_TX_PIOBUF_SIZE)
44cfa023ebSAndrew Rybchenko 
45cfa023ebSAndrew Rybchenko #define	MEDFORD_MIN_PIO_ALLOC_SIZE	(MEDFORD_PIOBUF_SIZE / 32)
46cfa023ebSAndrew Rybchenko 
47cfa023ebSAndrew Rybchenko extern	__checkReturn	efx_rc_t
48cfa023ebSAndrew Rybchenko medford_board_cfg(
49cfa023ebSAndrew Rybchenko 	__in		efx_nic_t *enp);
505f5c71ccSAndrew Rybchenko 
515f5c71ccSAndrew Rybchenko #ifdef	__cplusplus
525f5c71ccSAndrew Rybchenko }
535f5c71ccSAndrew Rybchenko #endif
545f5c71ccSAndrew Rybchenko 
555f5c71ccSAndrew Rybchenko #endif	/* _SYS_MEDFORD_IMPL_H */
56