37 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2/* Copyright(c) 2007 - 2018 Intel Corporation. */3 4#ifndef _E1000_NVM_H_5#define _E1000_NVM_H_6 7s32 igb_acquire_nvm(struct e1000_hw *hw);8void igb_release_nvm(struct e1000_hw *hw);9s32 igb_read_mac_addr(struct e1000_hw *hw);10s32 igb_read_part_num(struct e1000_hw *hw, u32 *part_num);11s32 igb_read_part_string(struct e1000_hw *hw, u8 *part_num,12 u32 part_num_size);13s32 igb_read_nvm_eerd(struct e1000_hw *hw, u16 offset, u16 words, u16 *data);14s32 igb_read_nvm_spi(struct e1000_hw *hw, u16 offset, u16 words, u16 *data);15s32 igb_write_nvm_spi(struct e1000_hw *hw, u16 offset, u16 words, u16 *data);16s32 igb_validate_nvm_checksum(struct e1000_hw *hw);17s32 igb_update_nvm_checksum(struct e1000_hw *hw);18 19struct e1000_fw_version {20 u32 etrack_id;21 u16 eep_major;22 u16 eep_minor;23 u16 eep_build;24 25 u8 invm_major;26 u8 invm_minor;27 u8 invm_img_type;28 29 bool or_valid;30 u16 or_major;31 u16 or_build;32 u16 or_patch;33};34void igb_get_fw_version(struct e1000_hw *hw, struct e1000_fw_version *fw_vers);35 36#endif37