summaryrefslogtreecommitdiff
path: root/drivers/net
AgeCommit message (Collapse)Author
2009-08-21tsec: Wait for auto-negotiation to complete without linkPeter Tyser
Previously, waiting for auto-negotiation would only occur if a valid link had been detected. Problems arose when attempting to use a tsec immediately after bootup but before link was achieved, eg: => dhcp Auto-neg error, defaulting to 10BT/HD eTSEC1: No link. Auto-neg error, defaulting to 10BT/HD eTSEC2: No link. => With this patch applied the same operation as above resulted in: => dhcp Waiting for PHY auto negotiation to complete. done Enet starting in 1000BT/FD Speed: 1000, full duplex Signed-off-by: Peter Tyser <ptyser@xes-inc.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-21arm: kirkwood: See to it that sent data is 8-byte alignedSimon Kagstrom
U-boot might use non-8-byte-aligned addresses for sending data, which the kwgbe_send doesn't accept (bootp does this for me). This patch copies the data to be sent to a malloced temporary buffer if it is non-aligned. Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-21Wait for the link to come up on kirkwood network initSimon Kagstrom
This patch makes the device wait for up to 5 seconds for the link to come up, similar to what many of the other network drivers do. This avoids confusing situations where, e.g., a tftp fails when initiated early after U-boot has started (before the link has come up). Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-21arm:kirkwood Define kirkwood phy address magic numberSimon Kagstrom
Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-21e1000: fix PCI memory addressingTimur Tabi
The Intel E1000 driver was making assumptions about the relationship between some virtual, physical, and PCI addresses. Also fix some bad usage of the DEBUGOUT macro Signed-off-by: Timur Tabi <timur@freescale.com> Acked-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-10net: kirkwood: updates: used eth_setenv_enetaddr apiPrafulla Wadaskar
eth_setenv_enetaddr is avaible by upper layer using this saves 204 bytes on total image size used Local OUI instead of Marvell OUI for random MAC address generation logic Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-10Fix E1000 build warning on AP1000 boardRoy Zang
Fix E1000 build warning on AP1000 board Fix the build warning on AP1000 board: e1000.c:131: warning: 'e1000_read_eeprom' used but never defined e1000.c:2012: warning: 'e1000_set_phy_mode' defined but not used Signed-off-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-10net: phy: bugfixes: mv88E61xx compiler warnings fixedPrafulla Wadaskar
1. mv88E61xx driver compiler warnings fixed 2. idstr if-else statements changed to switch() construct and added default case too. This fixed idstr may be uninitialized warning Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-10arm: A320: driver for FTMAC100 ethernet controllerPo-Yu Chuang
This patch adds an FTMAC100 ethernet driver for Faraday A320 evaluation board. Signed-off-by: Po-Yu Chuang <ratbert@faraday-tech.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-08-09Dual-license IBM code contributionsJosh Boyer
It was brought to our attention that U-Boot contains code derived from the IBM OpenBIOS source code originally provided with some of the older PowerPC 4xx development boards. As a result, the original license of this code has been carried in the various files for a number of years in the U-Boot project. IBM is dual-licensing the IBM code contributions already present in U-Boot under either the terms of the GNU General Public License version 2, or the original code license already present. Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2009-08-08Add Intel E1000 PCIE card supportRoy Zang
Based on Intel PRO/1000 Network Driver 7.3.20-k2 Add Intel E1000 PCIE card support. The following cards are added: INTEL_82571EB_COPPER INTEL_82571EB_FIBER, INTEL_82571EB_SERDES INTEL_82571EB_QUAD_COPPER INTEL_82571PT_QUAD_COPPER INTEL_82571EB_QUAD_FIBER INTEL_82571EB_QUAD_COPPER_LOWPROFILE INTEL_82571EB_SERDES_DUAL INTEL_82571EB_SERDES_QUAD INTEL_82572EI_COPPER INTEL_82572EI_FIBER INTEL_82572EI_SERDES INTEL_82572EI INTEL_82573E INTEL_82573E_IAMT INTEL_82573L INTEL_82546GB_QUAD_COPPER_KSP3 INTEL_80003ES2LAN_COPPER_DPT INTEL_80003ES2LAN_SERDES_DPT INTEL_80003ES2LAN_COPPER_SPT INTEL_80003ES2LAN_SERDES_SPT 82571EB_COPPER dual ports, 82572EI single port, 82572EI_COPPER single port PCIE cards and 82545EM_COPPER, 82541GI_LF pci cards are tested on both P2020 board and MPC8544DS board. Signed-off-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-29Update Freescale copyrights to remove "All Rights Reserved"Kumar Gala
"All Rights Reserved" conflicts with the GPL. Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
2009-07-23Coding Style cleanup; update CHANGELOG.Wolfgang Denk
Signed-off-by: Wolfgang Denk <wd@denx.de>
2009-07-23unify HOST_CFLAGS and HOSTCFLAGSMike Frysinger
The top build system sets up HOSTCFLAGS a bit and exports it, but other places use HOST_CFLAGS instead. Unify the two as HOSTCFLAGS so that the values stay in sync. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-22fec_mxc: driver for FEC ethernet controller on i.MX27Ilya Yanok
Signed-off-by: Ilya Yanok <yanok@emcraft.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22ppc4xx: Fixed compilation warning in 4xx_enet.cAlessio Centazzo
This patch fixes a compilation warning for some Ethernet PHY-less PPC4xx platforms (440SPE based ones) and a potential compilation error for 440SP platforms (use of undefined 'ethgroup' variable). In the original code and in case of 440SPE platforms, 'ethgroup' is initialized to -1 and never modified. Later in the function, within an #ifdef statement, an 'if statement' executes code only if 'ethgroup' is set to 4, therefore it is harmless to avoid executing the 'if statement' by removing the CONFIG_440SPE from the affected #ifdefs. In case of 440SP platforms with on-board Ethernet PHY, 'ethgroup' is undefined but used (there are not such platforms in the repository yet). All other architectures are not affected by this change. Signed-off-by: Alessio Centazzo acpatin@yahoo.com Acked-by: Stefan Roese <sr@denx.de> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22net: phy: bugfixes: mv88E61xx multichip addressing supportPrafulla Wadaskar
With these fixes, this driver works properly for multi chip addressging mode Bugfixes: 1. Build error fixed for function mv88e61xx_busychk_multic-fixed 2. PHY dev address error detection- fixed 3. wrong busy bit was refered in function mv88e61xx_busychk -fixed 4. invalid data read ptr was refered for RD_PHY in case of multichip addressing mode -fixed The Multichip Address mode is tested with RD6281A board having MV88E6165 switch on it Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22arm: Kirkwood: Check the error summary bit for error detectionSimon Kagstrom
The Marvell documentation for the 88f6281 states that the error coding is only valid if the error summary and last frame bits in the transmit descriptor status field are set. This patch adds checks for these for transmit (I would get transmit errors on bootp with the current check, which I believe are spurious). Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22arm: Kirkwood: Fix compiler optimization bug for kwgbe_sendSimon Kagstrom
kwgbe_send/recv both have loops waiting for the hardware to set a bit. GCC 4.3.3 cleverly optimizes the send case to ... a while(1); loop. This patch uses readl to force a read from device memory. Other volatile accesses have also been replaced with readl/writel where appropriate (as per suggestions on the U-boot mailing list). Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22MIIPHYBB: Return 0xFFFF if the PHY is not asserting TA.Richard Retanubun
This patch sets the returned value to 0xFFFF if the PHY does not exist and does not assert Transfer Acknowledge. A NULL check for the value pointer is also added for buffer overflow protection. Without this patch 'mii info' will show 'phantom' devices because the value will be not be initialized and return with some random value. Signed-off-by: Richard Retanubun <RichardRetanubun@RuggedCom.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22Convert SMC911X Ethernet driver to CONFIG_NET_MULTI APIBen Warren
All in-tree boards that use this controller have CONFIG_NET_MULTI added Also: - changed CONFIG_DRIVER_SMC911X* to CONFIG_SMC911X* - cleaned up line lengths - modified all boards that override weak function in this driver - added Signed-off-by: Ben Warren <biggerbadderben@gmail.com> Tested-by: Mike Frysinger <vapier@gentoo.org>
2009-07-22P2020RDB Added support of Vitesse PHYs VSC8641(RGMII) and VSC8221(SGMII)Poonam Aggrwal
These PHYs are on P2020RDB platform. Also revamped Freescale copyright message in drivers/net/tsec.c. Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22net: tsec - fix dereferencing type-punned pointer will break strict-aliasing ↵Kim Phillips
rules warning fix this gcc 4.4 warning: tsec.c: In function 'tsec_init': tsec.c:200: warning: dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22sh: sh_eth: Remove garbage from printfNobuhiro Iwamatsu
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> CC: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-22smc911x: add support for LAN9221Andreas Pretzsch
Signed-off-by: Andreas Pretzsch <apr@cn-eng.de> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-07-18stdio/device: rework function naming conventionJean-Christophe PLAGNIOL-VILLARD
So far the console API uses the following naming convention: ======Extract====== typedef struct device_t; int device_register (device_t * dev); int devices_init (void); int device_deregister(char *devname); struct list_head* device_get_list(void); device_t* device_get_by_name(char* name); device_t* device_clone(device_t *dev); ======= which is too generic and confusing. Instead of using device_XX and device_t we change this into stdio_XX and stdio_dev This will also allow to add later a generic device mechanism in order to have support for multiple devices and driver instances. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Edited commit message. Signed-off-by: Wolfgang Denk <wd@denx.de>
2009-07-12at91: Introduction of at91sam9g45 SOC.Sedji Gaouaou
AT91sam9g45 series is an ARM 926ej-s SOC family clocked at 400/133MHz. It embeds USB high speed host and device, LCD, DDR2 RAM, and a full set of peripherals. The first board that embeds at91sam9g45 chip is the AT91SAM9G45-EKES. On the board you can find 2 USART, USB high speed, a 480*272 LG lcd, ethernet, gpio/joystick/buttons. Signed-off-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
2009-07-06net: merge bugfix: Marvell Kirkwood gigabit ethernet driverPrafulla Wadaskar
This patch looks okay on u-boot-net.git/next branch but when it was merged to u-boot.git/master the last line is missing Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> Acked-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15Convert DM9000 driver for CONFIG_NET_MULTIRemy Bohmer
All drivers need to be converted to CONFIG_NET_MULTI. This patch converts the dm9000 driver. Signed-off-by: Thomas Smits <ts.smits@gmail.com> Signed-off-by: Remy Bohmer <linux@bohmer.net> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15net: Add Marvell Kirkwood gigabit ethernet driverPrafulla Wadaskar
This patch adds a egiga driver for the Marvell Kirkwood SoC's. Contributors: Yotam Admon <yotam@marvell.com> Michael Blostein <michaelbl@marvell.com Reviewed-by: Ronen Shitrit <rshitrit@marvell.com> Acked-by: Stefan Rose <sr@denx.de> Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15Subject: [PATCH] [repost] Standardize the use of MCFFEC_TOUT_LOOP as a ↵Richard Retanubun
udelay(1) loop counter. From 584b5fbd4abfc43f920cc1c329633e03816e28be Mon Sep 17 00:00:00 2001 From: Richard Retanubun <RichardRetanubun@RuggedCom.com> Date: Wed, 20 May 2009 18:26:01 -0400 Subject: [PATCH] Standardize the use of MCFFEC_TOUT_LOOP as a udelay(1) loop counter. Signed-off-by: Richard Retanubun <RichardRetanubun@RuggedCom.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15Remove support for non-CONFIG_NET_MULTI on PPC4xx EMACBen Warren
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15Switched davinci_emac Ethernet driver to use newer APIBen Warren
Added CONFIG_NET_MULTI to all Davinci boards Removed all calls to Davinci network driver from board code Added cpu_eth_init() to cpu/arm926ejs/cpu.c Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15Initial cleanup of Davinci Ethernet driverBen Warren
Removed pointless #ifdefs Moved functions around in file in preparation for switch to newer API Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15Moved Davinci Ethernet driver to drivers/netBen Warren
This driver has been renamed davinci_emac.c Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15Marvell MV88E61XX Switch Driver supportPrafulla Wadaskar
Chips supported:- 1. 88E6161 6 port gbe swtich with 5 integrated PHYs 2. 88E6165 6 port gbe swtich with 5 integrated PHYs 2. 88E6132 3 port gbe swtich with 2 integrated PHYs Platform specific configuration supported for:- default or router port vlan configuration led_init configuration mdip/n polarity reversal configuration Note: This driver is supported and tested against kirkwood egiga interface Contributors: Yotam Admon <yotam@marvell.com> Michael Blostein <michaelbl@marvell.com Reviewed by: Ronen Shitrit <rshitrit@marvell.com> Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-15tsec: Add support for BCM5482S PHYZach LeRoy
Signed-off-by: Zach LeRoy <zleroy@xes-inc.com> Acked-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-14Merge branch 'next' of ../masterWolfgang Denk
2009-06-14Revert "SMC911x driver fixed for NFS boot"Wolfgang Denk
This reverts commit ca9c8a1e10fac01e6a1129f82a7ce18bd818fa43, which causes compile warnings ("large integer implicitly truncated to unsigned type") on all systems that use this driver. The warning results from passing long constants (TX_CFG, RX_CFG) into smc911x_set_mac_csr() which is declared to accept "unsigned character" arguments only. Being close to a release, with nobody available to actually test the code or the suggested fixes, it seems better to revert the patch.
2009-06-12MPC512x: remove include/mpc512x.hWolfgang Denk
Move needed definitions (register descriptions etc.) from include/mpc512x.h into include/asm-ppc/immap_512x.h. Instead of using a #define'd register offset, use a function that provides the PATA controller's base address. All the rest of include/mpc512x.h are register offset definitions which can be eliminated by proper use of C structures. There are only a few register offsets remaining that are needed in cpu/mpc512x/start.S; for these we provide cpu/mpc512x/asm-offsets.h which is intended as a temporary workaround only. In a later patch this file will be removed, too, and then auto-generated from the respective C structs. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: John Rigby <jcrigby@gmail.com>
2009-06-12MPC512x FEC: get rid of duplicated struct ethernet_regsWolfgang Denk
Use existing struct fec512x instead. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: John Rigby <jcrigby@gmail.com> Acked-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-12MPC512x: use I/O accessors instead of pointer accessesWolfgang Denk
This commit changes the MPC512x code to use I/O accessor calls (i.e. out_*() and in_*()) instead of using deprecated pointer accesses. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: John Rigby <jcrigby@gmail.com>
2009-06-08ppc4xx/net: Fix MDIO clock setupFelix Radensky
This patch fixes MDIO clock setup in case when OPB frequency is 100MHz. Current code assumes that the value of sysinfo.freqOPB is 100000000 when OPB frequency is 100MHz. In reality it is 100000001. As a result MDIO clock is set to incorrect value, larger than 2.5MHz, thus violating the standard. This in not a problem on boards equipped with Marvell PHYs (e.g. Canyonlands), since those PHYs support MDIO clocks up to 8.3MHz, but can be a problem for other PHYs (e.g. Realtek ones). Signed-off-by: Felix Radensky <felix@embedded-sol.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-08rtl8169: fix PCI system memory addressYoshihiro Shimoda
When PCI device use system memory, some PCI host controller should be set physical memory address. Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-08SMC911x driver fixed for NFS bootManikandan Pillai
eth_halt() function in the smc911x drivers used to call the smc911x_reset() function. eth_halt() used to be called after tftp transfers. This used to put the ethernet chip in reset while the linux boots up resulting in the ethernet driver not coming up. NFS boot used to fail as a result. This patch calls smc911x_shutdown() instead of smc911x_reset(). Some comments received has also been fixed. Signed-off-by: Manikandan Pillai <mani.pillai@ti.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-08Add config option for disabling DM9000-SROM support.Remy Bohmer
Some boards do not have SROM support for the DM9000 network adapter. Instead of listing these board names in the driver code, make this option configurable from the board config file. It also removes a build warning for the at91sam9261ek board: 'dm9000x.c:545: warning: 'read_srom_word' defined but not used' And it repaires the trizepsiv board build which was broken around the same routines Signed-off-by: Remy Bohmer <linux@bohmer.net> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-06-07smc911x: write back the manually set MAC addressDaniel Mack
If the MAX address is given by the environment, write it back to the hardware. Signed-off-by: Daniel Mack <daniel@caiaq.de> Cc: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
2009-04-28dm9000 EEPROM reading bugfixDavid Brownell
Make the U-Boot dm9000 driver read addresses from EEPROM just like Linux does ... read six bytes, instead of reading twelve bytes and then discarding every other one. Using the right Ethernet address is a big win. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Acked-by: Ben Warren <biggerbadderben@gmail.com>
2009-04-28rtl8169: fix cache coherency problemYoshihiro Shimoda
Fix the problem that cannot access actual data when CPU data cache enabled. Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Tested-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> Acked-by: Ben Warren <biggerbadderben@gmail.com>
2009-04-04mpc52xx phy: initialize only when neededSascha Hauer
Do not initialize phy on startup, instead initialize it when we actually need it. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>