summaryrefslogtreecommitdiff
path: root/drivers/net
AgeCommit message (Collapse)Author
2010-06-29ccwmx51: Make it possible to disable SD and SMSC wake up sources.Alejandro Gonzalez
Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-06-28ENGR00122832-2 MX28: Support for IEEE 1588 interface functionalityXiexiaobo
Supply the 1588 support for MX28 FEC. Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-06-28netdev/fec.c: add phylib supporting to enable carrier detectionBryan Wu
netdev/fec.c: add phylib supporting to enable carrier detection BugLink: http://bugs.launchpad.net/bugs/457878 - removed old MII phy control code - add phylib supporting - add ethtool interface to make user space NetworkManager works This patch is ready for upstream, it will be pushed to upstream for merge Signed-off-by: Bryan Wu <bryan.wu@canonical.com> Acked-by: Amit Kucheria <amit.kucheria@canonical.com> Signed-off-by: Stefan Bader <stefan.bader@canonical.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-06-23ccwmx51: Remove old SMSC911X driver.Alejandro Gonzalez
We are now using the mainline kernel driver. Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-06-23ccwmx51js: Add WOL support to SMSC911xAlejandro Gonzalez
Port the WOL support from the old driver to the new. Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-27ccwmx51: FEC driverAlejandro Gonzalez
Remove an additional wait for completion which introduces an uneeded delay. Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-26ccwmx51: Fix compilation issues after applying Freescale patchesAlejandro Gonzalez
The mach-mx51 folder has been replaced by mach-mx5 to enable the addition of more platforms. Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00122879 ath6kl: set default ifname to wlan%dRichard Zhao
It's easy for ChromiumOS to use. Signed-off-by: Richard Zhao <richard.zhao@freescale.com> (cherry picked from commit 6c559e0811e10a23d9ff290d29855f4505669d41) Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00122691-1 Add atheros driver ath6klNathan Cheng
Integrate atheros driver package from atheros company. It's mainly for AR6003. Signed-off-by: Nathan Cheng <Nathan.Cheng@Atheros.com> Signed-off-by: Richard Zhao <richard.zhao@freescale.com> Acked-by: Rob Herring <r.herring@freescale.com> (cherry picked from commit f2059f1e504b4860bd51e25ebc80346cba58dd64) Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00121653 MX53 Add FEC supportXinyu Chen
Add FEC support for MX53 EVK Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00120661-1 MX28 CAN: MX28 platform supportWilliam Lai
CAN supported on MX28 platform. Signed-off-by: William Lai <b04597@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00120715 MX28:Fix FEC MAC not set correcltyJason
FEC MAC not set correclty on MX28 EVK board Signed-off-by:Jason Liu <r64343@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00120558 FEC Fix broken and warnings on MXCJason
FEC Fix broken and warnings on MXC. -use the fec_platform_data structure of kernel fec.h, remove the redefinion from mach/mxc.h -use dsv_phy_done completion to make sure fec clk not disabled during phy discovery operation. Signed-off-by:Jason Liu <r64343@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00117744-2 i.MX28 EVK ENET(Single) supportJason
FEC driver support for i.MX28 Signed-off-by:Jason Liu <r64343@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-25ENGR00121296: imx51: rename mx51 to mx5Rob Herring
Rename mx51 to mx5 for common source for MX5x family Signed-off-by: Rob Herring <r.herring@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-24ENGR00120455-1 CAN: Pass the default setting through platform_dataWilliam Lai
Initialize the default Flexcan device setting, by passing the predefined parameters through platform_data. Signed-off-by: William Lai <b04597@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-24ENGR00120372 CAN: Clock source for FlexCAN module can not be changedWilliam Lai
Change the function strcasecmp(buf, "osc") to strncasecmp(buf, "osc", 3), which only compare the first 3bytes. Signed-off-by: William Lai <b04597@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-05-24ENGR00119899 Add FEC iomux config and PHY reset.Jun Li
FEC driver of 2.6.31 kernel remove pin iomux config and PHY reset, which is in fec_gpio_active() needed for i.MX25 and i.MX35. Signed-off-by: Li Jun <r65092@freescale.com> Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
2010-02-25ccwmx51: add support for 2nd ethernet macPedro Perez de Heredia
This commit adds support for the second etherent mac. This driver should be sync with the mainline driver in future. Signed-off-by: Pedro Perez de Heredia <pedro.perez@digi.com>
2010-02-12ccwmx51js: add first support for CCWi-MX51 platform on a JSK boardPedro Perez de Heredia
This commit provides the first support for the Embedded module ConnectCore Wi-MX51 on a JSK board. Supported interfaces are: -Serial -Internal Ethernet controller (FEC) -External Ethernet controller. -NAND flash Signed-off-by: Pedro Perez de Heredia <pedro.perez@digi.com>
2010-02-12ENGR00118714 Disable FEC clock when it's not usedLily Zhang
Disable FEC clock when it's not used in 31 kernel Signed-off-by: Lily Zhang <r58066@freescale.com>
2010-02-12ENGR00118698 Fix FEC resume issueLily Zhang
FEC driver is stopped in suspend state. So FEC driver should restart instead of initialization in resume state Signed-off-by: Lily Zhang <r58066@freescale.com>
2010-02-12ENGR00117389 Port 5.0.0 release to 2.6.31Rob Herring
This is i.MX BSP 5.0.0 release ported to 2.6.31 Signed-off-by: Rob Herring <r.herring@freescale.com> Signed-off-by: Alan Tull <r80115@freescale.com> Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2010-02-12enc28j60: enhancements for stmp3xxx boardsRob Herring
Get mac addr from otp bits Add suspend/resume Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-02-12cs8900: add support for i.MX platformsRob Herring
Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-02-12smsc911x: add imx cpld spi register accessRob Herring
Add custom register read/write functions. Some i.MX 3-stack boards have CPLD to do spi to parallel bus translation to talk to smsc911x. Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-02-12smsc911x: Add phy suspend and resumeRob Herring
Most of the smsc9xxx power consumption is in the phy, so we need to suspend the phy. Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-02-12fec: fix uninitialized rx buffer usageRob Herring
The fec driver was enabling receive buffer descriptor without allocating the buffers. Make sure the buffer descriptors are initialized to not start receiving packets. Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-02-12fec: Add RMII gasket supportRob Herring
New versions of FEC support reduced MII interface. Currently only MX25 supports this. Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-02-12FEC: Add LAN8700 phy supportRob Herring
Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-02-12fec: don't enable irqs in hard irq contextUwe Kleine-König
fec_enet_mii, fec_enet_rx and fec_enet_tx are both only called by fec_enet_interrupt in interrupt context. So they must not use spin_lock_irq/spin_unlock_irq. This fixes: WARNING: at kernel/lockdep.c:2140 trace_hardirqs_on_caller+0x130/0x194() ... Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Cc: Greg Ungerer <gerg@uclinux.org> Cc: Ben Hutchings <ben@decadent.org.uk> Cc: Patrick McHardy <kaber@trash.net> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: Matt Waddel <Matt.Waddel@freescale.com> Cc: netdev@vger.kernel.org Cc: Tim Sander <tim01@vlsi.informatik.tu-darmstadt.de> Acked-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2010-02-12fec: fix recursive locking of mii_lockUwe Kleine-König
mii_discover_phy is only called by fec_enet_mii (via mip->mii_func). So &fep->mii_lock is already held and mii_discover_phy must not call mii_queue which locks &fep->mii_lock, too. This was noticed by lockdep: ============================================= [ INFO: possible recursive locking detected ] 2.6.31-rc8-00038-g37d0892 #109 --------------------------------------------- swapper/1 is trying to acquire lock: (&fep->mii_lock){-.....}, at: [<c01569f8>] mii_queue+0x2c/0xcc but task is already holding lock: (&fep->mii_lock){-.....}, at: [<c0156328>] fec_enet_interrupt+0x78/0x460 other info that might help us debug this: 2 locks held by swapper/1: #0: (rtnl_mutex){+.+.+.}, at: [<c0183534>] rtnl_lock+0x18/0x20 #1: (&fep->mii_lock){-.....}, at: [<c0156328>] fec_enet_interrupt+0x78/0x460 stack backtrace: Backtrace: [<c00226fc>] (dump_backtrace+0x0/0x108) from [<c01eac14>] (dump_stack+0x18/0x1c) r6:c781d118 r5:c03e41d8 r4:00000001 [<c01eabfc>] (dump_stack+0x0/0x1c) from [<c005bae4>] (__lock_acquire+0x1a20/0x1a88) [<c005a0c4>] (__lock_acquire+0x0/0x1a88) from [<c005bbac>] (lock_acquire+0x60/0x74) [<c005bb4c>] (lock_acquire+0x0/0x74) from [<c01edda8>] (_spin_lock_irqsave+0x54/0x68) r7:60000093 r6:c01569f8 r5:c785e468 r4:00000000 [<c01edd54>] (_spin_lock_irqsave+0x0/0x68) from [<c01569f8>] (mii_queue+0x2c/0xcc) r7:c785e468 r6:c0156b24 r5:600a0000 r4:c785e000 [<c01569cc>] (mii_queue+0x0/0xcc) from [<c0156b78>] (mii_discover_phy+0x54/0xa8) r8:00000002 r7:00000032 r6:c785e000 r5:c785e360 r4:c785e000 [<c0156b24>] (mii_discover_phy+0x0/0xa8) from [<c0156354>] (fec_enet_interrupt+0xa4/0x460) r5:c785e360 r4:c077a170 [<c01562b0>] (fec_enet_interrupt+0x0/0x460) from [<c0066674>] (handle_IRQ_event+0x48/0x120) [<c006662c>] (handle_IRQ_event+0x0/0x120) from [<c0068438>] (handle_level_irq+0x94/0x11c) ... Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Cc: Greg Ungerer <gerg@uclinux.org> Cc: Ben Hutchings <ben@decadent.org.uk> Cc: Patrick McHardy <kaber@trash.net> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: Matt Waddel <Matt.Waddel@freescale.com> Cc: netdev@vger.kernel.org Cc: Tim Sander <tim01@vlsi.informatik.tu-darmstadt.de> Acked-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-09-06gianfar: Fix build.David S. Miller
Reported by Michael Guntsche <mike@it-loops.com> -------------------- Commit 38bddf04bcfe661fbdab94888c3b72c32f6873b3 gianfar: gfar_remove needs to call unregister_netdev() breaks the build of the gianfar driver because "dev" is undefined in this function. To quickly test rc9 I changed this to priv->ndev but I do not know if this is the correct one. -------------------- Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-30gianfar: gfar_remove needs to call unregister_netdev()Toru UCHIYAMA
This patch solves the problem that the Oops(BUG_ON) occurs by rmmod. # rmmod gianfar_driver ------------[ cut here ]------------ Kernel BUG at c01fec48 [verbose debug info unavailable] Oops: Exception in kernel mode, sig: 5 [#1] MPC837x MDS Modules linked in: gianfar_driver(-) usb_storage scsi_wait_scan NIP: c01fec48 LR: c01febf4 CTR: c01feba8 REGS: dec5bd60 TRAP: 0700 Tainted: G W (2.6.31-rc2) MSR: 00029032 <EE,ME,CE,IR,DR> CR: 22000424 XER: 20000000 TASK = dec4cac0[1135] 'rmmod' THREAD: dec5a000 GPR00: 00000002 dec5be10 dec4cac0 dfba1820 c035d444 c035d478 ffffffff 00000000 GPR08: 0000002b 00000001 dfba193c 00000001 22000424 10019b34 1ffcb000 00000000 GPR16: 10012008 00000000 bf82ebe0 100017ec bf82ebec bf82ebe8 bf82ebd0 00000880 GPR24: 00000000 bf82ebf0 c03532f0 c03532e4 c036b594 dfba183c dfba1800 dfba1820 NIP [c01fec48] free_netdev+0xa0/0xb8 LR [c01febf4] free_netdev+0x4c/0xb8 Call Trace: [dec5be10] [c01febf4] free_netdev+0x4c/0xb8 (unreliable) [dec5be30] [e105f290] gfar_remove+0x50/0x68 [gianfar_driver] [dec5be40] [c01ec534] of_platform_device_remove+0x30/0x44 [dec5be50] [c0181760] __device_release_driver+0x68/0xc8 [dec5be60] [c0181868] driver_detach+0xa8/0xac [dec5be80] [c0180814] bus_remove_driver+0x9c/0xd8 [dec5bea0] [c0181efc] driver_unregister+0x60/0x98 [dec5beb0] [c01ec650] of_unregister_driver+0x14/0x24 [dec5bec0] [e10631bc] gfar_exit+0x18/0x4bc [gianfar_driver] [dec5bed0] [c0047584] sys_delete_module+0x16c/0x228 [dec5bf40] [c00116bc] ret_from_syscall+0x0/0x38 --- Exception: c01 at 0xff3669c LR = 0x10000f34 Instruction dump: 409e0024 a07e00c0 7c63f050 4be74429 80010024 bba10014 38210020 7c0803a6 4e800020 68000003 3160ffff 7d2b0110 <0f090000> 38000004 387e01f0 901e01d4 ---[ end trace 8c595bcd37230a0f ]--- localhost kernel: ------------[ cut here ]------------ Signed-off-by: Toru UCHIYAMA uchiyama.toru@jp.fujitsu.com Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-28Merge branch 'master' of ↵David S. Miller
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
2009-08-28ipw2200: firmware DMA loading reworkZhu Yi
Bartlomiej Zolnierkiewicz reported an atomic order-6 allocation failure for ipw2200 firmware loading in kernel 2.6.30. High order allocation is likely to fail and should always be avoided. The patch fixes this problem by replacing the original order-6 pci_alloc_consistent() with an array of order-1 pages from a pci pool. This utilized the ipw2200 DMA command blocks (up to 64 slots). The maximum firmware size support remains the same (64*8K). This patch fixes bug http://bugzilla.kernel.org/show_bug.cgi?id=14016 Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Mel Gorman <mel@csn.ul.ie> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-08-26virtio: net refill on out-of-memoryRusty Russell
If we run out of memory, use keventd to fill the buffer. There's a report of this happening: "Page allocation failures in guest", Message-ID: <20090713115158.0a4892b0@mjolnir.ossman.eu> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-26smc91x: fix compilation on SMPAlexey Dobriyan
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-25irda/sa1100_ir: fix broken netdev_ops conversionAlexander Beregalov
This patch is based on commit d2f3ad4 (pxaficp-ir: remove incorrect net_device_ops). Do the same for sa1100_ir. Untested. Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-25irda/au1k_ir: fix broken netdev_ops conversionAlexander Beregalov
This patch is based on commit d2f3ad4 (pxaficp-ir: remove incorrect net_device_ops). Do the same for au1k_ir. Untested. Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-23smc91x: let smc91x work well under netpollDongdong Deng
The NETPOLL requires that interrupts remain disabled in its callbacks. Using *_irq_save()/irq_restore() to replace *_irq_disable()/irq_enable() functions in NETPOLL's callbacks of smc91x, so that it doesn't enable interrupts when already disabled, and kgdboe/netconsole would work properly over smc91x. Signed-off-by: Dongdong Deng <dongdong.deng@windriver.com> Acked-by: Nicolas Pitre <nico@cam.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-23pxaficp-ir: remove incorrect net_device_opsMarek Vasut
This patch fixes broken pxaficp-ir. The problem was in incorrect net_device_ops being specified which prevented the driver from operating. The symptoms were: - failing ifconfig for IrLAN, resulting in SIOCSIFFLAGS: Cannot assign requested address - irattach working for IrCOMM, but the port stayed disabled Moreover this patch corrects missing sysfs device link. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-23drivers/net: fixed drivers that support netpoll use ndo_start_xmit()Dongdong Deng
The NETPOLL API requires that interrupts remain disabled in netpoll_send_skb(). The use of "A functions set" in the NETPOLL API callbacks causes the interrupts to get enabled and can lead to kernel instability. The solution is to use "B functions set" to prevent the irqs from getting enabled while in netpoll_send_skb(). A functions set: local_irq_disable()/local_irq_enable() spin_lock_irq()/spin_unlock_irq() spin_trylock_irq()/spin_unlock_irq() B functions set: local_irq_save()/local_irq_restore() spin_lock_irqsave()/spin_unlock_irqrestore() spin_trylock_irqsave()/spin_unlock_irqrestore() Signed-off-by: Dongdong Deng <dongdong.deng@windriver.com> Acked-by: Matt Mackall <mpm@selenic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-23net: Fix Micrel KSZ8842 Kconfig descriptionAndreas Mohr
Signed-off-by: Andreas Mohr <andi@lisas.de> Acked-by: Richard Röjfors <richard.rojfors.ext@mocean-labs.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-23E100: fix interaction with swiotlb on X86.Krzysztof Hałasa
E100 places it's RX packet descriptors inside skb->data and uses them with bidirectional streaming DMA mapping. Data in descriptors is accessed simultaneously by the chip (writing status and size when a packet is received) and CPU (reading to check if the packet was received). This isn't a valid usage of PCI DMA API, which requires use of the coherent (consistent) memory for such purpose. Unfortunately e100 chips working in "simplified" RX mode have to store received data directly after the descriptor. Fixing the driver to conform to the API would require using unsupported "flexible" RX mode or receiving data into a coherent memory and using CPU to copy it to network buffers. This patch, while not yet making the driver conform to the PCI DMA API, allows it to work correctly on X86 with swiotlb (while not breaking other architectures). Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-21Merge branch 'master' of ↵David S. Miller
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
2009-08-21rtl8187: always set MSR_LINK_ENEDCA flag with RTL8187BHerton Ronaldo Krzesinski
RTL8187B always needs MSR_LINK_ENEDCA flag to be set even when it is in no link mode, otherwise it'll not be able to associate when this flag is not set after the change "mac80211: fix managed mode BSSID handling". By accident, setting BSSID of AP before association makes 8187B to successfuly associate even when ENEDCA flag isn't set, which was the case before the mac80211 change. But now the BSSID of AP we are trying to associate is only available after association is successful, and any attempt to associate without the needed flag doesn't work. Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br> Tested-by: Larry Finger <Larry.Finger@lwfinger.net> Acked-by: Hin-Tak Leung <htl10@users.sourceforge.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-08-20ibm_newemac: emac_close() needs to call netif_carrier_off()Petri Gynther
When ibm_newemac netdev instance is shutdown with "ifconfig down", the netdev interface does not go properly down. netif_carrier_ok() keeps returning TRUE even after "ifconfig down". The problem can be seen when ibm_newemac instances are slaves of a bonding interface. The bonding interface code uses netif_carrier_ok() to determine the link status of its slaves. When ibm_newemac slave is shutdown with "ifconfig down", the bonding interface won't detect any link status change because netif_carrier_ok() keeps returning TRUE. Signed-off-by: Petri Gynther <pgynther@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-19net: fix ks8851 build errorsRandy Dunlap
Fix build errors due to missing Kconfig select of CRC32: ks8851.c:(.text+0x7d2ee): undefined reference to `crc32_le' ks8851.c:(.text+0x7d2f5): undefined reference to `bitrev32' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-18net: Rename MAC platform driver for w90p910 platformWan ZongShun
Due to I modified the corresponding platform device name, so I make the patch to rename MAC platform driver for w90p910 platform. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>