New upstream version 18.11-rc1
[deb_dpdk.git] / drivers / net / ixgbe / base / ixgbe_x540.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2001-2018
3  */
4
5 #ifndef _IXGBE_X540_H_
6 #define _IXGBE_X540_H_
7
8 #include "ixgbe_type.h"
9
10 s32 ixgbe_get_link_capabilities_X540(struct ixgbe_hw *hw,
11                                      ixgbe_link_speed *speed, bool *autoneg);
12 enum ixgbe_media_type ixgbe_get_media_type_X540(struct ixgbe_hw *hw);
13 s32 ixgbe_setup_mac_link_X540(struct ixgbe_hw *hw, ixgbe_link_speed speed,
14                               bool link_up_wait_to_complete);
15 s32 ixgbe_reset_hw_X540(struct ixgbe_hw *hw);
16 s32 ixgbe_start_hw_X540(struct ixgbe_hw *hw);
17 u64 ixgbe_get_supported_physical_layer_X540(struct ixgbe_hw *hw);
18
19 s32 ixgbe_init_eeprom_params_X540(struct ixgbe_hw *hw);
20 s32 ixgbe_read_eerd_X540(struct ixgbe_hw *hw, u16 offset, u16 *data);
21 s32 ixgbe_read_eerd_buffer_X540(struct ixgbe_hw *hw, u16 offset, u16 words,
22                                 u16 *data);
23 s32 ixgbe_write_eewr_X540(struct ixgbe_hw *hw, u16 offset, u16 data);
24 s32 ixgbe_write_eewr_buffer_X540(struct ixgbe_hw *hw, u16 offset, u16 words,
25                                  u16 *data);
26 s32 ixgbe_update_eeprom_checksum_X540(struct ixgbe_hw *hw);
27 s32 ixgbe_validate_eeprom_checksum_X540(struct ixgbe_hw *hw, u16 *checksum_val);
28 s32 ixgbe_calc_eeprom_checksum_X540(struct ixgbe_hw *hw);
29 s32 ixgbe_update_flash_X540(struct ixgbe_hw *hw);
30
31 s32 ixgbe_acquire_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask);
32 void ixgbe_release_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask);
33 void ixgbe_init_swfw_sync_X540(struct ixgbe_hw *hw);
34
35 s32 ixgbe_blink_led_start_X540(struct ixgbe_hw *hw, u32 index);
36 s32 ixgbe_blink_led_stop_X540(struct ixgbe_hw *hw, u32 index);
37 #endif /* _IXGBE_X540_H_ */
38