netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
To: Chris Metcalf <cmetcalf@tilera.com>
Cc: "davem@davemloft.net" <davem@davemloft.net>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"gospo@redhat.com" <gospo@redhat.com>,
	"sassmann@redhat.com" <sassmann@redhat.com>
Subject: Re: [net-next v2 70/71] tile: Move the Tilera driver
Date: Tue, 02 Aug 2011 22:47:34 -0700	[thread overview]
Message-ID: <1312350454.2294.86.camel@jtkirshe-mobl> (raw)
In-Reply-To: <4E36E0B2.60900@tilera.com>

[-- Attachment #1: Type: text/plain, Size: 5455 bytes --]

On Mon, 2011-08-01 at 10:21 -0700, Chris Metcalf wrote:
> On 7/30/2011 11:27 PM, Jeff Kirsher wrote:
> > Move the Tilera driver into drivers/net/ethernet/tile and
> > make the necessary Kconfig and Makefile changes.
> >
> > CC: Chris Metcalf <cmetcalf@tilera.com>
> > Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> > [...]
> > +++ b/drivers/net/ethernet/tile/Kconfig
> > @@ -0,0 +1,28 @@
> > +#
> > +# Tilera network device configuration
> > +#
> > +
> > +config NET_VENDOR_TILERA
> > +	bool "Tilera devices"
> > +	depends on TILE
> > +	---help---
> > +	  If you have a network (Ethernet) card belonging to this class, say Y
> > +	  and read the Ethernet-HOWTO, available from
> > +	  <http://www.tldp.org/docs.html#howto>.
> > +
> > +	  Note that the answer to this question doesn't directly affect the
> > +	  kernel: saying N will just cause the configurator to skip all
> > +	  the questions about Tilera cards. If you say Y, you will be asked for
> > +	  your specific card in the following questions.
> > +
> > +config TILE_NET
> > +	tristate "Tilera GBE/XGBE network driver support"
> > +	depends on NET_VENDOR_TILERA && TILE
> > +	default y
> > +	select CRC32
> > +	---help---
> > +	  This is a standard Linux network device driver for the
> > +	  on-chip Tilera Gigabit Ethernet and XAUI interfaces.
> > +
> > +	  To compile this driver as a module, choose M here: the module
> > +	  will be called tile_net.
> 
> Overall, this seems fine, since the Tilera drivers get grouped more
> appropriately as a result.  However, the drivers in question are not
> Ethernet cards (and Tilera is not an Ethernet card vendor and has no plans
> to become one).  Instead, this is the driver support for the built-in
> networking hardware on the Tilera multicore CPU chip.  I'm happy to group
> this support under drivers/net/ethernet/tile/, but I think it's appropriate
> to default it to "Y" if you are building a TILE kernel (since you are
> guaranteed to have the networking hardware available).
> 
> I suspect for now the cleanest thing to do is to fold the two config
> options together, using NET_VENDOR_TILERA for consistency with other
> NET_VENDOR_xxx symbols, and defaulting it to "Y" via "depends on TILE".  I
> don't think the Ethernet-HOWO reference is particularly helpful since it
> mostly tackles all the various card issues, kernel boot param issues, etc.,
> none of which are relevant to this driver.  Something like:
> 
> +config NET_VENDOR_TILERA
> +	bool "Tilera devices"
> +	depends on TILE
> +	default y
> +	select CRC32
> +	---help---
> +	  This is a standard Linux network device driver for the arch/tile
> +	  on-chip Gigabit Ethernet and XAUI interfaces.
> +
> +	  To compile this driver as a module, choose M here: the module
> +	  will be called tile_net.
> 
> 
> Obviously you'd also need to tweak the TILE_NET symbol in the Makefile to
> be VENDOR_TILERA.  If this makes sense to you, go ahead and make the
> change, and feel free to use my
> 
> Acked-by: Chris Metcalf <cmetcalf@tilera.com>
> 

This definitely makes sense, I was not sure if there is ever a
possibility of another driver from Tilera for future silicon on TILE
kernels, so I would want to lean towards the Kconfig format I am using
(which got a minor tweak since I sent this out) because it provides a
easy what to add additional drivers.

I can modify the current Kconfig so that it defaults to yes on Tile
kernels by doing this:

+config NET_VENDOR_TILERA
+       bool "Tilera devices"
+       depends on TILE
+	default y if TILE
+       ---help---
+         If you have a network (Ethernet) card belonging to this class,
say Y
+         and read the Ethernet-HOWTO, available from
+         <http://www.tldp.org/docs.html#howto>.
+
+         Note that the answer to this question doesn't directly affect
the
+         kernel: saying N will just cause the configurator to skip all
+         the questions about Tilera cards. If you say Y, you will be
asked for
+         your specific card in the following questions.
+
+if NET_VENDOR_TILERA
+
+config TILE_NET
+       tristate "Tilera GBE/XGBE network driver support"
+       depends on TILE
+       default y
+       select CRC32
+       ---help---
+         This is a standard Linux network device driver for the
+         on-chip Tilera Gigabit Ethernet and XAUI interfaces.
+
+         To compile this driver as a module, choose M here: the module
+         will be called tile_net.
+
+endif # NET_VENDOR_TILERA

This Kconfig would automatically default to y for TILE kernels and would
allow you to easily add additional future drivers for Tilera silicon,
and if you expand to other architectures/systems in the future it would
also allow for that as well.  Your thoughts?

Otherwise I can have it just as this:
+config TILE_NET
+       tristate "Tilera GBE/XGBE network driver support"
+       depends on TILE
+       default y
+       select CRC32
+       ---help---
+         This is a standard Linux network device driver for the
+         on-chip Tilera Gigabit Ethernet and XAUI interfaces.
+
+         To compile this driver as a module, choose M here: the module
+         will be called tile_net.

Because you only have 1 driver, there is no large need to add the
NET_VENDOR_<blah> and it can always be added in the future if the need
arises.


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

  parent reply	other threads:[~2011-08-03  5:47 UTC|newest]

Thread overview: 116+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-31  3:26 [RFC net-next v2 00/71] Organize/Move of the Ethernet drivers in drivers/net/ Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 01/71] drivers/net/ethernet: Add ethernet dir and config option Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 02/71] 3c*/acenic/typhoon: Move 3Com Ethernet drivers Jeff Kirsher
2011-08-01  9:03   ` Alan Cox
2011-08-01  9:21     ` David Miller
2011-08-01  9:42       ` Alan Cox
2011-08-01 20:15     ` Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 03/71] amd: Move AMD (Lance) chipset drivers Jeff Kirsher
2011-07-31  8:14   ` Geert Uytterhoeven
2011-07-31  8:30     ` Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 04/71] 8390: Move the 8390 related drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 05/71] broadcom: Move the Broadcom drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 06/71] chelsio: Move the Chelsio drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 07/71] intel: Move the Intel wired LAN drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 08/71] qlogic: Move the QLogic drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 09/71] smsc: Move the SMC (SMSC) drivers Jeff Kirsher
2011-07-31  7:17   ` Jeff Kirsher
2011-07-31 16:47   ` Nicolas Pitre
2011-08-01  6:09   ` Amit Salecha
2011-08-01  6:16     ` Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 10/71] i825xx: Move the Intel 82586/82593/82596 based drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 11/71] ni5010: Move the Racal-Interlan (Micom) driver Jeff Kirsher
2011-07-31 16:57   ` Andreas Mohr
2011-07-31 19:20     ` Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 12/71] cassini/niu/sun*: Move the Sun drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 13/71] sfc: Move the Solarflare drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 14/71] be2net: Move the Emulex driver Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 15/71] bna: Move the Brocade driver Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 16/71] mlx4: Move the Mellanox driver Jeff Kirsher
2011-08-01 13:10   ` Roland Dreier
2011-08-01 16:15     ` Eli Cohen
2011-07-31  3:26 ` [net-next v2 17/71] myri*: Move the Myricom drivers Jeff Kirsher
2011-08-01 17:09   ` Jon Mason
2011-08-03  6:02     ` Jeff Kirsher
2011-08-03 19:37       ` Jon Mason
2011-07-31  3:26 ` [net-next v2 18/71] s2io/vxge: Move the Exar drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 19/71] ehea/ibm*: Move the IBM drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 20/71] enic: Move the Cisco driver Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 21/71] pasemic_mac*: Move the PA Semi driver Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 22/71] tehuti: Move the Tehuti driver Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 23/71] stmmac: Move the STMicroelectronics driver Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 24/71] bmac/mace/macmace/mac89x0/cs89x0: Move the Macintosh (Apple) drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 25/71] *sonic/natsemi/ns83829: Move the National Semi-conductor drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 26/71] xscale: Move the Intel XScale IXP drivers Jeff Kirsher
2011-07-31  8:38   ` Lennert Buytenhek
2011-07-31  3:26 ` [net-next v2 27/71] ftgmac100/ftmac100: Move the Faraday drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 28/71] 8139*/atp/r8169/sc92031: Move the Realtek drivers Jeff Kirsher
2011-08-02  0:24   ` Ben Hutchings
2011-08-02  3:21     ` Jeff Garzik
2011-08-02  3:41       ` Jeff Kirsher
2011-08-02  3:48       ` David Miller
2011-08-02  3:58         ` Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 29/71] de6*/dl2k/sundance: Move the D-Link drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 30/71] atl*: Move the Atheros drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 31/71] ewrk3/tulip: Move the DEC - Tulip drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 32/71] ioc3-eth/meth: Move the SGI drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 33/71] seeq: Move the SEEQ drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 34/71] pch_gbe: Move the OKI Semiconductor driver Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 35/71] skge/sky2/mv643xx/pxa168: Move the Marvell Ethernet drivers Jeff Kirsher
2011-07-31 22:11   ` Stephen Hemminger
2011-07-31 22:27     ` Joe Perches
2011-08-01  2:35       ` Jeff Kirsher
2011-08-01  2:43       ` Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 36/71] via-*: Move the VIA drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 37/71] eth16i: Move the Allied Telesis/Fujitsu drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 38/71] freescale: Move the Freescale drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 39/71] ks8*/ksz8*: Move the Micrel drivers Jeff Kirsher
2011-07-31  3:26 ` [net-next v2 40/71] toshiba: Move the Toshiba drivers Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 41/71] sis*: Move the Silicon Integrated Systems (SiS) drivers Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 42/71] cirrus: Move the Cirrus network driver Jeff Kirsher
2011-08-01 20:23   ` H Hartley Sweeten
2011-08-03  5:29     ` Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 43/71] nuvoton: Move the Nuvoton driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 44/71] tsi108*: Move the Tundra driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 45/71] s6gmac: Move the s6gmac drivers Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 46/71] davinci*/tlan/cpmac: Move the Texas Instruments (TI) drivers Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 47/71] hamachi/yellowfin: Move the packet engine drivers Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 48/71] octeon: Move the Cavium driver Jeff Kirsher
2011-08-02 22:48   ` David Daney
2011-08-03  4:59     ` Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 49/71] jme: Move the JME driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 50/71] xilinx/ll_temac: Move the Xilinx drivers Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 51/71] ipg: Move the IC Plus driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 52/71] korina: Move the IDT driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 53/71] mipsnet: Move the MIPS driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 54/71] lantiq: Move the Lantiq SoC driver Jeff Kirsher
2011-08-01 16:14   ` John Crispin
2011-07-31  3:27 ` [net-next v2 55/71] bfin_mac: Move the Analog Devices Inc driver Jeff Kirsher
2011-08-05  5:18   ` [uclinux-dist-devel] " Bob Liu
2011-07-31  3:27 ` [net-next v2 56/71] macb: Move the Atmel driver Jeff Kirsher
2011-08-01 14:41   ` Jamie Iles
2011-08-01 14:49   ` Nicolas Ferre
2011-08-03  5:59     ` Jeff Kirsher
2011-08-03  8:47       ` Jamie Iles
2011-08-03  8:50         ` Nicolas Ferre
2011-08-03  9:03           ` Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 57/71] r6040: Move the RDC driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 58/71] fealnx: Move the Myson driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 59/71] forcedeth: Move the NVIDIA nForce driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 60/71] starfire: Move the Adaptec driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 61/71] hp100: Move the HP driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 62/71] dnet: Move the Dave Ethernet driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 63/71] ethoc: Move the Avionic driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 64/71] greth: Move the Aeroflex Gaisler driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 65/71] enc28j60: Move the Microchip driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 66/71] dm9000: Move the Davicom driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 67/71] netx: Move the netx driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 68/71] sh_eth: Move the Renesas SuperH driver Jeff Kirsher
2011-07-31  3:27 ` [net-next v2 69/71] xircom: Move the Xircom driver Jeff Kirsher
2011-07-31  8:52   ` Dominik Brodowski
2011-07-31  3:27 ` [net-next v2 70/71] tile: Move the Tilera driver Jeff Kirsher
2011-08-01 17:21   ` Chris Metcalf
2011-08-02  3:53     ` Jeff Kirsher
2011-08-03  5:47     ` Jeff Kirsher [this message]
2011-08-03 19:02       ` Chris Metcalf
2011-07-31  3:27 ` [net-next v2 71/71] drivers/net: Kconfig and Makefile cleanup Jeff Kirsher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1312350454.2294.86.camel@jtkirshe-mobl \
    --to=jeffrey.t.kirsher@intel.com \
    --cc=cmetcalf@tilera.com \
    --cc=davem@davemloft.net \
    --cc=gospo@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=sassmann@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).