diff mbox series

[RFC,13/13,net-next] 8390: xsurf100: avoid including lib8390.c

Message ID 20210515221320.1255291-14-arnd@kernel.org (mailing list archive)
State RFC
Delegated to: Netdev Maintainers
Headers show
Series drivers/net/Space.c cleanup | expand

Checks

Context Check Description
netdev/cover_letter success Link
netdev/fixes_present success Link
netdev/patch_count success Link
netdev/tree_selection success Clearly marked for net-next
netdev/subject_prefix success Link
netdev/cc_maintainers fail 2 blamed authors not CCed: schmitzmic@gmail.com kernel@mkarcher.dialup.fu-berlin.de; 2 maintainers not CCed: schmitzmic@gmail.com kernel@mkarcher.dialup.fu-berlin.de
netdev/source_inline success Was 0 now: 0
netdev/verify_signedoff success Link
netdev/module_param success Was 0 now: 0
netdev/build_32bit success Errors and warnings before: 0 this patch: 0
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/verify_fixes success Link
netdev/checkpatch warning WARNING: drivers/net/ethernet/8390/Makefile is marked as 'obsolete' in the MAINTAINERS hierarchy. No unnecessary modifications please. WARNING: drivers/net/ethernet/8390/xsurf100.c is marked as 'obsolete' in the MAINTAINERS hierarchy. No unnecessary modifications please.
netdev/build_allmodconfig_warn success Errors and warnings before: 0 this patch: 0
netdev/header_inline success Link

Commit Message

Arnd Bergmann May 15, 2021, 10:13 p.m. UTC
From: Arnd Bergmann <arnd@arndb.de>

This driver always warns about unused functions because it includes
an file that it doesn't actually need:

In file included from drivers/net/ethernet/8390/xsurf100.c:48:
drivers/net/ethernet/8390/lib8390.c:995:27: error: '____alloc_ei_netdev' defined but not used [-Werror=unused-function]
  995 | static struct net_device *____alloc_ei_netdev(int size)
      |                           ^~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/8390/lib8390.c:957:13: error: '__ei_set_multicast_list' defined but not used [-Werror=unused-function]
  957 | static void __ei_set_multicast_list(struct net_device *dev)
      |             ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/8390/lib8390.c:857:33: error: '__ei_get_stats' defined but not used [-Werror=unused-function]
  857 | static struct net_device_stats *__ei_get_stats(struct net_device *dev)
      |                                 ^~~~~~~~~~~~~~
drivers/net/ethernet/8390/lib8390.c:512:13: error: '__ei_poll' defined but not used [-Werror=unused-function]
  512 | static void __ei_poll(struct net_device *dev)
      |             ^~~~~~~~~
