diff mbox

[net-next,v2] netxen: explicity handle pause autoneg parameter

Message ID 1351298393-18172-1-git-send-email-fbl@redhat.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Flavio Leitner Oct. 27, 2012, 12:39 a.m. UTC
The hardware doesn't support controlling pause frames autoneg, so
report that back correctly to userspace.

Signed-off-by: Flavio Leitner <fbl@redhat.com>
---
 drivers/net/ethernet/qlogic/netxen/netxen_nic_ethtool.c | 7 +++++++
 1 file changed, 7 insertions(+)

 I don't have the hardware handy to test this, so I appreciate
 if someone could do it.

Changelog:
v2:
   fixed to not use AUTONEG_DISABLE
   fixed to return -EINVAL instead of -EOPNOTSUPP

Comments

Rajesh Borundia Oct. 28, 2012, 7:39 p.m. UTC | #1
>-----Original Message-----
>From: Flavio Leitner [mailto:fbl@redhat.com]
>Sent: Saturday, October 27, 2012 6:10 AM
>To: netdev
>Cc: Sony Chacko; Rajesh Borundia; Ben Hutchings; Flavio Leitner
>Subject: [PATCH net-next v2] netxen: explicity handle pause autoneg
>parameter
>
>The hardware doesn't support controlling pause frames autoneg, so
>report that back correctly to userspace.
>
>Signed-off-by: Flavio Leitner <fbl@redhat.com>
>---
> drivers/net/ethernet/qlogic/netxen/netxen_nic_ethtool.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> I don't have the hardware handy to test this, so I appreciate
> if someone could do it.

Yes the hardware does not support pause autoneg.
I have tested the patch.

Acked-by : Rajesh Borundia <rajesh.borundia@qlogic.com>

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/ethernet/qlogic/netxen/netxen_nic_ethtool.c b/drivers/net/ethernet/qlogic/netxen/netxen_nic_ethtool.c
index 10468e7..6bf73e1 100644
--- a/drivers/net/ethernet/qlogic/netxen/netxen_nic_ethtool.c
+++ b/drivers/net/ethernet/qlogic/netxen/netxen_nic_ethtool.c
@@ -488,6 +488,8 @@  netxen_nic_get_pauseparam(struct net_device *dev,
 	__u32 val;
 	int port = adapter->physical_port;
 
+	pause->autoneg = 0;
+
 	if (adapter->ahw.port_type == NETXEN_NIC_GBE) {
 		if ((port < 0) || (port >= NETXEN_NIU_MAX_GBE_PORTS))
 			return;
@@ -532,6 +534,11 @@  netxen_nic_set_pauseparam(struct net_device *dev,
 	struct netxen_adapter *adapter = netdev_priv(dev);
 	__u32 val;
 	int port = adapter->physical_port;
+
+	/* not supported */
+	if (pause->autoneg)
+		return -EINVAL;
+
 	/* read mode */
 	if (adapter->ahw.port_type == NETXEN_NIC_GBE) {
 		if ((port < 0) || (port >= NETXEN_NIU_MAX_GBE_PORTS))