Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/ixgbe/ixgbe_common.h
/****************************************************************************** | /****************************************************************************** | ||||
Copyright (c) 2001-2015, Intel Corporation | Copyright (c) 2001-2017, Intel Corporation | ||||
All rights reserved. | All rights reserved. | ||||
Redistribution and use in source and binary forms, with or without | Redistribution and use in source and binary forms, with or without | ||||
modification, are permitted provided that the following conditions are met: | modification, are permitted provided that the following conditions are met: | ||||
1. Redistributions of source code must retain the above copyright notice, | 1. Redistributions of source code must retain the above copyright notice, | ||||
this list of conditions and the following disclaimer. | this list of conditions and the following disclaimer. | ||||
2. Redistributions in binary form must reproduce the above copyright | 2. Redistributions in binary form must reproduce the above copyright | ||||
notice, this list of conditions and the following disclaimer in the | notice, this list of conditions and the following disclaimer in the | ||||
documentation and/or other materials provided with the distribution. | documentation and/or other materials provided with the distribution. | ||||
3. Neither the name of the Intel Corporation nor the names of its | 3. Neither the name of the Intel Corporation nor the names of its | ||||
contributors may be used to endorse or promote products derived from | contributors may be used to endorse or promote products derived from | ||||
this software without specific prior written permission. | this software without specific prior written permission. | ||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | ||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | ||||
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||||
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||||
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||||
POSSIBILITY OF SUCH DAMAGE. | POSSIBILITY OF SUCH DAMAGE. | ||||
******************************************************************************/ | ******************************************************************************/ | ||||
/*$FreeBSD$*/ | /*$FreeBSD$*/ | ||||
#ifndef _IXGBE_COMMON_H_ | #ifndef _IXGBE_COMMON_H_ | ||||
#define _IXGBE_COMMON_H_ | #define _IXGBE_COMMON_H_ | ||||
Show All 33 Lines | |||||
s32 ixgbe_get_mac_addr_generic(struct ixgbe_hw *hw, u8 *mac_addr); | s32 ixgbe_get_mac_addr_generic(struct ixgbe_hw *hw, u8 *mac_addr); | ||||
s32 ixgbe_get_bus_info_generic(struct ixgbe_hw *hw); | s32 ixgbe_get_bus_info_generic(struct ixgbe_hw *hw); | ||||
void ixgbe_set_pci_config_data_generic(struct ixgbe_hw *hw, u16 link_status); | void ixgbe_set_pci_config_data_generic(struct ixgbe_hw *hw, u16 link_status); | ||||
void ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw); | void ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw); | ||||
s32 ixgbe_stop_adapter_generic(struct ixgbe_hw *hw); | s32 ixgbe_stop_adapter_generic(struct ixgbe_hw *hw); | ||||
s32 ixgbe_led_on_generic(struct ixgbe_hw *hw, u32 index); | s32 ixgbe_led_on_generic(struct ixgbe_hw *hw, u32 index); | ||||
s32 ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index); | s32 ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index); | ||||
s32 ixgbe_init_led_link_act_generic(struct ixgbe_hw *hw); | |||||
s32 ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw); | s32 ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw); | ||||
s32 ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data); | s32 ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data); | ||||
s32 ixgbe_write_eeprom_buffer_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, | s32 ixgbe_write_eeprom_buffer_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, | ||||
u16 words, u16 *data); | u16 words, u16 *data); | ||||
s32 ixgbe_read_eerd_generic(struct ixgbe_hw *hw, u16 offset, u16 *data); | s32 ixgbe_read_eerd_generic(struct ixgbe_hw *hw, u16 offset, u16 *data); | ||||
s32 ixgbe_read_eerd_buffer_generic(struct ixgbe_hw *hw, u16 offset, | s32 ixgbe_read_eerd_buffer_generic(struct ixgbe_hw *hw, u16 offset, | ||||
u16 words, u16 *data); | u16 words, u16 *data); | ||||
▲ Show 20 Lines • Show All 45 Lines • ▼ Show 20 Lines | |||||
s32 ixgbe_set_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr); | s32 ixgbe_set_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr); | ||||
s32 ixgbe_set_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq); | s32 ixgbe_set_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq); | ||||
s32 ixgbe_set_vmdq_san_mac_generic(struct ixgbe_hw *hw, u32 vmdq); | s32 ixgbe_set_vmdq_san_mac_generic(struct ixgbe_hw *hw, u32 vmdq); | ||||
s32 ixgbe_clear_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq); | s32 ixgbe_clear_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq); | ||||
s32 ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq); | s32 ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq); | ||||
s32 ixgbe_init_uta_tables_generic(struct ixgbe_hw *hw); | s32 ixgbe_init_uta_tables_generic(struct ixgbe_hw *hw); | ||||
s32 ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, | s32 ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, | ||||
u32 vind, bool vlan_on); | u32 vind, bool vlan_on, bool vlvf_bypass); | ||||
s32 ixgbe_set_vlvf_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, | s32 ixgbe_set_vlvf_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, | ||||
bool vlan_on, bool *vfta_changed); | bool vlan_on, u32 *vfta_delta, u32 vfta, | ||||
bool vlvf_bypass); | |||||
s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw); | s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw); | ||||
s32 ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan); | s32 ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan, bool vlvf_bypass); | ||||
s32 ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, | s32 ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, | ||||
ixgbe_link_speed *speed, | ixgbe_link_speed *speed, | ||||
bool *link_up, bool link_up_wait_to_complete); | bool *link_up, bool link_up_wait_to_complete); | ||||
s32 ixgbe_get_wwn_prefix_generic(struct ixgbe_hw *hw, u16 *wwnn_prefix, | s32 ixgbe_get_wwn_prefix_generic(struct ixgbe_hw *hw, u16 *wwnn_prefix, | ||||
u16 *wwpn_prefix); | u16 *wwpn_prefix); | ||||
s32 ixgbe_get_fcoe_boot_status_generic(struct ixgbe_hw *hw, u16 *bs); | s32 ixgbe_get_fcoe_boot_status_generic(struct ixgbe_hw *hw, u16 *bs); | ||||
void ixgbe_set_mac_anti_spoofing(struct ixgbe_hw *hw, bool enable, int pf); | void ixgbe_set_mac_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf); | ||||
void ixgbe_set_vlan_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf); | void ixgbe_set_vlan_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf); | ||||
s32 ixgbe_get_device_caps_generic(struct ixgbe_hw *hw, u16 *device_caps); | s32 ixgbe_get_device_caps_generic(struct ixgbe_hw *hw, u16 *device_caps); | ||||
void ixgbe_set_rxpba_generic(struct ixgbe_hw *hw, int num_pb, u32 headroom, | void ixgbe_set_rxpba_generic(struct ixgbe_hw *hw, int num_pb, u32 headroom, | ||||
int strategy); | int strategy); | ||||
void ixgbe_enable_relaxed_ordering_gen2(struct ixgbe_hw *hw); | void ixgbe_enable_relaxed_ordering_gen2(struct ixgbe_hw *hw); | ||||
s32 ixgbe_set_fw_drv_ver_generic(struct ixgbe_hw *hw, u8 maj, u8 min, | s32 ixgbe_set_fw_drv_ver_generic(struct ixgbe_hw *hw, u8 maj, u8 min, | ||||
u8 build, u8 ver); | u8 build, u8 ver, u16 len, const char *str); | ||||
u8 ixgbe_calculate_checksum(u8 *buffer, u32 length); | u8 ixgbe_calculate_checksum(u8 *buffer, u32 length); | ||||
s32 ixgbe_host_interface_command(struct ixgbe_hw *hw, u32 *buffer, | s32 ixgbe_host_interface_command(struct ixgbe_hw *hw, u32 *buffer, | ||||
u32 length, u32 timeout, bool return_data); | u32 length, u32 timeout, bool return_data); | ||||
s32 ixgbe_hic_unlocked(struct ixgbe_hw *, u32 *buffer, u32 length, u32 timeout); | |||||
s32 ixgbe_shutdown_fw_phy(struct ixgbe_hw *); | |||||
s32 ixgbe_fw_phy_activity(struct ixgbe_hw *, u16 activity, | |||||
u32 (*data)[FW_PHY_ACT_DATA_COUNT]); | |||||
void ixgbe_clear_tx_pending(struct ixgbe_hw *hw); | void ixgbe_clear_tx_pending(struct ixgbe_hw *hw); | ||||
s32 ixgbe_bypass_rw_generic(struct ixgbe_hw *hw, u32 cmd, u32 *status); | |||||
bool ixgbe_bypass_valid_rd_generic(u32 in_reg, u32 out_reg); | |||||
s32 ixgbe_bypass_set_generic(struct ixgbe_hw *hw, u32 ctrl, u32 event, | |||||
u32 action); | |||||
s32 ixgbe_bypass_rd_eep_generic(struct ixgbe_hw *hw, u32 addr, u8 *value); | |||||
extern s32 ixgbe_reset_pipeline_82599(struct ixgbe_hw *hw); | extern s32 ixgbe_reset_pipeline_82599(struct ixgbe_hw *hw); | ||||
extern void ixgbe_stop_mac_link_on_d3_82599(struct ixgbe_hw *hw); | extern void ixgbe_stop_mac_link_on_d3_82599(struct ixgbe_hw *hw); | ||||
bool ixgbe_mng_present(struct ixgbe_hw *hw); | bool ixgbe_mng_present(struct ixgbe_hw *hw); | ||||
bool ixgbe_mng_enabled(struct ixgbe_hw *hw); | bool ixgbe_mng_enabled(struct ixgbe_hw *hw); | ||||
void ixgbe_disable_rx_generic(struct ixgbe_hw *hw); | void ixgbe_disable_rx_generic(struct ixgbe_hw *hw); | ||||
void ixgbe_enable_rx_generic(struct ixgbe_hw *hw); | void ixgbe_enable_rx_generic(struct ixgbe_hw *hw); | ||||
s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, | s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, | ||||
ixgbe_link_speed speed, | ixgbe_link_speed speed, | ||||
bool autoneg_wait_to_complete); | bool autoneg_wait_to_complete); | ||||
void ixgbe_set_soft_rate_select_speed(struct ixgbe_hw *hw, | void ixgbe_set_soft_rate_select_speed(struct ixgbe_hw *hw, | ||||
ixgbe_link_speed speed); | ixgbe_link_speed speed); | ||||
#endif /* IXGBE_COMMON */ | #endif /* IXGBE_COMMON */ |