/* e1000_write_vfta - Writes a value to the specified offset in the VLAN filter table. @hw: Struct containing variables accessed by shared code @offset: Offset in VLAN filer table to write @value: Value to write into VLAN filter table  */
void e1000_write_vfta(struct e1000_hw *hw, u32 offset, u32 value)
/* e1000_write_vfta - Writes a value to the specified offset in the VLAN filter table. @hw: Struct containing variables accessed by shared code @offset: Offset in VLAN filer table to write @value: Value to write into VLAN filter table  */
void e1000_write_vfta(struct e1000_hw *hw, u32 offset, u32 value)
{
	u32 temp;
	if ((hw->mac_type == e1000_82544) && ((offset & 0x1) == 1)) {
		temp = E1000_READ_REG_ARRAY(hw, VFTA, (offset - 1));
		E1000_WRITE_REG_ARRAY(hw, VFTA, offset, value);
		E1000_WRITE_FLUSH();
		E1000_WRITE_REG_ARRAY(hw, VFTA, (offset - 1), temp);
		E1000_WRITE_FLUSH();
	} else {
		E1000_WRITE_REG_ARRAY(hw, VFTA, offset, value);
		E1000_WRITE_FLUSH();
	}
}