diff options
author | Denis Orlov <denorl2009@gmail.com> | 2022-07-20 16:30:56 +0300 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2022-08-09 08:47:41 +0200 |
commit | 7d6b89e60754857a665ca379b220eb2ac9fa0cb8 (patch) | |
tree | 24c60836eb5178c708015d13327a6bf1edbc3f25 | |
parent | b8b3f1302e9a980742b4003a2582374651d65c23 (diff) | |
download | barebox-7d6b89e60754857a665ca379b220eb2ac9fa0cb8.tar.gz barebox-7d6b89e60754857a665ca379b220eb2ac9fa0cb8.tar.xz |
net: e1000: do not actually acquire/put swfw_sync on 8254x cards
There is no Software-Firmware Synchronization register on these
controllers.
Signed-off-by: Denis Orlov <denorl2009@gmail.com>
Link: https://lore.barebox.org/20220720133100.13580-4-denorl2009@gmail.com
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | drivers/net/e1000/main.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/e1000/main.c b/drivers/net/e1000/main.c index 3b45fb3b51..4ca598eb2f 100644 --- a/drivers/net/e1000/main.c +++ b/drivers/net/e1000/main.c @@ -245,6 +245,10 @@ int32_t e1000_swfw_sync_acquire(struct e1000_hw *hw, uint16_t mask) int32_t timeout = 200; DEBUGFUNC(); + + if (hw->mac_type <= e1000_82547_rev_2) + return E1000_SUCCESS; + while (timeout) { if (e1000_get_hw_eeprom_semaphore(hw)) return -E1000_ERR_SWFW_SYNC; @@ -276,6 +280,9 @@ int32_t e1000_swfw_sync_release(struct e1000_hw *hw, uint16_t mask) { uint32_t swfw_sync; + if (hw->mac_type <= e1000_82547_rev_2) + return E1000_SUCCESS; + if (e1000_get_hw_eeprom_semaphore(hw)) return -E1000_ERR_SWFW_SYNC; |