drivers/net/ethernet/8390/lib8390.c:303:20: error: '__ei_start_xmit' defined but not used [-Werror=unused-function]
  303 | static netdev_tx_t __ei_start_xmit(struct sk_buff *skb,
      |                    ^~~~~~~~~~~~~~~
drivers/net/ethernet/8390/lib8390.c:257:13: error: '__ei_tx_timeout' defined but not used [-Werror=unused-function]
  257 | static void __ei_tx_timeout(struct net_device *dev, unsigned int txqueue)
      |             ^~~~~~~~~~~~~~~
drivers/net/ethernet/8390/lib8390.c:233:12: error: '__ei_close' defined but not used [-Werror=unused-function]
  233 | static int __ei_close(struct net_device *dev)
      |            ^~~~~~~~~~
drivers/net/ethernet/8390/lib8390.c:204:12: error: '__ei_open' defined but not used [-Werror=unused-function]
  204 | static int __ei_open(struct net_device *dev)
      |            ^~~~~~~~~

Use the normal library module instead and call the NS8390p_init()
function.

Fixes: 861928f4e60e ("net-next: New ax88796 platform driver for Amiga X-Surf 100 Zorro board (m68k)")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/net/ethernet/8390/Makefile   | 2 +-
 drivers/net/ethernet/8390/xsurf100.c | 7 ++-----
 2 files changed, 3 insertions(+), 6 deletions(-)

Comments

Finn Thain May 16, 2021, 4:24 a.m. UTC | #1
On Sun, 16 May 2021, Arnd Bergmann wrote:

> From: Arnd Bergmann <arnd@arndb.de>
> 
> This driver always warns about unused functions because it includes
> an file that it doesn't actually need:
> 

I don't think you can omit #include "lib8390.c" here without changing 
driver behaviour, because of the macros in effect.

I think this change would need some actual testing unless you can show 
that the module binary does not change.
Geert Uytterhoeven May 16, 2021, 9:04 a.m. UTC | #2
On Sun, May 16, 2021 at 6:24 AM Finn Thain <fthain@telegraphics.com.au> wrote:
> On Sun, 16 May 2021, Arnd Bergmann wrote:
> > From: Arnd Bergmann <arnd@arndb.de>
> >
> > This driver always warns about unused functions because it includes
> > an file that it doesn't actually need:
>
> I don't think you can omit #include "lib8390.c" here without changing
> driver behaviour, because of the macros in effect.
>
> I think this change would need some actual testing unless you can show
> that the module binary does not change.

Michael posted a similar but different patch a while ago, involving
calling ax_NS8390_reinit():
https://lore.kernel.org/linux-m68k/1528604559-972-3-git-send-email-schmitzmic@gmail.com/

Gr{oetje,eeting}s,

                        Geert
Arnd Bergmann May 16, 2021, 9:39 a.m. UTC | #3
On Sun, May 16, 2021 at 11:04 AM Geert Uytterhoeven
<geert@linux-m68k.org> wrote:
>
> On Sun, May 16, 2021 at 6:24 AM Finn Thain <fthain@telegraphics.com.au> wrote:
> > On Sun, 16 May 2021, Arnd Bergmann wrote:
> > > From: Arnd Bergmann <arnd@arndb.de>
> > >
> > > This driver always warns about unused functions because it includes
> > > an file that it doesn't actually need:
> >
> > I don't think you can omit #include "lib8390.c" here without changing
> > driver behaviour, because of the macros in effect.
> >
> > I think this change would need some actual testing unless you can show
> > that the module binary does not change.
>
> Michael posted a similar but different patch a while ago, involving
> calling ax_NS8390_reinit():
> https://lore.kernel.org/linux-m68k/1528604559-972-3-git-send-email-schmitzmic@gmail.com/

Ah nice. As far as I can tell, the two versions are functionally equivalent
based on my reading of the port accessors, but he probably tested his
version, so I'll drop mine from this series. Nothing else depends on this
one, I just included it since it was an obvious thing to fix.

        Arnd
diff mbox series

Patch

diff --git a/drivers/net/ethernet/8390/Makefile b/drivers/net/ethernet/8390/Makefile
index 85c83c566ec6..304897d5f0f9 100644
--- a/drivers/net/ethernet/8390/Makefile
+++ b/drivers/net/ethernet/8390/Makefile
@@ -16,5 +16,5 @@  obj-$(CONFIG_PCMCIA_PCNET) += pcnet_cs.o 8390.o
 obj-$(CONFIG_STNIC) += stnic.o 8390.o
 obj-$(CONFIG_ULTRA) += smc-ultra.o 8390.o
 obj-$(CONFIG_WD80x3) += wd.o 8390.o
-obj-$(CONFIG_XSURF100) += xsurf100.o
+obj-$(CONFIG_XSURF100) += xsurf100.o 8390.o
 obj-$(CONFIG_ZORRO8390) += zorro8390.o
diff --git a/drivers/net/ethernet/8390/xsurf100.c b/drivers/net/ethernet/8390/xsurf100.c
index e2c963821ffe..11d5d43e7202 100644
--- a/drivers/net/ethernet/8390/xsurf100.c
+++ b/drivers/net/ethernet/8390/xsurf100.c
@@ -42,10 +42,7 @@ 
 /* Ensure we have our RCR base value */
 #define AX88796_PLATFORM
 
-static unsigned char version[] =
-		"ax88796.c: Copyright 2005,2007 Simtec Electronics\n";
-
-#include "lib8390.c"
+#include "8390.h"
 
 /* from ne.c */
 #define NE_CMD		EI_SHIFT(0x00)
@@ -232,7 +229,7 @@  static void xs100_block_output(struct net_device *dev, int count,
 		if (jiffies - dma_start > 2 * HZ / 100) {	/* 20ms */
 			netdev_warn(dev, "timeout waiting for Tx RDC.\n");
 			ei_local->reset_8390(dev);
-			ax_NS8390_init(dev, 1);
+			NS8390p_init(dev, 1);
 			break;
 		}
 	}