src/dpdk/drivers/net/ixgbe/base/ixgbe_82599.c
void ixgbe_enable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw)
{
	u32 esdp_reg = IXGBE_READ_REG(hw, IXGBE_ESDP);

	/* Enable Tx laser; allow 100ms to light up */
	esdp_reg &= ~IXGBE_ESDP_SDP3;
	IXGBE_WRITE_REG(hw, IXGBE_ESDP, esdp_reg);
	IXGBE_WRITE_FLUSH(hw);
	msec_delay(100);
}
/**
 * ixgbe_enable_tx_laser_multispeed_fiber - Enable Tx laser
 * @hw: pointer to hardware structure
 *
 * The base drivers may require better control over SFP+ module
 * PHY states.  This includes selectively turning on the Tx
 * laser on the PHY, effectively starting physical link.
 **/
Enable Tx laser
@hw: pointer to hardware structure

The base drivers may require better control over SFP+ module
PHY states.  This includes selectively turning on the Tx
laser on the PHY, effectively starting physical link.
Enable Tx laser @hw : pointer to hardware structure The base drivers may require better control over SFP + module PHY states . This includes selectively turning on the Tx laser on the PHY effectively starting physical link .
void ixgbe_enable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw)
{
	u32 esdp_reg = IXGBE_READ_REG(hw, IXGBE_ESDP);
	esdp_reg &= ~IXGBE_ESDP_SDP3;
	IXGBE_WRITE_REG(hw, IXGBE_ESDP, esdp_reg);
	IXGBE_WRITE_FLUSH(hw);
	msec_delay(100);
}
void ixgbe_enable_tx_laser_multispeed_fiber ( struct ixgbe_hw * hw ) { u32 esdp_reg = IXGBE_READ_REG ( hw , IXGBE_ESDP ) ; esdp_reg &= ~ IXGBE_ESDP_SDP3 ; IXGBE_WRITE_REG ( hw , IXGBE_ESDP , esdp_reg ) ; IXGBE_WRITE_FLUSH ( hw ) ; msec_delay ( 100 ) ; }
ixgbe_enable_tx_laser_multispeed_fiber - Enable Tx laser
 @hw: pointer to hardware structure
ixgbe_enable_tx_laser_multispeed_fiber - Enable Tx laser @hw : pointer to hardware structure
/* Enable Tx laser; allow 100ms to light up */