···44for the davinci_emac interface contains.5566Required properties:77-- compatible: "ti,davinci-dm6467-emac";77+- compatible: "ti,davinci-dm6467-emac" or "ti,am3517-emac"88- reg: Offset and length of the register set for the device99- ti,davinci-ctrl-reg-offset: offset to control register1010- ti,davinci-ctrl-mod-reg-offset: offset to control module register
+10
Documentation/networking/packet_mmap.txt
···123123[shutdown] close() --------> destruction of the transmission socket and124124 deallocation of all associated resources.125125126126+Socket creation and destruction is also straight forward, and is done127127+the same way as in capturing described in the previous paragraph:128128+129129+ int fd = socket(PF_PACKET, mode, 0);130130+131131+The protocol can optionally be 0 in case we only want to transmit132132+via this socket, which avoids an expensive call to packet_rcv().133133+In this case, you also need to bind(2) the TX_RING with sll_protocol = 0134134+set. Otherwise, htons(ETH_P_ALL) or any other protocol, for example.135135+126136Binding the socket to your network interface is mandatory (with zero copy) to127137know the header size of frames used in the circular buffer.128138
-2
MAINTAINERS
···44504450M: Carolyn Wyborny <carolyn.wyborny@intel.com>44514451M: Don Skidmore <donald.c.skidmore@intel.com>44524452M: Greg Rose <gregory.v.rose@intel.com>44534453-M: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>44544453M: Alex Duyck <alexander.h.duyck@intel.com>44554454M: John Ronciak <john.ronciak@intel.com>44564456-M: Tushar Dave <tushar.n.dave@intel.com>44574455L: e1000-devel@lists.sourceforge.net44584456W: http://www.intel.com/support/feedback.htm44594457W: http://e1000.sourceforge.net/
+3-3
drivers/net/bonding/bond_main.c
···41994199 (arp_ip_count < BOND_MAX_ARP_TARGETS) && arp_ip_target[i]; i++) {42004200 /* not complete check, but should be good enough to42014201 catch mistakes */42024202- __be32 ip = in_aton(arp_ip_target[i]);42034203- if (!isdigit(arp_ip_target[i][0]) || ip == 0 ||42044204- ip == htonl(INADDR_BROADCAST)) {42024202+ __be32 ip;42034203+ if (!in4_pton(arp_ip_target[i], -1, (u8 *)&ip, -1, NULL) ||42044204+ IS_IP_TARGET_UNUSABLE_ADDRESS(ip)) {42054205 pr_warning("Warning: bad arp_ip_target module parameter (%s), ARP monitoring will not be performed\n",42064206 arp_ip_target[i]);42074207 arp_interval = 0;
···31143114{31153115 struct bnx2x *bp = netdev_priv(pci_get_drvdata(dev));3116311631173117+ if (!IS_SRIOV(bp)) {31183118+ BNX2X_ERR("failed to configure SR-IOV since vfdb was not allocated. Check dmesg for errors in probe stage\n");31193119+ return -EINVAL;31203120+ }31213121+31173122 DP(BNX2X_MSG_IOV, "bnx2x_sriov_configure called with %d, BNX2X_NR_VIRTFN(bp) was %d\n",31183123 num_vfs_param, BNX2X_NR_VIRTFN(bp));31193124
+3
drivers/net/ethernet/emulex/benet/be_hw.h
···6464#define SLIPORT_ERROR_NO_RESOURCE1 0x26565#define SLIPORT_ERROR_NO_RESOURCE2 0x966666767+#define SLIPORT_ERROR_FW_RESET1 0x26868+#define SLIPORT_ERROR_FW_RESET2 0x06969+6770/********* Memory BAR register ************/6871#define PCICFG_MEMBAR_CTRL_INT_CTRL_OFFSET 0xfc6972/* Host Interrupt Enable, if set interrupts are enabled although "PCI Interrupt
+29-12
drivers/net/ethernet/emulex/benet/be_main.c
···24642464 */24652465 if (sliport_status & SLIPORT_STATUS_ERR_MASK) {24662466 adapter->hw_error = true;24672467- dev_err(&adapter->pdev->dev,24682468- "Error detected in the card\n");24672467+ /* Do not log error messages if its a FW reset */24682468+ if (sliport_err1 == SLIPORT_ERROR_FW_RESET1 &&24692469+ sliport_err2 == SLIPORT_ERROR_FW_RESET2) {24702470+ dev_info(&adapter->pdev->dev,24712471+ "Firmware update in progress\n");24722472+ return;24732473+ } else {24742474+ dev_err(&adapter->pdev->dev,24752475+ "Error detected in the card\n");24762476+ }24692477 }2470247824712479 if (sliport_status & SLIPORT_STATUS_ERR_MASK) {···29402932 }29412933}2942293429432943-static int be_clear(struct be_adapter *adapter)29352935+static void be_mac_clear(struct be_adapter *adapter)29442936{29452937 int i;2946293829392939+ if (adapter->pmac_id) {29402940+ for (i = 0; i < (adapter->uc_macs + 1); i++)29412941+ be_cmd_pmac_del(adapter, adapter->if_handle,29422942+ adapter->pmac_id[i], 0);29432943+ adapter->uc_macs = 0;29442944+29452945+ kfree(adapter->pmac_id);29462946+ adapter->pmac_id = NULL;29472947+ }29482948+}29492949+29502950+static int be_clear(struct be_adapter *adapter)29512951+{29472952 be_cancel_worker(adapter);2948295329492954 if (sriov_enabled(adapter))29502955 be_vf_clear(adapter);2951295629522957 /* delete the primary mac along with the uc-mac list */29532953- for (i = 0; i < (adapter->uc_macs + 1); i++)29542954- be_cmd_pmac_del(adapter, adapter->if_handle,29552955- adapter->pmac_id[i], 0);29562956- adapter->uc_macs = 0;29582958+ be_mac_clear(adapter);2957295929582960 be_cmd_if_destroy(adapter, adapter->if_handle, 0);2959296129602962 be_clear_queues(adapter);29612961-29622962- kfree(adapter->pmac_id);29632963- adapter->pmac_id = NULL;2964296329652964 be_msix_disable(adapter);29662965 return 0;···38273812 }3828381338293814 if (change_status == LANCER_FW_RESET_NEEDED) {38153815+ dev_info(&adapter->pdev->dev,38163816+ "Resetting adapter to activate new FW\n");38303817 status = lancer_physdev_ctrl(adapter,38313818 PHYSDEV_CONTROL_FW_RESET_MASK);38323819 if (status) {···43804363 goto err;43814364 }4382436543834383- dev_err(dev, "Error recovery successful\n");43664366+ dev_err(dev, "Adapter recovery successful\n");43844367 return 0;43854368err:43864369 if (status == -EAGAIN)43874370 dev_err(dev, "Waiting for resource provisioning\n");43884371 else43894389- dev_err(dev, "Error recovery failed\n");43724372+ dev_err(dev, "Adapter recovery failed\n");4390437343914374 return status;43924375}
···181181};182182#define QLGE_TEST_LEN (sizeof(ql_gstrings_test) / ETH_GSTRING_LEN)183183#define QLGE_STATS_LEN ARRAY_SIZE(ql_gstrings_stats)184184+#define QLGE_RCV_MAC_ERR_STATS 7184185185186static int ql_update_ring_coalescing(struct ql_adapter *qdev)186187{···280279 *iter = data;281280 iter++;282281 }282282+283283+ /* Update receive mac error statistics */284284+ iter += QLGE_RCV_MAC_ERR_STATS;283285284286 /*285287 * Get Per-priority TX pause frame counter statistics.
-8
drivers/net/ethernet/qlogic/qlge/qlge_main.c
···23762376 netdev_features_t features)23772377{23782378 int err;23792379- /*23802380- * Since there is no support for separate rx/tx vlan accel23812381- * enable/disable make sure tx flag is always in same state as rx.23822382- */23832383- if (features & NETIF_F_HW_VLAN_CTAG_RX)23842384- features |= NETIF_F_HW_VLAN_CTAG_TX;23852385- else23862386- features &= ~NETIF_F_HW_VLAN_CTAG_TX;2387237923882380 /* Update the behavior of vlan accel in the adapter */23892381 err = qlge_update_hw_vlan_features(ndev, features);