Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/igc/if_igc.c
Show First 20 Lines • Show All 1,166 Lines • ▼ Show 20 Lines | if (if_getflags(ifp) & IFF_PROMISC) { | ||||
/* Turn this on if you want to see bad packets */ | /* Turn this on if you want to see bad packets */ | ||||
if (igc_debug_sbp) | if (igc_debug_sbp) | ||||
reg_rctl |= IGC_RCTL_SBP; | reg_rctl |= IGC_RCTL_SBP; | ||||
} else if (mcnt >= MAX_NUM_MULTICAST_ADDRESSES || | } else if (mcnt >= MAX_NUM_MULTICAST_ADDRESSES || | ||||
if_getflags(ifp) & IFF_ALLMULTI) { | if_getflags(ifp) & IFF_ALLMULTI) { | ||||
reg_rctl |= IGC_RCTL_MPE; | reg_rctl |= IGC_RCTL_MPE; | ||||
reg_rctl &= ~IGC_RCTL_UPE; | reg_rctl &= ~IGC_RCTL_UPE; | ||||
} else | } else | ||||
reg_rctl = ~(IGC_RCTL_UPE | IGC_RCTL_MPE); | reg_rctl &= ~(IGC_RCTL_UPE | IGC_RCTL_MPE); | ||||
IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); | |||||
if (mcnt < MAX_NUM_MULTICAST_ADDRESSES) | if (mcnt < MAX_NUM_MULTICAST_ADDRESSES) | ||||
igc_update_mc_addr_list(&adapter->hw, mta, mcnt); | igc_update_mc_addr_list(&adapter->hw, mta, mcnt); | ||||
IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); | |||||
} | } | ||||
/********************************************************************* | /********************************************************************* | ||||
* Timer routine | * Timer routine | ||||
* | * | ||||
* This routine schedules igc_if_update_admin_status() to check for | * This routine schedules igc_if_update_admin_status() to check for | ||||
* link status and to gather statistics as well as to perform some | * link status and to gather statistics as well as to perform some | ||||
* controller-specific hardware patting. | * controller-specific hardware patting. | ||||
▲ Show 20 Lines • Show All 1,796 Lines • Show Last 20 Lines |