Re: [BUILD FAILURE 04] Next April 9 : PPC64 randconfig [drivers/net/ibm_newemac/core.c]

2009-04-09 Thread Kumar Gala


On Apr 9, 2009, at 8:52 AM, Subrata Modak wrote:


Observed the following build error:

CC  drivers/net/ibm_newemac/core.o
drivers/net/ibm_newemac/core.c: In function ‘emac_probe’:
drivers/net/ibm_newemac/core.c:2831: error: ‘struct net_device’ has no
member named ‘open’
drivers/net/ibm_newemac/core.c:2834: error: ‘struct net_device’ has no
member named ‘tx_timeout’
drivers/net/ibm_newemac/core.c:2836: error: ‘struct net_device’ has no
member named ‘stop’
drivers/net/ibm_newemac/core.c:2837: error: ‘struct net_device’ has no
member named ‘get_stats’
drivers/net/ibm_newemac/core.c:2838: error: ‘struct net_device’ has no
member named ‘set_multicast_list’
drivers/net/ibm_newemac/core.c:2839: error: ‘struct net_device’ has no
member named ‘do_ioctl’
drivers/net/ibm_newemac/core.c:2841: error: ‘struct net_device’ has no
member named ‘hard_start_xmit’
drivers/net/ibm_newemac/core.c:2842: error: ‘struct net_device’ has no
member named ‘change_mtu’
drivers/net/ibm_newemac/core.c:2845: error: ‘struct net_device’ has no
member named ‘hard_start_xmit’
make[3]: *** [drivers/net/ibm_newemac/core.o] Error 1
make[2]: *** [drivers/net/ibm_newemac] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2

Regards--
Subrata

randconfig4-ppc64-next20090409.txt


This is because CONFIG_COMPAT_NET_DEV_OPS isnt set and needs to be for  
this driver to build.  I've asked the netdev guys about either fixing  
the driver or adding the proper thing to Kconfig to select  
CONFIG_COMPAT_NET_DEV_OPS.


- k
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [BUILD FAILURE 04] Next April 9 : PPC64 randconfig [drivers/net/ibm_newemac/core.c]

2009-04-09 Thread Josh Boyer
On Thu, Apr 09, 2009 at 09:28:23AM -0500, Kumar Gala wrote:

 On Apr 9, 2009, at 8:52 AM, Subrata Modak wrote:

 Observed the following build error:

 CC  drivers/net/ibm_newemac/core.o
 drivers/net/ibm_newemac/core.c: In function ‘emac_probe’:
 drivers/net/ibm_newemac/core.c:2831: error: ‘struct net_device’ has no
 member named ‘open’
 drivers/net/ibm_newemac/core.c:2834: error: ‘struct net_device’ has no
 member named ‘tx_timeout’
 drivers/net/ibm_newemac/core.c:2836: error: ‘struct net_device’ has no
 member named ‘stop’
 drivers/net/ibm_newemac/core.c:2837: error: ‘struct net_device’ has no
 member named ‘get_stats’
 drivers/net/ibm_newemac/core.c:2838: error: ‘struct net_device’ has no
 member named ‘set_multicast_list’
 drivers/net/ibm_newemac/core.c:2839: error: ‘struct net_device’ has no
 member named ‘do_ioctl’
 drivers/net/ibm_newemac/core.c:2841: error: ‘struct net_device’ has no
 member named ‘hard_start_xmit’
 drivers/net/ibm_newemac/core.c:2842: error: ‘struct net_device’ has no
 member named ‘change_mtu’
 drivers/net/ibm_newemac/core.c:2845: error: ‘struct net_device’ has no
 member named ‘hard_start_xmit’
 make[3]: *** [drivers/net/ibm_newemac/core.o] Error 1
 make[2]: *** [drivers/net/ibm_newemac] Error 2
 make[1]: *** [drivers/net] Error 2
 make: *** [drivers] Error 2

 Regards--
 Subrata

 randconfig4-ppc64-next20090409.txt

 This is because CONFIG_COMPAT_NET_DEV_OPS isnt set and needs to be for  
 this driver to build.  I've asked the netdev guys about either fixing  
 the driver or adding the proper thing to Kconfig to select  
 CONFIG_COMPAT_NET_DEV_OPS.

Thanks!

If someone has pointers on what needs to be done to fix it, let me know.

josh
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Re: [BUILD FAILURE 04] Next April 9 : PPC64 randconfig [drivers/net/ibm_newemac/core.c]

