2005-04-17 02:20:36 +04:00
#
# Makefile for the Linux network (ethercard) device drivers.
#
obj-$(CONFIG_E1000) += e1000/
2007-09-17 23:30:59 +04:00
obj-$(CONFIG_E1000E) += e1000e/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_IBM_EMAC) += ibm_emac/
Device tree aware EMAC driver
Based on BenH's earlier work, this is a new version of the EMAC driver
for the built-in ethernet found on PowerPC 4xx embedded CPUs. The
same ASIC is also found in the Axon bridge chip. This new version is
designed to work in the arch/powerpc tree, using the device tree to
probe the device, rather than the old and ugly arch/ppc OCP layer.
This driver is designed to sit alongside the old driver (that lies in
drivers/net/ibm_emac and this one in drivers/net/ibm_newemac). The
old driver is left in place to support arch/ppc until arch/ppc itself
reaches its final demise (not too long now, with luck).
This driver still has a number of things that could do with cleaning
up, but I think they can be fixed up after merging. Specifically:
- Should be adjusted to properly use the dma mapping API.
Axon needs this.
- Probe logic needs reworking, in conjuction with the general
probing code for of_platform devices. The dependencies here between
EMAC, MAL, ZMII etc. make this complicated. At present, it usually
works, because we initialize and register the sub-drivers before the
EMAC driver itself, and (being in driver code) runs after the devices
themselves have been instantiated from the device tree.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-08-23 07:56:01 +04:00
obj-$(CONFIG_IBM_NEW_EMAC) += ibm_newemac/
2007-09-16 01:07:45 +04:00
obj-$(CONFIG_IXGBE) += ixgbe/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_IXGB) += ixgb/
2007-09-18 04:13:55 +04:00
obj-$(CONFIG_IP1000) += ipg.o
2005-03-31 01:34:31 +04:00
obj-$(CONFIG_CHELSIO_T1) += chelsio/
2007-01-19 06:04:14 +03:00
obj-$(CONFIG_CHELSIO_T3) += cxgb3/
2006-09-13 19:44:31 +04:00
obj-$(CONFIG_EHEA) += ehea/
2007-11-17 02:56:08 +03:00
obj-$(CONFIG_CAN) += can/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_BONDING) += bonding/
2007-02-08 18:42:37 +03:00
obj-$(CONFIG_ATL1) += atl1/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_GIANFAR) += gianfar_driver.o
2007-09-18 05:50:36 +04:00
obj-$(CONFIG_TEHUTI) += tehuti.o
2005-04-17 02:20:36 +04:00
2005-11-11 21:38:59 +03:00
gianfar_driver-objs := gianfar.o \
gianfar_ethtool.o \
gianfar_mii.o \
gianfar_sysfs.o
2005-04-17 02:20:36 +04:00
2006-08-15 10:00:11 +04:00
obj-$(CONFIG_UCC_GETH) += ucc_geth_driver.o
2007-07-19 07:47:47 +04:00
ucc_geth_driver-objs := ucc_geth.o ucc_geth_mii.o ucc_geth_ethtool.o
2006-08-15 10:00:11 +04:00
2005-04-17 02:20:36 +04:00
#
# link order important here
#
obj-$(CONFIG_PLIP) += plip.o
obj-$(CONFIG_ROADRUNNER) += rrunner.o
obj-$(CONFIG_HAPPYMEAL) += sunhme.o
obj-$(CONFIG_SUNLANCE) += sunlance.o
obj-$(CONFIG_SUNQE) += sunqe.o
obj-$(CONFIG_SUNBMAC) += sunbmac.o
obj-$(CONFIG_MYRI_SBUS) += myri_sbus.o
obj-$(CONFIG_SUNGEM) += sungem.o sungem_phy.o
2005-09-28 02:24:13 +04:00
obj-$(CONFIG_CASSINI) += cassini.o
2007-07-10 09:23:51 +04:00
obj-$(CONFIG_SUNVNET) += sunvnet.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_MACE) += mace.o
obj-$(CONFIG_BMAC) += bmac.o
obj-$(CONFIG_VORTEX) += 3c59x.o
obj-$(CONFIG_TYPHOON) += typhoon.o
obj-$(CONFIG_NE2K_PCI) += ne2k-pci.o 8390.o
obj-$(CONFIG_PCNET32) += pcnet32.o
obj-$(CONFIG_EEPRO100) += eepro100.o
obj-$(CONFIG_E100) += e100.o
obj-$(CONFIG_TLAN) += tlan.o
obj-$(CONFIG_EPIC100) += epic100.o
2005-07-30 15:08:43 +04:00
obj-$(CONFIG_SIS190) += sis190.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_SIS900) += sis900.o
2007-11-13 08:31:11 +03:00
obj-$(CONFIG_R6040) += r6040.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_YELLOWFIN) += yellowfin.o
obj-$(CONFIG_ACENIC) += acenic.o
obj-$(CONFIG_ISERIES_VETH) += iseries_veth.o
obj-$(CONFIG_NATSEMI) += natsemi.o
obj-$(CONFIG_NS83820) += ns83820.o
obj-$(CONFIG_STNIC) += stnic.o 8390.o
obj-$(CONFIG_FEALNX) += fealnx.o
obj-$(CONFIG_TIGON3) += tg3.o
2005-05-27 00:03:09 +04:00
obj-$(CONFIG_BNX2) += bnx2.o
2006-03-22 09:53:47 +03:00
spidernet-y += spider_net.o spider_net_ethtool.o
obj-$(CONFIG_SPIDER_NET) += spidernet.o sungem_phy.o
2007-07-05 15:11:16 +04:00
obj-$(CONFIG_GELIC_NET) += ps3_gelic.o
ps3_gelic-objs += ps3_gelic_net.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_TC35815) += tc35815.o
2005-05-13 04:14:36 +04:00
obj-$(CONFIG_SKGE) += skge.o
2005-08-17 03:36:49 +04:00
obj-$(CONFIG_SKY2) += sky2.o
2007-09-16 03:35:14 +04:00
obj-$(CONFIG_SK98LIN) += sk98lin/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_SKFP) += skfp/
obj-$(CONFIG_VIA_RHINE) += via-rhine.o
obj-$(CONFIG_VIA_VELOCITY) += via-velocity.o
obj-$(CONFIG_ADAPTEC_STARFIRE) += starfire.o
2005-09-09 23:10:10 +04:00
obj-$(CONFIG_RIONET) += rionet.o
2005-04-17 02:20:36 +04:00
#
# end link order section
#
obj-$(CONFIG_MII) += mii.o
2005-07-31 03:31:23 +04:00
obj-$(CONFIG_PHYLIB) += phy/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_SUNDANCE) += sundance.o
obj-$(CONFIG_HAMACHI) += hamachi.o
obj-$(CONFIG_NET) += Space.o loopback.o
obj-$(CONFIG_SEEQ8005) += seeq8005.o
obj-$(CONFIG_NET_SB1000) += sb1000.o
2006-10-10 03:19:36 +04:00
obj-$(CONFIG_MAC8390) += mac8390.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_APNE) += apne.o 8390.o
obj-$(CONFIG_PCMCIA_PCNET) += 8390.o
obj-$(CONFIG_HP100) += hp100.o
obj-$(CONFIG_SMC9194) += smc9194.o
obj-$(CONFIG_FEC) += fec.o
2007-10-26 20:07:49 +04:00
obj-$(CONFIG_FEC_MPC52xx) += fec_mpc52xx.o
i f e q ( $( CONFIG_FEC_MPC 52xx_MDIO ) , y )
obj-$( CONFIG_FEC_MPC52xx) += fec_mpc52xx_phy.o
e n d i f
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_68360_ENET) += 68360enet.o
obj-$(CONFIG_WD80x3) += wd.o 8390.o
obj-$(CONFIG_EL2) += 3c503.o 8390.o
obj-$(CONFIG_NE2000) += ne.o 8390.o
obj-$(CONFIG_NE2_MCA) += ne2.o 8390.o
obj-$(CONFIG_HPLAN) += hp.o 8390.o
obj-$(CONFIG_HPLAN_PLUS) += hp-plus.o 8390.o
obj-$(CONFIG_ULTRA) += smc-ultra.o 8390.o
obj-$(CONFIG_ULTRAMCA) += smc-mca.o 8390.o
obj-$(CONFIG_ULTRA32) += smc-ultra32.o 8390.o
obj-$(CONFIG_E2100) += e2100.o 8390.o
obj-$(CONFIG_ES3210) += es3210.o 8390.o
obj-$(CONFIG_LNE390) += lne390.o 8390.o
obj-$(CONFIG_NE3210) += ne3210.o 8390.o
2007-09-14 15:05:00 +04:00
obj-$(CONFIG_SB1250_MAC) += sb1250-mac.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_B44) += b44.o
obj-$(CONFIG_FORCEDETH) += forcedeth.o
2006-10-10 03:19:36 +04:00
obj-$(CONFIG_NE_H8300) += ne-h8300.o
2007-07-03 19:53:09 +04:00
obj-$(CONFIG_AX88796) += ax88796.o
2005-04-17 02:20:36 +04:00
2006-11-09 06:49:13 +03:00
obj-$(CONFIG_TSI108_ETH) += tsi108_eth.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_MV643XX_ETH) += mv643xx_eth.o
2006-07-25 11:40:21 +04:00
obj-$(CONFIG_QLA3XXX) += qla3xxx.o
2005-04-17 02:20:36 +04:00
2006-07-14 15:15:40 +04:00
obj-$(CONFIG_PPP) += ppp_generic.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_PPP_ASYNC) += ppp_async.o
obj-$(CONFIG_PPP_SYNC_TTY) += ppp_synctty.o
obj-$(CONFIG_PPP_DEFLATE) += ppp_deflate.o
obj-$(CONFIG_PPP_BSDCOMP) += bsd_comp.o
2005-11-08 20:40:47 +03:00
obj-$(CONFIG_PPP_MPPE) += ppp_mppe.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_PPPOE) += pppox.o pppoe.o
2007-06-28 02:49:24 +04:00
obj-$(CONFIG_PPPOL2TP) += pppox.o pppol2tp.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_SLIP) += slip.o
2006-07-14 15:15:40 +04:00
obj-$(CONFIG_SLHC) += slhc.o
2005-04-17 02:20:36 +04:00
2007-07-18 05:37:06 +04:00
obj-$(CONFIG_XEN_NETDEV_FRONTEND) += xen-netfront.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_DUMMY) += dummy.o
2006-01-09 09:34:25 +03:00
obj-$(CONFIG_IFB) += ifb.o
2007-07-15 05:55:06 +04:00
obj-$(CONFIG_MACVLAN) += macvlan.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_DE600) += de600.o
obj-$(CONFIG_DE620) += de620.o
obj-$(CONFIG_LANCE) += lance.o
obj-$(CONFIG_SUN3_82586) += sun3_82586.o
obj-$(CONFIG_SUN3LANCE) += sun3lance.o
obj-$(CONFIG_DEFXX) += defxx.o
obj-$(CONFIG_SGISEEQ) += sgiseeq.o
obj-$(CONFIG_SGI_O2MACE_ETH) += meth.o
obj-$(CONFIG_AT1700) += at1700.o
obj-$(CONFIG_EL1) += 3c501.o
obj-$(CONFIG_EL16) += 3c507.o
obj-$(CONFIG_ELMC) += 3c523.o
obj-$(CONFIG_IBMLANA) += ibmlana.o
obj-$(CONFIG_ELMC_II) += 3c527.o
obj-$(CONFIG_EL3) += 3c509.o
obj-$(CONFIG_3C515) += 3c515.o
obj-$(CONFIG_EEXPRESS) += eexpress.o
obj-$(CONFIG_EEXPRESS_PRO) += eepro.o
obj-$(CONFIG_8139CP) += 8139cp.o
obj-$(CONFIG_8139TOO) += 8139too.o
obj-$(CONFIG_ZNET) += znet.o
obj-$(CONFIG_LAN_SAA9730) += saa9730.o
2007-10-14 20:10:13 +04:00
obj-$(CONFIG_CPMAC) += cpmac.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_DEPCA) += depca.o
obj-$(CONFIG_EWRK3) += ewrk3.o
obj-$(CONFIG_ATP) += atp.o
obj-$(CONFIG_NI5010) += ni5010.o
obj-$(CONFIG_NI52) += ni52.o
obj-$(CONFIG_NI65) += ni65.o
obj-$(CONFIG_ELPLUS) += 3c505.o
obj-$(CONFIG_AC3200) += ac3200.o 8390.o
obj-$(CONFIG_APRICOT) += 82596.o
obj-$(CONFIG_LASI_82596) += lasi_82596.o
2007-06-28 02:49:06 +04:00
obj-$(CONFIG_SNI_82596) += sni_82596.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_MVME16x_NET) += 82596.o
obj-$(CONFIG_BVME6000_NET) += 82596.o
2006-12-20 00:08:47 +03:00
obj-$(CONFIG_SC92031) += sc92031.o
2005-04-17 02:20:36 +04:00
# This is also a 82596 and should probably be merged
obj-$(CONFIG_LP486E) += lp486e.o
obj-$(CONFIG_ETH16I) += eth16i.o
2006-10-10 03:19:36 +04:00
obj-$(CONFIG_ZORRO8390) += zorro8390.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_HPLANCE) += hplance.o 7990.o
obj-$(CONFIG_MVME147_NET) += mvme147.o 7990.o
obj-$(CONFIG_EQUALIZER) += eql.o
obj-$(CONFIG_MIPS_JAZZ_SONIC) += jazzsonic.o
obj-$(CONFIG_MIPS_AU1X00_ENET) += au1000_eth.o
2005-10-10 17:51:27 +04:00
obj-$(CONFIG_MIPS_SIM_NET) += mipsnet.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_SGI_IOC3_ETH) += ioc3-eth.o
obj-$(CONFIG_DECLANCE) += declance.o
obj-$(CONFIG_ATARILANCE) += atarilance.o
obj-$(CONFIG_A2065) += a2065.o
2006-10-10 03:19:36 +04:00
obj-$(CONFIG_HYDRA) += hydra.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_ARIADNE) += ariadne.o
obj-$(CONFIG_CS89x0) += cs89x0.o
obj-$(CONFIG_MACSONIC) += macsonic.o
obj-$(CONFIG_MACMACE) += macmace.o
obj-$(CONFIG_MAC89x0) += mac89x0.o
obj-$(CONFIG_TUN) += tun.o
2007-09-26 03:14:46 +04:00
obj-$(CONFIG_VETH) += veth.o
2006-06-22 09:11:13 +04:00
obj-$(CONFIG_NET_NETX) += netx-eth.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_DL2K) += dl2k.o
obj-$(CONFIG_R8169) += r8169.o
obj-$(CONFIG_AMD8111_ETH) += amd8111e.o
obj-$(CONFIG_IBMVETH) += ibmveth.o
obj-$(CONFIG_S2IO) += s2io.o
2006-05-23 14:10:15 +04:00
obj-$(CONFIG_MYRI10GE) += myri10ge/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_SMC91X) += smc91x.o
2006-04-20 07:24:51 +04:00
obj-$(CONFIG_SMC911X) += smc911x.o
2007-07-17 10:43:44 +04:00
obj-$(CONFIG_BFIN_MAC) += bfin_mac.o
2005-05-06 02:14:15 +04:00
obj-$(CONFIG_DM9000) += dm9000.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_FEC_8XX) += fec_8xx/
2007-02-01 06:43:54 +03:00
obj-$(CONFIG_PASEMI_MAC) += pasemi_mac.o
2007-05-09 05:00:38 +04:00
obj-$(CONFIG_MLX4_CORE) += mlx4/
2005-04-17 02:20:36 +04:00
2006-11-09 16:51:17 +03:00
obj-$(CONFIG_MACB) += macb.o
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_ARM) += arm/
obj-$(CONFIG_DEV_APPLETALK) += appletalk/
obj-$(CONFIG_TR) += tokenring/
obj-$(CONFIG_WAN) += wan/
obj-$(CONFIG_ARCNET) += arcnet/
obj-$(CONFIG_NET_PCMCIA) += pcmcia/
2007-05-10 05:31:55 +04:00
obj-$(CONFIG_USB_CATC) += usb/
obj-$(CONFIG_USB_KAWETH) += usb/
obj-$(CONFIG_USB_PEGASUS) += usb/
obj-$(CONFIG_USB_RTL8150) += usb/
obj-$(CONFIG_USB_USBNET) += usb/
obj-$(CONFIG_USB_ZD1201) += usb/
2007-04-23 23:19:12 +04:00
obj-y += wireless/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_NET_TULIP) += tulip/
obj-$(CONFIG_HAMRADIO) += hamradio/
obj-$(CONFIG_IRDA) += irda/
obj-$(CONFIG_ETRAX_ETHERNET) += cris/
[PATCH] intel ixp2000 network driver
The way the hardware and firmware work is that there is one shared RX
queue and IRQ for a number of different network interfaces. Due to this,
we would like to process received packets for every interface in the same
NAPI poll handler, so we need a pseudo-device to schedule polling on.
What the driver currently does is that it always schedules polling for
the first network interface in the list, and processes packets for every
interface in the poll handler for that first interface -- however, this
scheme breaks down if the first network interface happens to not be up,
since netif_rx_schedule_prep() checks netif_running().
sky2 apparently has the same issue, and Stephen Hemminger suggested a
way to work around this: create a variant of netif_rx_schedule_prep()
that does not check netif_running(). I implemented this locally and
called it netif_rx_schedule_prep_notup(), and it seems to work well,
but it's something that probably not everyone would be happy with.
The ixp2000 is an ARM CPU with a high-speed network interface in the
CPU itself (full duplex 4Gb/s or 10Gb/s depending on the IXP model.)
The CPU package also contains 8 or 16 (again depending on the IXP
model) 'microengines', which are somewhat primitive but very fast
and efficient processor cores which can be used to offload various
things from the main CPU.
This driver makes the high-speed network interface in the CPU visible
and usable as a regular linux network device. Currently, it only
supports the Radisys ENP2611 IXP board, but adding support for other
board types should be fairly easy.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-11-11 20:23:13 +03:00
obj-$(CONFIG_ENP2611_MSF_NET) += ixp2000/
2005-04-17 02:20:36 +04:00
obj-$(CONFIG_NETCONSOLE) += netconsole.o
2005-10-29 00:25:58 +04:00
obj-$(CONFIG_FS_ENET) += fs_enet/
2006-10-21 23:33:03 +04:00
obj-$(CONFIG_NETXEN_NIC) += netxen/
2007-10-09 12:54:01 +04:00
obj-$(CONFIG_NIU) += niu.o
2007-10-22 05:03:37 +04:00
obj-$(CONFIG_VIRTIO_NET) += virtio_net.o