linux/drivers/net/ethernet
Claudiu Manoil 369ec162b3 gianfar: Add device ref (dev) in gfar_private
Use device pointer (dev) to simplify the code and to
avoid double indirections, especially on the hot path.

Basically, instead of accessing priv to get the ofdev
reference and then accessing the ofdev structure to
dereference the needed dev pointer, we will get the
dev pointer directly from priv.

The dev pointer is required on the hot path, see gfar_new_rxbdp
or gfar_clean_rx_ring (or xmit), and this patch makes
it available directly from priv's 1st cacheline.

This change is reflected at asm level too, taking (the hot)
gfar_new_rxbdp():
initial version -
    18c0:	7c 7e 1b 78 	mr      r30,r3

    18d0:	81 69 04 3c 	lwz     r11,1084(r9)

    18d8:	34 6b 00 10 	addic.  r3,r11,16
    18dc:	41 82 00 08 	beq-    18e4

patched version -
    18d0:	80 69 04 38 	lwz     r3,1080(r9)

    18d8:	2f 83 00 00 	cmpwi   cr7,r3,0
    18dc:	41 9e 00 08 	beq-    cr7,18e4

Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-02-14 13:32:24 -05:00
..
3com Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-29 15:32:13 -05:00
8390 drivers/net: delete the really obsolete 8390 based 10Mbit ISA drivers 2013-01-22 10:39:54 -05:00
adaptec drivers/net: fix up function prototypes after __dev* removals 2012-12-07 14:22:22 -05:00
adi Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-15 15:05:59 -05:00
aeroflex net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
alteon drivers/net: fix up function prototypes after __dev* removals 2012-12-07 14:22:22 -05:00
amd drivers: net: Remove remaining alloc/OOM messages 2013-02-08 17:44:39 -05:00
apple net/apple: remove __dev* attributes 2012-12-03 11:16:54 -08:00
atheros ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
broadcom bgmac: add read of interrupt mask after disabling interrupts 2013-02-14 13:23:24 -05:00
brocade bna: Driver Version Updated to 3.1.2.1 2012-12-11 18:25:53 -05:00
cadence net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
calxeda Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-29 15:32:13 -05:00
chelsio cxgb4vf: Fix VLAN extraction counter increment 2013-02-12 16:15:10 -05:00
cirrus ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
cisco enic: change sprintf() to snprintf() 2013-01-18 14:34:48 -05:00
davicom ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
dec drivers/net: delete Digital EtherWorks-3 support. 2013-01-22 10:39:55 -05:00
dlink drivers/net: delete old parallel port de600/de620 drivers 2013-01-22 10:39:49 -05:00
emulex be2net: remove BUG_ON() in be_mcc_compl_is_new() 2013-02-13 13:52:55 -05:00
faraday net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
freescale gianfar: Add device ref (dev) in gfar_private 2013-02-14 13:32:24 -05:00
fujitsu drivers/net: delete old fujitsu based eth16i driver 2013-01-22 10:39:54 -05:00
hp drivers/net: fix up function prototypes after __dev* removals 2012-12-07 14:22:22 -05:00
i825xx drivers/net: delete Racal Interlan ISA ni52 (i825xx) driver 2013-01-22 10:39:52 -05:00
ibm ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
icplus drivers/net: fix up function prototypes after __dev* removals 2012-12-07 14:22:22 -05:00
intel bridge: Add vlan support to static neighbors 2013-02-13 19:42:16 -05:00
marvell ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
mellanox bridge: Add vlan support to static neighbors 2013-02-13 19:42:16 -05:00
micrel net: ks8851: convert to threaded IRQ 2013-01-29 13:32:00 -05:00
microchip net: remove unnecessary NET_ADDR_RANDOM "bitclean" 2013-01-03 22:37:36 -08:00
myricom ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
natsemi drivers/net: delete orphaned MCA ibmlana driver content 2013-01-14 21:26:06 -05:00
neterion remove init of dev->perm_addr in drivers 2013-01-08 18:00:48 -08:00
nuvoton ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
nvidia Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-15 15:05:59 -05:00
nxp net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
octeon ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
oki-semi pch_gbe, ptp_pch: Fix the dependency direction between these drivers 2012-11-17 22:11:45 -05:00
packetengines ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
pasemi net/pasemi: remove __dev* attributes 2012-12-03 11:16:55 -08:00
qlogic bridge: Add vlan support to static neighbors 2013-02-13 19:42:16 -05:00
rdc ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
realtek Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-02-12 18:58:28 -05:00
renesas ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
seeq drivers/net: delete old x86 variant of the seeq8005 driver 2013-01-22 10:39:56 -05:00
sfc drivers/net/ethernet/sfc/ptp.c: adjust duplicate test 2013-01-21 15:44:58 -05:00
sgi ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
silan remove init of dev->perm_addr in drivers 2013-01-08 18:00:48 -08:00
sis remove init of dev->perm_addr in drivers 2013-01-08 18:00:48 -08:00
smsc drivers: net: Remove remaining alloc/OOM messages 2013-02-08 17:44:39 -05:00
stmicro Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-02-12 18:58:28 -05:00
sun ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
tehuti ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
ti net: ethernet: ti: remove redundant NULL check. 2013-02-13 13:41:44 -05:00
tile net: remove unnecessary NET_ADDR_RANDOM "bitclean" 2013-01-03 22:37:36 -08:00
toshiba net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
tundra
via Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-02-05 14:12:20 -05:00
wiznet net: remove unnecessary NET_ADDR_RANDOM "bitclean" 2013-01-03 22:37:36 -08:00
xilinx ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
xircom ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
xscale net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
dnet.c net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
dnet.h
ethoc.c ethoc: Cleanup driver format 2013-01-29 14:07:05 -05:00
fealnx.c drivers/net: fix up function prototypes after __dev* removals 2012-12-07 14:22:22 -05:00
jme.c jme: remove __dev* attributes 2012-12-03 11:16:54 -08:00
jme.h
Kconfig drivers/net: delete old 8 bit ISA Racal ni5010 support. 2013-01-22 10:39:52 -05:00
korina.c ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
lantiq_etop.c net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
Makefile drivers/net: delete old 8 bit ISA Racal ni5010 support. 2013-01-22 10:39:52 -05:00
netx-eth.c ARM: netx: move platform_data definitions 2012-09-14 11:17:36 +02:00
s6gmac.c net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00