src/dpdk/drivers/net/ixgbe/base/ixgbe_x540.c
void ixgbe_release_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask)
{
	u32 swmask = mask & (IXGBE_GSSR_NVM_PHY_MASK | IXGBE_GSSR_SW_MNG_SM);
	u32 swfw_sync;

	DEBUGFUNC("ixgbe_release_swfw_sync_X540");

	if (mask & IXGBE_GSSR_I2C_MASK)
		swmask |= mask & IXGBE_GSSR_I2C_MASK;
	ixgbe_get_swfw_sync_semaphore(hw);

	swfw_sync = IXGBE_READ_REG(hw, IXGBE_SWFW_SYNC_BY_MAC(hw));
	swfw_sync &= ~swmask;
	IXGBE_WRITE_REG(hw, IXGBE_SWFW_SYNC_BY_MAC(hw), swfw_sync);

	ixgbe_release_swfw_sync_semaphore(hw);
	msec_delay(2);
}
/**
 * ixgbe_release_swfw_sync_X540 - Release SWFW semaphore
 * @hw: pointer to hardware structure
 * @mask: Mask to specify which semaphore to release
 *
 * Releases the SWFW semaphore through the SW_FW_SYNC register
 * for the specified function (CSR, PHY0, PHY1, EVM, Flash)
 **/
Release SWFW semaphore
@hw: pointer to hardware structure
@mask: Mask to specify which semaphore to release

Releases the SWFW semaphore through the SW_FW_SYNC register
for the specified function (CSR, PHY0, PHY1, EVM, Flash)
Release SWFW semaphore @hw : pointer to hardware structure @mask : Mask to specify which semaphore to release Releases the SWFW semaphore through the SW_FW_SYNC register for the specified function ( CSR PHY0 PHY1 EVM Flash )
void ixgbe_release_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask)
{
	u32 swmask = mask & (IXGBE_GSSR_NVM_PHY_MASK | IXGBE_GSSR_SW_MNG_SM);
	u32 swfw_sync;
	DEBUGFUNC("ixgbe_release_swfw_sync_X540");
	if (mask & IXGBE_GSSR_I2C_MASK)
		swmask |= mask & IXGBE_GSSR_I2C_MASK;
	ixgbe_get_swfw_sync_semaphore(hw);
	swfw_sync = IXGBE_READ_REG(hw, IXGBE_SWFW_SYNC_BY_MAC(hw));
	swfw_sync &= ~swmask;
	IXGBE_WRITE_REG(hw, IXGBE_SWFW_SYNC_BY_MAC(hw), swfw_sync);
	ixgbe_release_swfw_sync_semaphore(hw);
	msec_delay(2);
}
void ixgbe_release_swfw_sync_X540 ( struct ixgbe_hw * hw , u32 mask ) { u32 swmask = mask & ( IXGBE_GSSR_NVM_PHY_MASK | IXGBE_GSSR_SW_MNG_SM ) ; u32 swfw_sync ; DEBUGFUNC ( " " ) ; if ( mask & IXGBE_GSSR_I2C_MASK ) swmask |= mask & IXGBE_GSSR_I2C_MASK ; ixgbe_get_swfw_sync_semaphore ( hw ) ; swfw_sync = IXGBE_READ_REG ( hw , IXGBE_SWFW_SYNC_BY_MAC ( hw ) ) ; swfw_sync &= ~ swmask ; IXGBE_WRITE_REG ( hw , IXGBE_SWFW_SYNC_BY_MAC ( hw ) , swfw_sync ) ; ixgbe_release_swfw_sync_semaphore ( hw ) ; msec_delay ( 2 ) ; }
ixgbe_release_swfw_sync_X540 - Release SWFW semaphore
 @hw: pointer to hardware structure
 @mask: Mask to specify which semaphore to release
ixgbe_release_swfw_sync_X540 - Release SWFW semaphore @hw : pointer to hardware structure @mask : Mask to specify which semaphore to release