From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Hemminger Subject: Re: [PATCH v4 05/10] qede: Add core driver Date: Wed, 30 Mar 2016 09:49:02 -0700 Message-ID: <20160330094902.66658927@xeon-e3> References: <1459315705-25001-1-git-send-email-rasesh.mody@qlogic.com> <1459315705-25001-6-git-send-email-rasesh.mody@qlogic.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: , , , , , To: Rasesh Mody Return-path: Received: from mail-pa0-f46.google.com (mail-pa0-f46.google.com [209.85.220.46]) by dpdk.org (Postfix) with ESMTP id 277D9293C for ; Wed, 30 Mar 2016 18:48:47 +0200 (CEST) Received: by mail-pa0-f46.google.com with SMTP id zm5so45209165pac.0 for ; Wed, 30 Mar 2016 09:48:47 -0700 (PDT) In-Reply-To: <1459315705-25001-6-git-send-email-rasesh.mody@qlogic.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Tue, 29 Mar 2016 22:28:20 -0700 Rasesh Mody wrote: > + > +void qede_config_rx_mode(struct rte_eth_dev *eth_dev) > +{ > + struct qede_dev *qdev = eth_dev->data->dev_private; > + struct ecore_dev *edev = &qdev->edev; > + /* TODO: - QED_FILTER_TYPE_UCAST */ > + enum qed_filter_rx_mode_type accept_flags = > + QED_FILTER_RX_MODE_TYPE_REGULAR; > + struct qed_filter_params rx_mode; > + int rc; > + > + /* Configure the struct for the Rx mode */ > + memset(&rx_mode, 0, sizeof(struct qed_filter_params)); > + rx_mode.type = QED_FILTER_TYPE_RX_MODE; > + > + rc = qede_set_ucast_rx_mac(qdev, QED_FILTER_XCAST_TYPE_REPLACE, > + eth_dev->data->mac_addrs[0].addr_bytes); > + if (rte_eth_promiscuous_get(eth_dev->data->port_id) == 1) { > + accept_flags = QED_FILTER_RX_MODE_TYPE_PROMISC; > + } else { > + rc = qede_set_ucast_rx_mac(qdev, QED_FILTER_XCAST_TYPE_ADD, > + eth_dev->data-> > + mac_addrs[0].addr_bytes); > + if (rc) { > + DP_ERR(edev, "Unable to add filter\n"); > + return; > + } > + } > + > + /* take care of VLAN mode */ > + if (rte_eth_promiscuous_get(eth_dev->data->port_id) == 1) { > + qede_config_accept_any_vlan(qdev, true); > + } else if (!qdev->non_configured_vlans) { > + /* If we dont have non-configured VLANs and promisc > + * is not set, then check if we need to disable > + * accept_any_vlan mode. > + * Because in this case, accept_any_vlan mode is set > + * as part of IFF_RPOMISC flag handling. > + */ > + qede_config_accept_any_vlan(qdev, false); > + } > + rx_mode.filter.accept_flags = accept_flags; > + (void)qdev->ops->filter_config(edev, &rx_mode); Please don't use lint suppressing dummy (void) casts. I don't think GCC or any check tool needs these. Better yet check the return value and log errors.