Lines Matching refs:hw
31 static void e1000_raise_eec_clk(struct e1000_hw *hw, u32 *eecd) in e1000_raise_eec_clk() argument
36 udelay(hw->nvm.delay_usec); in e1000_raise_eec_clk()
46 static void e1000_lower_eec_clk(struct e1000_hw *hw, u32 *eecd) in e1000_lower_eec_clk() argument
51 udelay(hw->nvm.delay_usec); in e1000_lower_eec_clk()
64 static void e1000_shift_out_eec_bits(struct e1000_hw *hw, u16 data, u16 count) in e1000_shift_out_eec_bits() argument
66 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_shift_out_eec_bits()
85 e1000_raise_eec_clk(hw, &eecd); in e1000_shift_out_eec_bits()
86 e1000_lower_eec_clk(hw, &eecd); in e1000_shift_out_eec_bits()
106 static u16 e1000_shift_in_eec_bits(struct e1000_hw *hw, u16 count) in e1000_shift_in_eec_bits() argument
118 e1000_raise_eec_clk(hw, &eecd); in e1000_shift_in_eec_bits()
126 e1000_lower_eec_clk(hw, &eecd); in e1000_shift_in_eec_bits()
140 s32 e1000e_poll_eerd_eewr_done(struct e1000_hw *hw, int ee_reg) in e1000e_poll_eerd_eewr_done() argument
168 s32 e1000e_acquire_nvm(struct e1000_hw *hw) in e1000e_acquire_nvm() argument
200 static void e1000_standby_nvm(struct e1000_hw *hw) in e1000_standby_nvm() argument
202 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_standby_nvm()
224 static void e1000_stop_nvm(struct e1000_hw *hw) in e1000_stop_nvm() argument
229 if (hw->nvm.type == e1000_nvm_eeprom_spi) { in e1000_stop_nvm()
232 e1000_lower_eec_clk(hw, &eecd); in e1000_stop_nvm()
242 void e1000e_release_nvm(struct e1000_hw *hw) in e1000e_release_nvm() argument
246 e1000_stop_nvm(hw); in e1000e_release_nvm()
259 static s32 e1000_ready_nvm_eeprom(struct e1000_hw *hw) in e1000_ready_nvm_eeprom() argument
261 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_ready_nvm_eeprom()
280 e1000_shift_out_eec_bits(hw, NVM_RDSR_OPCODE_SPI, in e1000_ready_nvm_eeprom()
281 hw->nvm.opcode_bits); in e1000_ready_nvm_eeprom()
282 spi_stat_reg = (u8)e1000_shift_in_eec_bits(hw, 8); in e1000_ready_nvm_eeprom()
287 e1000_standby_nvm(hw); in e1000_ready_nvm_eeprom()
309 s32 e1000e_read_nvm_eerd(struct e1000_hw *hw, u16 offset, u16 words, u16 *data) in e1000e_read_nvm_eerd() argument
311 struct e1000_nvm_info *nvm = &hw->nvm; in e1000e_read_nvm_eerd()
329 ret_val = e1000e_poll_eerd_eewr_done(hw, E1000_NVM_POLL_READ); in e1000e_read_nvm_eerd()
353 s32 e1000e_write_nvm_spi(struct e1000_hw *hw, u16 offset, u16 words, u16 *data) in e1000e_write_nvm_spi() argument
355 struct e1000_nvm_info *nvm = &hw->nvm; in e1000e_write_nvm_spi()
371 ret_val = nvm->ops.acquire(hw); in e1000e_write_nvm_spi()
375 ret_val = e1000_ready_nvm_eeprom(hw); in e1000e_write_nvm_spi()
377 nvm->ops.release(hw); in e1000e_write_nvm_spi()
381 e1000_standby_nvm(hw); in e1000e_write_nvm_spi()
384 e1000_shift_out_eec_bits(hw, NVM_WREN_OPCODE_SPI, in e1000e_write_nvm_spi()
387 e1000_standby_nvm(hw); in e1000e_write_nvm_spi()
396 e1000_shift_out_eec_bits(hw, write_opcode, nvm->opcode_bits); in e1000e_write_nvm_spi()
397 e1000_shift_out_eec_bits(hw, (u16)((offset + widx) * 2), in e1000e_write_nvm_spi()
405 e1000_shift_out_eec_bits(hw, word_out, 16); in e1000e_write_nvm_spi()
409 e1000_standby_nvm(hw); in e1000e_write_nvm_spi()
414 nvm->ops.release(hw); in e1000e_write_nvm_spi()
429 s32 e1000_read_pba_string_generic(struct e1000_hw *hw, u8 *pba_num, in e1000_read_pba_string_generic() argument
443 ret_val = e1000_read_nvm(hw, NVM_PBA_OFFSET_0, 1, &nvm_data); in e1000_read_pba_string_generic()
449 ret_val = e1000_read_nvm(hw, NVM_PBA_OFFSET_1, 1, &pba_ptr); in e1000_read_pba_string_generic()
494 ret_val = e1000_read_nvm(hw, pba_ptr, 1, &length); in e1000_read_pba_string_generic()
515 ret_val = e1000_read_nvm(hw, pba_ptr + offset, 1, &nvm_data); in e1000_read_pba_string_generic()
536 s32 e1000_read_mac_addr_generic(struct e1000_hw *hw) in e1000_read_mac_addr_generic() argument
546 hw->mac.perm_addr[i] = (u8)(rar_low >> (i * 8)); in e1000_read_mac_addr_generic()
549 hw->mac.perm_addr[i + 4] = (u8)(rar_high >> (i * 8)); in e1000_read_mac_addr_generic()
552 hw->mac.addr[i] = hw->mac.perm_addr[i]; in e1000_read_mac_addr_generic()
564 s32 e1000e_validate_nvm_checksum_generic(struct e1000_hw *hw) in e1000e_validate_nvm_checksum_generic() argument
571 ret_val = e1000_read_nvm(hw, i, 1, &nvm_data); in e1000e_validate_nvm_checksum_generic()
595 s32 e1000e_update_nvm_checksum_generic(struct e1000_hw *hw) in e1000e_update_nvm_checksum_generic() argument
602 ret_val = e1000_read_nvm(hw, i, 1, &nvm_data); in e1000e_update_nvm_checksum_generic()
610 ret_val = e1000_write_nvm(hw, NVM_CHECKSUM_REG, 1, &checksum); in e1000e_update_nvm_checksum_generic()
624 void e1000e_reload_nvm_generic(struct e1000_hw *hw) in e1000e_reload_nvm_generic() argument