2009-04-09 Thread Alexander Beregalov
On Thu, Apr 09, 2009 at 10:31:12AM -0400, Josh Boyer wrote:
 On Thu, Apr 09, 2009 at 09:28:23AM -0500, Kumar Gala wrote:
 
  On Apr 9, 2009, at 8:52 AM, Subrata Modak wrote:
 
  Observed the following build error:
 
  CC  drivers/net/ibm_newemac/core.o
  drivers/net/ibm_newemac/core.c: In function ???emac_probe???:
  drivers/net/ibm_newemac/core.c:2831: error: ???struct net_device??? has no
  member named ???open???
  drivers/net/ibm_newemac/core.c:2834: error: ???struct net_device??? has no
  member named ???tx_timeout???
  drivers/net/ibm_newemac/core.c:2836: error: ???struct net_device??? has no
  member named ???stop???
  drivers/net/ibm_newemac/core.c:2837: error: ???struct net_device??? has no
  member named ???get_stats???
  drivers/net/ibm_newemac/core.c:2838: error: ???struct net_device??? has no
  member named ???set_multicast_list???
  drivers/net/ibm_newemac/core.c:2839: error: ???struct net_device??? has no
  member named ???do_ioctl???
  drivers/net/ibm_newemac/core.c:2841: error: ???struct net_device??? has no
  member named ???hard_start_xmit???
  drivers/net/ibm_newemac/core.c:2842: error: ???struct net_device??? has no
  member named ???change_mtu???
  drivers/net/ibm_newemac/core.c:2845: error: ???struct net_device??? has no
  member named ???hard_start_xmit???
  make[3]: *** [drivers/net/ibm_newemac/core.o] Error 1
  make[2]: *** [drivers/net/ibm_newemac] Error 2
  make[1]: *** [drivers/net] Error 2
  make: *** [drivers] Error 2
 
  Regards--
  Subrata
 
  randconfig4-ppc64-next20090409.txt
 
  This is because CONFIG_COMPAT_NET_DEV_OPS isnt set and needs to be for  
  this driver to build.  I've asked the netdev guys about either fixing  
  the driver or adding the proper thing to Kconfig to select  
  CONFIG_COMPAT_NET_DEV_OPS.
 
 Thanks!
 
 If someone has pointers on what needs to be done to fix it, let me know.
 

From: Alexander Beregalov a.berega...@gmail.com
Subject: [PATCH] ibm_newemac: convert to netdev_ops


Reported-by: Subrata Modak subr...@linux.vnet.ibm.com
Signed-off-by: Alexander Beregalov a.berega...@gmail.com
---

 drivers/net/ibm_newemac/core.c |   41 ---
 1 files changed, 29 insertions(+), 12 deletions(-)

diff --git a/drivers/net/ibm_newemac/core.c b/drivers/net/ibm_newemac/core.c
index 77e4b5b..806533c 100644
--- a/drivers/net/ibm_newemac/core.c
+++ b/drivers/net/ibm_newemac/core.c
@@ -2686,6 +2686,32 @@ static int __devinit emac_init_config(struct 
emac_instance *dev)
return 0;
 }
 
+static const struct net_device_ops emac_netdev_ops = {
+   .ndo_open   = emac_open,
+   .ndo_stop   = emac_close,
+   .ndo_get_stats  = emac_stats,
+   .ndo_set_multicast_list = emac_set_multicast_list,
+   .ndo_do_ioctl   = emac_ioctl,
+   .ndo_tx_timeout = emac_tx_timeout,
+   .ndo_validate_addr  = eth_validate_addr,
+   .ndo_set_mac_address= eth_mac_addr,
+   .ndo_start_xmit = emac_start_xmit,
+   .ndo_change_mtu = eth_change_mtu,
+};
+
+static const struct net_device_ops emac_gige_netdev_ops = {
+   .ndo_open   = emac_open,
+   .ndo_stop   = emac_close,
+   .ndo_get_stats  = emac_stats,
+   .ndo_set_multicast_list = emac_set_multicast_list,
+   .ndo_do_ioctl   = emac_ioctl,
+   .ndo_tx_timeout = emac_tx_timeout,
+   .ndo_validate_addr  = eth_validate_addr,
+   .ndo_set_mac_address= eth_mac_addr,
+   .ndo_start_xmit = emac_start_xmit_sg,
+   .ndo_change_mtu = emac_change_mtu,
+};
+
 static int __devinit emac_probe(struct of_device *ofdev,
const struct of_device_id *match)
 {
@@ -2827,23 +2853,14 @@ static int __devinit emac_probe(struct of_device *ofdev,
if (err != 0)
goto err_detach_tah;
 
-   /* Fill in the driver function table */
-   ndev-open = emac_open;
if (dev-tah_dev)
ndev-features |= NETIF_F_IP_CSUM | NETIF_F_SG;
-   ndev-tx_timeout = emac_tx_timeout;
ndev-watchdog_timeo = 5 * HZ;
-   ndev-stop = emac_close;
-   ndev-get_stats = emac_stats;
-   ndev-set_multicast_list = emac_set_multicast_list;
-   ndev-do_ioctl = emac_ioctl;
if (emac_phy_supports_gige(dev-phy_mode)) {
-   ndev-hard_start_xmit = emac_start_xmit_sg;
-   ndev-change_mtu = emac_change_mtu;
+   ndev-netdev_ops = emac_gige_netdev_ops;
dev-commac.ops = emac_commac_sg_ops;
-   } else {
-   ndev-hard_start_xmit = emac_start_xmit;
-   }
+   } else
+   ndev-netdev_ops = emac_netdev_ops;
SET_ETHTOOL_OPS(ndev, emac_ethtool_ops);
 
netif_carrier_off(ndev);
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev