|
1 /* Intel(R) Gigabit Ethernet Linux driver |
|
2 * Copyright(c) 2007-2014 Intel Corporation. |
|
3 * |
|
4 * This program is free software; you can redistribute it and/or modify it |
|
5 * under the terms and conditions of the GNU General Public License, |
|
6 * version 2, as published by the Free Software Foundation. |
|
7 * |
|
8 * This program is distributed in the hope it will be useful, but WITHOUT |
|
9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
|
11 * more details. |
|
12 * |
|
13 * You should have received a copy of the GNU General Public License along with |
|
14 * this program; if not, see <http://www.gnu.org/licenses/>. |
|
15 * |
|
16 * The full GNU General Public License is included in this distribution in |
|
17 * the file called "COPYING". |
|
18 * |
|
19 * Contact Information: |
|
20 * e1000-devel Mailing List <e1000-devel@lists.sourceforge.net> |
|
21 * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 |
|
22 */ |
|
23 |
|
24 #ifndef _E1000_NVM_H_ |
|
25 #define _E1000_NVM_H_ |
|
26 |
|
27 s32 igb_acquire_nvm(struct e1000_hw *hw); |
|
28 void igb_release_nvm(struct e1000_hw *hw); |
|
29 s32 igb_read_mac_addr(struct e1000_hw *hw); |
|
30 s32 igb_read_part_num(struct e1000_hw *hw, u32 *part_num); |
|
31 s32 igb_read_part_string(struct e1000_hw *hw, u8 *part_num, |
|
32 u32 part_num_size); |
|
33 s32 igb_read_nvm_eerd(struct e1000_hw *hw, u16 offset, u16 words, u16 *data); |
|
34 s32 igb_read_nvm_spi(struct e1000_hw *hw, u16 offset, u16 words, u16 *data); |
|
35 s32 igb_write_nvm_spi(struct e1000_hw *hw, u16 offset, u16 words, u16 *data); |
|
36 s32 igb_validate_nvm_checksum(struct e1000_hw *hw); |
|
37 s32 igb_update_nvm_checksum(struct e1000_hw *hw); |
|
38 |
|
39 struct e1000_fw_version { |
|
40 u32 etrack_id; |
|
41 u16 eep_major; |
|
42 u16 eep_minor; |
|
43 u16 eep_build; |
|
44 |
|
45 u8 invm_major; |
|
46 u8 invm_minor; |
|
47 u8 invm_img_type; |
|
48 |
|
49 bool or_valid; |
|
50 u16 or_major; |
|
51 u16 or_build; |
|
52 u16 or_patch; |
|
53 }; |
|
54 void igb_get_fw_version(struct e1000_hw *hw, struct e1000_fw_version *fw_vers); |
|
55 |
|
56 #endif |