Message ID | 20250102174142.200700-2-linux@treblig.org |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | igc deadcoding | expand |
On 1/2/2025 7:41 PM, linux@treblig.org wrote: > From: "Dr. David Alan Gilbert" <linux@treblig.org> > > igc_acquire_nvm() and igc_release_nvm() were added in 2018 as part of > commit ab4056126813 ("igc: Add NVM support") > > but never used. > > Remove them. > > The igc_1225.c has it's own specific implementations. > > Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org> Reviewed-by: Vitaly Lifshits <vitaly.lifshits@intel.com> > --- > drivers/net/ethernet/intel/igc/igc_nvm.c | 50 ------------------------ > drivers/net/ethernet/intel/igc/igc_nvm.h | 2 - > 2 files changed, 52 deletions(-) > > diff --git a/drivers/net/ethernet/intel/igc/igc_nvm.c b/drivers/net/ethernet/intel/igc/igc_nvm.c > index 58f81aba0144..efd121c03967 100644 > --- a/drivers/net/ethernet/intel/igc/igc_nvm.c > +++ b/drivers/net/ethernet/intel/igc/igc_nvm.c > @@ -35,56 +35,6 @@ static s32 igc_poll_eerd_eewr_done(struct igc_hw *hw, int ee_reg) > return ret_val; > } > > -/** > - * igc_acquire_nvm - Generic request for access to EEPROM > - * @hw: pointer to the HW structure > - * > - * Set the EEPROM access request bit and wait for EEPROM access grant bit. > - * Return successful if access grant bit set, else clear the request for > - * EEPROM access and return -IGC_ERR_NVM (-1). > - */ > -s32 igc_acquire_nvm(struct igc_hw *hw) > -{ > - s32 timeout = IGC_NVM_GRANT_ATTEMPTS; > - u32 eecd = rd32(IGC_EECD); > - s32 ret_val = 0; > - > - wr32(IGC_EECD, eecd | IGC_EECD_REQ); > - eecd = rd32(IGC_EECD); > - > - while (timeout) { > - if (eecd & IGC_EECD_GNT) > - break; > - udelay(5); > - eecd = rd32(IGC_EECD); > - timeout--; > - } > - > - if (!timeout) { > - eecd &= ~IGC_EECD_REQ; > - wr32(IGC_EECD, eecd); > - hw_dbg("Could not acquire NVM grant\n"); > - ret_val = -IGC_ERR_NVM; > - } > - > - return ret_val; > -} > - > -/** > - * igc_release_nvm - Release exclusive access to EEPROM > - * @hw: pointer to the HW structure > - * > - * Stop any current commands to the EEPROM and clear the EEPROM request bit. > - */ > -void igc_release_nvm(struct igc_hw *hw) > -{ > - u32 eecd; > - > - eecd = rd32(IGC_EECD); > - eecd &= ~IGC_EECD_REQ; > - wr32(IGC_EECD, eecd); > -} > - > /** > * igc_read_nvm_eerd - Reads EEPROM using EERD register > * @hw: pointer to the HW structure > diff --git a/drivers/net/ethernet/intel/igc/igc_nvm.h b/drivers/net/ethernet/intel/igc/igc_nvm.h > index f9fc2e9cfb03..ab78d0c64547 100644 > --- a/drivers/net/ethernet/intel/igc/igc_nvm.h > +++ b/drivers/net/ethernet/intel/igc/igc_nvm.h > @@ -4,8 +4,6 @@ > #ifndef _IGC_NVM_H_ > #define _IGC_NVM_H_ > > -s32 igc_acquire_nvm(struct igc_hw *hw); > -void igc_release_nvm(struct igc_hw *hw); > s32 igc_read_mac_addr(struct igc_hw *hw); > s32 igc_read_nvm_eerd(struct igc_hw *hw, u16 offset, u16 words, u16 *data); > s32 igc_validate_nvm_checksum(struct igc_hw *hw); >
diff --git a/drivers/net/ethernet/intel/igc/igc_nvm.c b/drivers/net/ethernet/intel/igc/igc_nvm.c index 58f81aba0144..efd121c03967 100644 --- a/drivers/net/ethernet/intel/igc/igc_nvm.c +++ b/drivers/net/ethernet/intel/igc/igc_nvm.c @@ -35,56 +35,6 @@ static s32 igc_poll_eerd_eewr_done(struct igc_hw *hw, int ee_reg) return ret_val; } -/** - * igc_acquire_nvm - Generic request for access to EEPROM - * @hw: pointer to the HW structure - * - * Set the EEPROM access request bit and wait for EEPROM access grant bit. - * Return successful if access grant bit set, else clear the request for - * EEPROM access and return -IGC_ERR_NVM (-1). - */ -s32 igc_acquire_nvm(struct igc_hw *hw) -{ - s32 timeout = IGC_NVM_GRANT_ATTEMPTS; - u32 eecd = rd32(IGC_EECD); - s32 ret_val = 0; - - wr32(IGC_EECD, eecd | IGC_EECD_REQ); - eecd = rd32(IGC_EECD); - - while (timeout) { - if (eecd & IGC_EECD_GNT) - break; - udelay(5); - eecd = rd32(IGC_EECD); - timeout--; - } - - if (!timeout) { - eecd &= ~IGC_EECD_REQ; - wr32(IGC_EECD, eecd); - hw_dbg("Could not acquire NVM grant\n"); - ret_val = -IGC_ERR_NVM; - } - - return ret_val; -} - -/** - * igc_release_nvm - Release exclusive access to EEPROM - * @hw: pointer to the HW structure - * - * Stop any current commands to the EEPROM and clear the EEPROM request bit. - */ -void igc_release_nvm(struct igc_hw *hw) -{ - u32 eecd; - - eecd = rd32(IGC_EECD); - eecd &= ~IGC_EECD_REQ; - wr32(IGC_EECD, eecd); -} - /** * igc_read_nvm_eerd - Reads EEPROM using EERD register * @hw: pointer to the HW structure diff --git a/drivers/net/ethernet/intel/igc/igc_nvm.h b/drivers/net/ethernet/intel/igc/igc_nvm.h index f9fc2e9cfb03..ab78d0c64547 100644 --- a/drivers/net/ethernet/intel/igc/igc_nvm.h +++ b/drivers/net/ethernet/intel/igc/igc_nvm.h @@ -4,8 +4,6 @@ #ifndef _IGC_NVM_H_ #define _IGC_NVM_H_ -s32 igc_acquire_nvm(struct igc_hw *hw); -void igc_release_nvm(struct igc_hw *hw); s32 igc_read_mac_addr(struct igc_hw *hw); s32 igc_read_nvm_eerd(struct igc_hw *hw, u16 offset, u16 words, u16 *data); s32 igc_validate_nvm_checksum(struct igc_hw *hw);