Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/e1000/e1000_82575.c
Show First 20 Lines • Show All 991 Lines • ▼ Show 20 Lines | |||||
{ | { | ||||
u32 swfw_sync; | u32 swfw_sync; | ||||
u32 swmask = mask; | u32 swmask = mask; | ||||
u32 fwmask = mask << 16; | u32 fwmask = mask << 16; | ||||
s32 ret_val = E1000_SUCCESS; | s32 ret_val = E1000_SUCCESS; | ||||
s32 i = 0, timeout = 200; | s32 i = 0, timeout = 200; | ||||
DEBUGFUNC("e1000_acquire_swfw_sync_82575"); | DEBUGFUNC("e1000_acquire_swfw_sync_82575"); | ||||
ASSERT_NO_LOCKS(); | |||||
while (i < timeout) { | while (i < timeout) { | ||||
if (e1000_get_hw_semaphore_generic(hw)) { | if (e1000_get_hw_semaphore_generic(hw)) { | ||||
ret_val = -E1000_ERR_SWFW_SYNC; | ret_val = -E1000_ERR_SWFW_SYNC; | ||||
goto out; | goto out; | ||||
} | } | ||||
swfw_sync = E1000_READ_REG(hw, E1000_SW_FW_SYNC); | swfw_sync = E1000_READ_REG(hw, E1000_SW_FW_SYNC); | ||||
if (!(swfw_sync & (fwmask | swmask))) | if (!(swfw_sync & (fwmask | swmask))) | ||||
▲ Show 20 Lines • Show All 991 Lines • Show Last 20 Lines |