aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bfin_mac.c
Commit message (Collapse)AuthorAge
* net/bfin_mac.c MDIO namespace fixesAdrian Bunk2008-10-13
| | | | | | | | | | | | | | | | | | | | | | | Commit 2e888103295f47b8fcbf7e9bb8c5da97dd2ecd76 (phylib: add mdiobus_{read,write}) causes the following compile error: <-- snip --> ... CC drivers/net/bfin_mac.o drivers/net/bfin_mac.c:272: error: conflicting types for 'mdiobus_read' include/linux/phy.h:130: error: previous declaration of 'mdiobus_read' was here drivers/net/bfin_mac.c:287: error: conflicting types for 'mdiobus_write' include/linux/phy.h:131: error: previous declaration of 'mdiobus_write' was here make[3]: *** [drivers/net/bfin_mac.o] Error 1 <-- snip --> This patch prefixes the driver functions with bfin_ Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* phylib: move to dynamic allocation of struct mii_busLennert Buytenhek2008-10-08
| | | | | | | | | | This patch introduces mdiobus_alloc() and mdiobus_free(), and makes all mdio bus drivers use these functions to allocate their struct mii_bus'es dynamically. Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> Signed-off-by: David S. Miller <davem@davemloft.net> Acked-by: Andy Fleming <afleming@freescale.com>
* drivers/net: replace __FUNCTION__ with __func__Harvey Harrison2008-09-24
| | | | | | | | __FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* blackfin_mac: unneeded assignmentStephen Hemminger2008-07-29
| | | | | | | skb->dev is set by eth_type_trans already. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* Blackfin EMAC Driver: Functional power management supportMichael Hennerich2008-07-29
| | | | | | | | | Reprogram MAC address after resume from Suspend Mem (Blackfin Hibernate looses all CORE and SYSTEM register content) Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* Blackfin EMAC Driver: enable TXDWA new feature for new silicon (rev > 0.2)Bryan Wu2008-07-29
| | | | | Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* Blackfin EMAC Driver: add proper __devinit/__devexit markingsMike Frysinger2008-07-29
| | | | | | Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* netdev: bunch of drivers: avoid WARN at net/core/dev.c:1328Anton Vorontsov2008-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The drivers were touching net queue before it has been started, so without this patch, the drivers will potentially WARN at net/core/dev.c:1328. I don't have the hardware for the drivers below, so this patch is untested, and thus should be carefully peer reviewed. tc35815.c au1000_eth.c bfin_mac.c macb.c ^ The four drivers are using phylib, they're calling netif_start_queue() in open() callback. So trivially remove netif_tx_schedule_all(). Phylib will handle netif_carrier_*(). cpmac.c fec_mpc52xx.c fs_enet/fs_enet-main.c sh_eth.c ^ The same as above, but these were also needlessly calling netif_carrier_*() functions. So removed queue calls and also remove carrier calls, since phylib will handle it. fs_enet-main.c also didn't call netif_start_queue() at open(), this is fixed now. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* netdev: Convert all drivers away from netif_schedule().David S. Miller2008-07-17
| | | | | | | They logically all want to trigger a schedule for all device TX queues. Signed-off-by: David S. Miller <davem@davemloft.net>
* Blackfin EMAC Driver: Removed duplicated include <linux/ethtool.h>Huang Weiyi2008-05-22
| | | | | | Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* Blackfin EMAC Driver: Initial version of ethtool supportBryan Wu2008-04-29
| | | | | Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* Blackfin EMAC Driver: code cleanupBryan Wu2008-04-29
| | | | | | | | | - replace specific "bf537" function or data structure name to "bfin_mac" - cleanup bfin_mac_probe with error checking - punt set_pin_mux function, call peripheral request/free list functions directly Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* net drivers: fix platform driver hotplug/coldplugKay Sievers2008-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable network platform drivers, to re-enable auto loading. NOTE: didn't change drivers/net/fs_enet/fs_enet-main.c "old binding" support. That looks problematic in the first place (it even uses the ancient "struct device_driver" binding scheme for platform_bus!) and I suspect it will vanish soonish when arch/powerpc rules the world. Also, drivers/net/ne.c would have needed more thought to sort out. [akpm@linux-foundation.org: fix sgiseeq.c] [dbrownell@users.sourceforge.net: more drivers, registration fixes] Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Scott Wood <scottwood@freescale.com> Cc: Vitaly Bordug <vitb@kernel.crashing.org> Cc: Dale Farnsworth <dale@farnsworth.org> Cc: Ben Dooks <ben-linux@fluff.org> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Andrew Victor <andrew@sanpeople.com> Cc: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* phy: Change mii_bus id field to a stringAndy Fleming2008-04-16
| | | | | | | | | | Having the id field be an int was making more complex bus topologies excessively difficult. For now, just convert it to a string, and change all instances of "bus->id = val" to snprintf(id, MII_BUS_ID_LEN, "%x", val). Signed-off-by: Andy Fleming <afleming@freescale.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* Blackfin EMAC Driver: delete unused variables to fixup gcc warningsMike Frysinger2008-03-28
| | | | | | Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* EMAC driver: Fix bug: The clock divisor is set to all ones at reset.Bryan Wu2008-02-03
| | | | | | | Signed-off-by: Kalle Pokki <kalle.pokki@eke.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* EMAC driver: fix bug - invalidate data cache of new_skb->data range when ↵Alexey Demin2008-02-03
| | | | | | | | | | | cache is WB It prevents overwritting new data from DMA. Signed-off-by: Alexey Demin <bf53x@ya.ru> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* EMAC driver: add power down modeVitja Makarov2008-02-03
| | | | | | | | | | | This patch puts phy in power-down mode when interface is down. Also we should think about energy detect power-down mode, that will decrease power consumption when no link. Signed-off-by: Vitja Makarov <vitja.makarov@gmail.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* EMAC driver: ADSP-BF52x arch/mach supportMichael Hennerich2008-02-03
| | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* EMAC driver: use simpler comment headers and strip out information that is ↵Mike Frysinger2008-02-03
| | | | | | | | | maintained in the scm's log Signed-off-by: Mike Frysinger <michael.frysinger@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* EMAC driver: bf537 MAC multicast hash filtering patchAidan Williams2008-02-03
| | | | | | | | | | | | | The bf537 Ethernet MAC driver in the 2007R1.1-RC3 kernel (and the current kernel) do not implement multicast hash filtering. This is a performance problem if you have lots of multicast on your network. This patch plugs the right bits into the multicast hash registers. Signed-off-by: Aidan Williams <aidan@nicta.com.au> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* EMAC driver: define MDC_CLK=2.5MHz and caculate mdc_div according to SCLK.Bryan Wu2008-02-03
| | | | | | Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* EMAC driver: shorten the mdelay value to solve netperf performance issueBryan Wu2008-02-03
| | | | | | Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'master' into upstream-fixesJeff Garzik2007-12-01
|\
| * Blackfin arch: change get_bf537_ether_addr() to bfin_get_ether_addr() since ↵Mike Frysinger2007-11-15
| | | | | | | | | | | | | | | | this is not BF537 specific and to better match other Blackfin-specific conventions Signed-off-by: Mike Frysinger <michael.frysinger@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
* | Blackfin EMAC driver: fix bug - NAT doesn't work with bfin_mac driverVitja Makarov2007-11-23
|/ | | | | | | | | | | https://blackfin.uclinux.org/gf/project/uclinux-dist/forum/?action=ForumBrowse&forum_id=39&thread_id=23114&_forum_action=ForumMessageBrowse Today I was dealing with the same problem, on my custom bf537 board, and bfin_mac driver. I found that the problem is in setting ip_summed flag of skbuff structure, Signed-off-by: Vitja Makarov <vitja.makarov@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Blackfin EMAC driver: Fix Ethernet communication bug (dupliated and lost ↵Michael Hennerich2007-10-30
| | | | | | | | | | | | packets) Fix Ethernet communication bug(dupliated and lost packets) in RMII PHY mode- dont call mac_disable and mac_enable during 10/100 REFCLK changes - mac_enable screws up the DMA descriptor chain Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Blackfin EMAC driver: Add phy abstraction layer supporting in bfin_emac driverBryan Wu2007-10-10
| | | | | | | | | | - add MDIO functions and register mdio bus - add phy abstraction layer (PAL) functions and use PAL API - test on STAMP537 board Signed-off-by: Bryan Wu <bryan.wu@analog.com> Acked-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Blackfin EMAC driver: add power management interface and change the ↵Bryan Wu2007-10-10
| | | | | | | | bf537mac_reset to bf537mac_disable Signed-off-by: Bryan Wu <bryan.wu@analog.com> Acked-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Blackfin EMAC driver: add function to change the MAC addressAlex Landau2007-10-10
| | | | | | | | | | | | | | Alex Landau writes in the forums: Previously, changing the MAC address (e.g. via ifconfig) resulted in a generic function to be called that only changed a variable in memory. This patch also updated the Blackfin MAC address registers to filter the correct new MAC. Signed-off-by: Alex Landau <lirsb@yahoo.com> Signed-off-by: Mike Frysinger <michael.frysinger@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Acked-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [NET] drivers/net: statistics cleanup #1 -- save memory and shrink codeJeff Garzik2007-10-10
| | | | | | | | | | | | | | | | | We now have struct net_device_stats embedded in struct net_device, and the default ->get_stats() hook does the obvious thing for us. Run through drivers/net/* and remove the driver-local storage of statistics, and driver-local ->get_stats() hook where applicable. This was just the low-hanging fruit in drivers/net; plenty more drivers remain to be updated. [ Resolved conflicts with napi_struct changes and fix sunqe build regression... -DaveM ] Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* [NET]: Nuke SET_MODULE_OWNER macro.Ralf Baechle2007-10-10
| | | | | | | | | | | | It's been a useless no-op for long enough in 2.6 so I figured it's time to remove it. The number of people that could object because they're maintaining unified 2.4 and 2.6 drivers is probably rather small. [ Handled drivers added by netdev tree and some missed IRDA cases... -DaveM ] Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* Clean up duplicate includes in drivers/net/Jesper Juhl2007-10-10
| | | | | | | | | | This patch cleans up duplicate includes in drivers/net/ Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Acked-by: "John W. Linville" <linville@tuxdriver.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Blackfin Ethernet MAC driver: fix bug Report returned -ENOMEM upwards (in ↵Michael Hennerich2007-07-25
| | | | | | | | | | case L1/uncached memory alloc fails) Bug tracker: https://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3399 Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
* Blackfin ethernet driver: on chip ethernet MAC controller driverBryan Wu2007-07-18
This patch implements the driver necessary use the Analog Devices Blackfin processor's on-chip ethernet MAC controller. [try#2] - add timeout control - kill dma_config_reg bitfields - some trivial cleanup [try#3] - add endianess check - add DRV_NAME, DRV_VERSION... driver information string - add some comments for silicon anomaly and dma API confusion - some code trivial cleanup [try#4] - add Blackfin latest GPIO pin mux opertion with Michael Hennerich's help and Dan's review - rewrite the DMA descriptor list operation in a more readable way by Joe's review [try#5] - cleanup some coding style by Joe's review. [try#6] - 1.1 version fix a bug when set up multicast list pointed by Mr. yoshfuji - rearrange the desc_list_free function. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Cc: Michael Buesch <mb@bu3sch.de> Cc: Mike Frysinger <vapier.adi@gmail.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Christoph Hellwig <hch@infradead.org> Cc: Dan Williams <dcbw@redhat.com> Cc: Joe Perches <joe@perches.com> Cc: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>