aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/benet/be_ethtool.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/net/benet/be_ethtool.c b/drivers/net/benet/be_ethtool.c
index 28716a6061bc..22523b92b92a 100644
--- a/drivers/net/benet/be_ethtool.c
+++ b/drivers/net/benet/be_ethtool.c
@@ -161,7 +161,9 @@ be_get_reg_len(struct net_device *netdev)
161 struct be_adapter *adapter = netdev_priv(netdev); 161 struct be_adapter *adapter = netdev_priv(netdev);
162 u32 log_size = 0; 162 u32 log_size = 0;
163 163
164 be_cmd_get_reg_len(adapter, &log_size); 164 if (be_physfn(adapter))
165 be_cmd_get_reg_len(adapter, &log_size);
166
165 return log_size; 167 return log_size;
166} 168}
167 169
@@ -170,8 +172,10 @@ be_get_regs(struct net_device *netdev, struct ethtool_regs *regs, void *buf)
170{ 172{
171 struct be_adapter *adapter = netdev_priv(netdev); 173 struct be_adapter *adapter = netdev_priv(netdev);
172 174
173 memset(buf, 0, regs->len); 175 if (be_physfn(adapter)) {
174 be_cmd_get_regs(adapter, regs->len, buf); 176 memset(buf, 0, regs->len);
177 be_cmd_get_regs(adapter, regs->len, buf);
178 }
175} 179}
176 180
177static int 181static int