1*69b5a878SDan McDonald /****************************************************************************** 2*69b5a878SDan McDonald 3*69b5a878SDan McDonald Copyright (c) 2001-2012, Intel Corporation 4*69b5a878SDan McDonald All rights reserved. 5*69b5a878SDan McDonald 6*69b5a878SDan McDonald Redistribution and use in source and binary forms, with or without 7*69b5a878SDan McDonald modification, are permitted provided that the following conditions are met: 8*69b5a878SDan McDonald 9*69b5a878SDan McDonald 1. Redistributions of source code must retain the above copyright notice, 10*69b5a878SDan McDonald this list of conditions and the following disclaimer. 11*69b5a878SDan McDonald 12*69b5a878SDan McDonald 2. Redistributions in binary form must reproduce the above copyright 13*69b5a878SDan McDonald notice, this list of conditions and the following disclaimer in the 14*69b5a878SDan McDonald documentation and/or other materials provided with the distribution. 15*69b5a878SDan McDonald 16*69b5a878SDan McDonald 3. Neither the name of the Intel Corporation nor the names of its 17*69b5a878SDan McDonald contributors may be used to endorse or promote products derived from 18*69b5a878SDan McDonald this software without specific prior written permission. 19*69b5a878SDan McDonald 20*69b5a878SDan McDonald THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21*69b5a878SDan McDonald AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22*69b5a878SDan McDonald IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23*69b5a878SDan McDonald ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 24*69b5a878SDan McDonald LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25*69b5a878SDan McDonald CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26*69b5a878SDan McDonald SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27*69b5a878SDan McDonald INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28*69b5a878SDan McDonald CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29*69b5a878SDan McDonald ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30*69b5a878SDan McDonald POSSIBILITY OF SUCH DAMAGE. 31*69b5a878SDan McDonald 32*69b5a878SDan McDonald ******************************************************************************/ 33*69b5a878SDan McDonald /*$FreeBSD: src/sys/dev/ixgbe/ixgbe_82599.h,v 1.1 2012/01/30 16:42:02 jfv Exp $*/ 34*69b5a878SDan McDonald 35*69b5a878SDan McDonald #ifndef _IXGBE_82599_H_ 36*69b5a878SDan McDonald #define _IXGBE_82599_H_ 37*69b5a878SDan McDonald 38*69b5a878SDan McDonald s32 ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, 39*69b5a878SDan McDonald ixgbe_link_speed *speed, bool *autoneg); 40*69b5a878SDan McDonald enum ixgbe_media_type ixgbe_get_media_type_82599(struct ixgbe_hw *hw); 41*69b5a878SDan McDonald void ixgbe_disable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw); 42*69b5a878SDan McDonald void ixgbe_enable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw); 43*69b5a878SDan McDonald void ixgbe_flap_tx_laser_multispeed_fiber(struct ixgbe_hw *hw); 44*69b5a878SDan McDonald s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, 45*69b5a878SDan McDonald ixgbe_link_speed speed, bool autoneg, 46*69b5a878SDan McDonald bool autoneg_wait_to_complete); 47*69b5a878SDan McDonald s32 ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, 48*69b5a878SDan McDonald ixgbe_link_speed speed, bool autoneg, 49*69b5a878SDan McDonald bool autoneg_wait_to_complete); 50*69b5a878SDan McDonald s32 ixgbe_start_mac_link_82599(struct ixgbe_hw *hw, 51*69b5a878SDan McDonald bool autoneg_wait_to_complete); 52*69b5a878SDan McDonald s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, ixgbe_link_speed speed, 53*69b5a878SDan McDonald bool autoneg, bool autoneg_wait_to_complete); 54*69b5a878SDan McDonald s32 ixgbe_setup_sfp_modules_82599(struct ixgbe_hw *hw); 55*69b5a878SDan McDonald void ixgbe_init_mac_link_ops_82599(struct ixgbe_hw *hw); 56*69b5a878SDan McDonald s32 ixgbe_reset_hw_82599(struct ixgbe_hw *hw); 57*69b5a878SDan McDonald s32 ixgbe_read_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 *val); 58*69b5a878SDan McDonald s32 ixgbe_write_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 val); 59*69b5a878SDan McDonald s32 ixgbe_start_hw_82599(struct ixgbe_hw *hw); 60*69b5a878SDan McDonald s32 ixgbe_identify_phy_82599(struct ixgbe_hw *hw); 61*69b5a878SDan McDonald s32 ixgbe_init_phy_ops_82599(struct ixgbe_hw *hw); 62*69b5a878SDan McDonald u32 ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw); 63*69b5a878SDan McDonald s32 ixgbe_enable_rx_dma_82599(struct ixgbe_hw *hw, u32 regval); 64*69b5a878SDan McDonald bool ixgbe_verify_lesm_fw_enabled_82599(struct ixgbe_hw *hw); 65*69b5a878SDan McDonald #endif /* _IXGBE_82599_H_ */ 66