summaryrefslogtreecommitdiff
path: root/drivers/net/macb.c
AgeCommit message (Collapse)Author
2017-05-09net: macb: Align the compatibles with kernelWenyou Yang
Add the compatibles to align with the kernel. Signed-off-by: Wenyou Yang <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2017-05-09net: macb: Add remove callbackWenyou Yang
To avoid the failure of mdio_register(), add the remove callback to unregister the mii_dev when removing the ethernet device. Signed-off-by: Wenyou Yang <[email protected]> Acked-by: Joe Hershberger <[email protected]> Fixed up unused variable warning, e.g. for gurnard: Signed-off-by: Simon Glass <[email protected]>
2017-03-01net: macb: Fix ETH not found when clock not supportWenyou Yang
For the boards such as smartweb on which the clock driver isn't supported, the ethernet fail to be found when booting up with the below log. ---8<--- Net: No ethernet found. --->8--- Signed-off-by: Wenyou Yang <[email protected]> Tested-by: Heiko Schocher <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2017-02-09Merge branch 'master' of git://git.denx.de/u-boot-netTom Rini
2017-02-08dm: core: Replace of_offset with accessorSimon Glass
At present devices use a simple integer offset to record the device tree node associated with the device. In preparation for supporting a live device tree, which uses a node pointer instead, refactor existing code to access this field through an inline function. Signed-off-by: Simon Glass <[email protected]>
2017-02-07net: macb: Remove redundant #ifdef CONFIG_DM_ETHWenyou Yang
Remove the redundant #ifdef CONFIG_DM_ETH/#endif. Signed-off-by: Wenyou Yang <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2017-02-07net: macb: Add the clock supportWenyou Yang
Due to introducing the at91 clock driver, add the clock support. Signed-off-by: Wenyou Yang <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2016-10-01net, macb: fix misaligned cache operation warningHeiko Schocher
when using tftp on the smartweb board, it prints a lot of CACHE: Misaligned operation at range [23b2e000, 23b2e100] warnings ... fixed them. Signed-off-by: Heiko Schocher <[email protected]>
2016-09-23treewide: replace #include <asm-generic/errno.h> with <linux/errno.h>Masahiro Yamada
Now, include/linux/errno.h is a wrapper of <asm-generic/errno.h>. Replace all include directives for <asm-generic/errno.h> with <linux/errno.h>. <asm-generic/...> is supposed to be included from <asm/...> when arch-headers fall back into generic implementation. Generally, they should not be directly included from .c files. Signed-off-by: Masahiro Yamada <[email protected]> [trini: Add drivers/usb/host/xhci-rockchip.c] Signed-off-by: Tom Rini <[email protected]>
2016-08-15net: mii: Use spatch to update miiphy_registerJoe Hershberger
Run scripts/coccinelle/net/mdio_register.cocci on the U-Boot code base. Signed-off-by: Joe Hershberger <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2016-08-15net: macb: Fix build error for CONFIG_DM_ETH enabledWenyou Yang
Use the right phy_connect() prototype for CONFIGF_DM_ETH. Support to get the phy interface from dt and set GMAC_UR. Signed-off-by: Wenyou Yang <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2016-06-12net: macb: Convert to driver modelSimon Glass
Add driver-model support to this driver. The old code remains for now so that we can convert boards one at a time. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Tested-on: smartweb, corvus, taurus, axm Tested-by: Heiko Schocher <[email protected]> Acked-by: Joe Hershberger <[email protected]> Reviewed-by: Andreas Bießmann <[email protected]>
2016-06-12net: macb: Flush correct cache portion when sendingSimon Glass
The end address of the cache flush must be cache-line-aligned since otherwise (at least on ARM926-EJS) the request is ignored. When the cache is enabled this means that packets are not sent. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Acked-by: Joe Hershberger <[email protected]> Reviewed-by: Andreas Bießmann <[email protected]>
2016-06-12net: macb: Prepare for driver-model conversionSimon Glass
Adjust this driver to avoid using struct netdev in functions that driver model will call. Also refactor the receive function to be compatible with driver model. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Tested-on: smartweb, corvus, taurus, axm Tested-by: Heiko Schocher <[email protected]> Reviewed-by: Joe Hershberger <[email protected]> Acked-by: Joe Hershberger <[email protected]> Reviewed-by: Andreas Bießmann <[email protected]>
2016-05-05Fix various typos, scattered over the code.Robert P. J. Day
Spelling corrections for (among other things): * environment * override * variable * ftd (should be "fdt", for flattened device tree) * embedded * FTDI * emulation * controller
2016-01-27net: macb: Not all the GEM are gigabit capableGregory CLEMENT
During the initialization of PHY the gigabit bit capable is set if the controller is a GEM. However, for sama5d2 and sama5d4, the GEM is configured to support only 10/100. Improperly setting the GBE capability leads to an unresponsive MAC controller. This patch fixes this behavior allowing using the gmac with these SoCs. Suggested-by: Nicolas Ferre <[email protected]> Signed-off-by: Gregory CLEMENT <[email protected]> Acked-by: Nicolas Ferre <[email protected]> Acked-by: Joe Hershberger <[email protected]> Reviewed-by: Andreas Bießmann <[email protected]> [fixed minor checkpatch warning] Signed-off-by: Andreas Bießmann <[email protected]>
2015-08-11net: macb: add gmac multi-queue supportWu, Josh
This patch refer to linux kernel commit: d8b763e1e79f net/macb: add TX multiqueue support for gem by: Cyrille Pitchen 1. macb driver will check the register to find how many queues support for this chip. 2. Then as we only use queue0 for tx, so we will set up all other queues use a dummy descriptor, which USED bit is set. So those queues are not used. Signed-off-by: Josh Wu <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2015-05-19net: Update hardware MAC address if it changes in envJoe Hershberger
When the ethaddr changes in the env, the hardware should also be updated so that MAC filtering will work properly without resetting U-Boot. Also remove the manual calls to set the hwaddr that was included in a few drivers as a result of the framework not doing it. Reported-by: Michal Simek <[email protected]> Signed-off-by: Joe Hershberger <[email protected]> Tested-by: Michal Simek <[email protected]>
2015-04-18net: cosmetic: Fix var naming net <-> eth driversJoe Hershberger
Update the naming convention used in the network stack functions and variables that Ethernet drivers use to interact with it. This cleans up the temporary hacks that were added to this interface along with the DM support. This patch has a few remaining checkpatch.pl failures that would be out of the scope of this patch to fix (drivers that are in gross violation of checkpatch.pl). Signed-off-by: Joe Hershberger <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-04-18net: cosmetic: Name ethaddr variables consistentlyJoe Hershberger
Use "_ethaddr" at the end of variables and drop CamelCase. Make constant values actually 'const'. Signed-off-by: Joe Hershberger <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-03-18Net: macb: reset GBE bit when fallback checkingBo Shen
If the GBE bit is set, when do next time autonegotiation, if the result is not 1000Mbps, it will fallback to 100Mbps checking. So, we need to clear the GBE bit. Signed-off-by: Bo Shen <[email protected]>
2014-11-17net: macb: enable GMAC IP without GE feature supportBo Shen
The User Register in GMAC IP is used to select interface type. When with GE feature, it is used to select interface between RGMII and GMII. If without GE feature, it is used to select interface between MII and RMII. Signed-off-by: Bo Shen <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2014-11-17net: macb: write mac address when initializationBo Shen
When boot up without mac address setting, it will give the warning message like: "Warning: failed to set MAC address", however when execute network related command, it still execute them without any warning information. With this patch, it will exit directly with following information: "gmac0: mac address is not valid" It also solve the problem after bootup then set mac address and the mac address won't set to net device issue. Signed-off-by: Bo Shen <[email protected]> Tested-by: Boris Brezillon <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2014-10-10macb: simplify gmac initialisationAndreas Bießmann
Signed-off-by: Andreas Bießmann <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Bo Shen <[email protected]>
2014-06-14net: macb: enable dcache in macbWu, Josh
Add to code to flush the dcache after we writing in DMA buffer. Also we need invalidate the dcache before we check the status in the DMA buffer. Tested in SAMA5D3x-EK with gmac0. Tftp download speed shows in below: Disable DCache: 1.1 MiB/s Enable DCache: 1.6 MiB/s Increase speed with about 40%. The code should have no impact with the boards which are not enable_dcache(). Tested in AT91SAM9M10G45EK. Signed-off-by: Josh Wu <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2014-06-14macb: make checkpatch cleanAndreas Bießmann
This also renames the CONFIG_SYS_MACB_xx defines. They are used just local and therefore don't need the CONFIG_SYS_ prefix. Signed-off-by: Andreas Bießmann <[email protected]> Reviewed-by: Josh Wu <[email protected]>
2013-11-04net: macb: get DMA bus width from design config registerBo Shen
Get DMA bus width from design config register Signed-off-by: Bo Shen <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2013-08-22net: macb: fix the following building warningBo Shen
fix the following building warning ---8>--- macb.c: In function 'macb_init': macb.c:400:14: warning: 'phydev' may be used uninitialized in this function macb.c:377:21: note: 'phydev' was declared here ---<8--- Signed-off-by: Bo Shen <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2013-07-24Add GPL-2.0+ SPDX-License-Identifier to source filesWolfgang Denk
Signed-off-by: Wolfgang Denk <[email protected]> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <[email protected]>
2013-06-24net: macb: add support for gigabit MACBo Shen
Add gigabit MAC support in macb driver - using IP version to distinguish whether MAC is GMAC Signed-off-by: Bo Shen <[email protected]>
2013-06-24net: macb: using phylib to configure phy deviceBo Shen
using phylib to configure phy device in macb driver Signed-off-by: Bo Shen <[email protected]>
2013-06-24net: macb: using AT91FAMILY replace #ifdeferryBo Shen
Using CONFIG_AT91FAMILY replace #ifdeferry for atmel SoC Signed-off-by: Bo Shen <[email protected]> Acked-by: Andreas Bießmann <[email protected]>
2013-06-24net: Fix build regression in macb.cJoe Hershberger
The added weak symbol must not be static. This was introduced in 416ce623fbad51af57660346ebb6f7befb88b3c9 Signed-off-by: Joe Hershberger <[email protected]>
2013-06-24net/macb: Add arch specific routine to get mdio controlShiraz Hashim
SPEAr310 and SPEAr320 Ethernet interfaces share same MDIO lines to control their respective phys. Currently there is a fixed configuration in which only a particular MAC can use the MDIO lines. Call an arch specific function to take control of specific mdio lines at runtime. Signed-off-by: Shiraz Hashim <[email protected]> Signed-off-by: Vipin Kumar <[email protected]> Acked-by: Stefan Roese <[email protected]>
2012-11-04include/linux/byteorder: import latest endian definitions from linuxKim Phillips
u-boot's byteorder headers did not contain endianness attributions for use with sparse, causing a lot of false positives. Import the kernel's latest definitions, and enable them by including compiler.h and types.h. They come with 'const' added for some swab functions, so fix those up, too: include/linux/byteorder/big_endian.h:46:2: warning: passing argument 1 of '__swab64p' discards 'const' qualifier from pointer target type [enabled by default] Also, note: u-boot's historic __BYTE_ORDER definition has been preserved (for the time being at least). We also remove ad-hoc barrier() definitions, since we're including compiler.h in files that hadn't in the past: macb.c:54:0: warning: "barrier" redefined [enabled by default] In addition, including compiler.h in byteorder changes the 'noinline' definition to expand to __attribute__((noinline)). This fixes arch/powerpc/lib/bootm.c: bootm.c:329:16: error: attribute '__attribute__': unknown attribute bootm.c:329:16: error: expected ')' before '__attribute__' bootm.c:329:25: error: expected identifier or '(' before ')' token powerpc sparse builds yield: include/common.h:356:22: error: marked inline, but without a definition the unknown-reason inlining without a definition is considered obsolete given it was part of the 2002 initial commit, and no arm version was 'fixed.' also fixed: ydirectenv.h:60:0: warning: "inline" redefined [enabled by default] and: Configuring for devconcenter - Board: intip, Options: DEVCONCENTER make[1]: *** [4xx_ibm_ddr2_autocalib.o] Error 1 make: *** [arch/powerpc/cpu/ppc4xx/libppc4xx.o] Error 2 powerpc-fsl-linux-size: './u-boot': No such file 4xx_ibm_ddr2_autocalib.c: In function 'DQS_autocalibration': include/asm/ppc4xx-sdram.h:1407:13: sorry, unimplemented: inlining failed in call to 'ppc4xx_ibm_ddr2_register_dump': function body not available 4xx_ibm_ddr2_autocalib.c:1243:32: sorry, unimplemented: called from here and: In file included from crc32.c:50:0: crc32table.h:4:1: warning: implicit declaration of function '___constant_swab32' [-Wimplicit-function-declaration] crc32table.h:4:1: error: initializer element is not constant crc32table.h:4:1: error: (near initialization for 'crc32table_le[0]') Signed-off-by: Kim Phillips <[email protected]> [trini: Remove '#endif' in include/common.h around setenv portion] Signed-off-by: Tom Rini <[email protected]>
2012-09-04Merge branch 'master' of git://git.denx.de/u-boot-avr32Wolfgang Denk
* 'master' of git://git.denx.de/u-boot-avr32: net:macb: add line break avr32:portmux: fix setup for macb1 avr32: Remove redundant LDSCRIPT definition Signed-off-by: Wolfgang Denk <[email protected]>
2012-09-03net:macb: add line breakAndreas Bießmann
Without this patch we see annoying output like this: ---8<--- U-Boot> dhcp macb1: PHY not foundmacb0: PHY present at 1 macb0: Starting autonegotiation... --->8--- Signed-off-by: Andreas Bießmann <[email protected]> cc: Joe Hershberger <[email protected]>
2012-09-01arm : Atmel : add at91sam9x5ek board supportBo Shen
Add at91sam9x5ek board support, this board support the following SoCs AT91SAM9G15, AT91SAM9G25, AT91SAM9G35, AT91SAM9X25, AT91SAM9X35 Using at91sam9x5ek_nandflash to configure for the board Now only supports NAND with software ECC boot up Signed-off-by: Bo Shen <[email protected]> [move MAINTAINERS entry to right place] Signed-off-by: Andreas Bießmann <[email protected]>
2012-05-22drivers/net/macb.c: Fix compile warningJoe Hershberger
Fix this: macb.c: In function 'macb_eth_initialize': macb.c:564:15: warning: assignment from incompatible pointer type Signed-off-by: Joe Hershberger <[email protected]> Cc: Joe Hershberger <[email protected]>
2011-06-21macb: fix compile warning[email protected]
This patch fixes following compile warning: ---8<--- macb.c: In function 'macb_write_hwaddr': macb.c:525:2: warning: dereferencing type-punned pointer will break strict-aliasing rules --->8--- Signed-off-by: Andreas Bießmann <[email protected]>
2011-05-18ATMEL: fix related common atmel driver filesReinhard Meyer
Signed-off-by: Reinhard Meyer <[email protected]>
2010-08-09miiphy: constify device nameMike Frysinger
The driver name does not need to be writable, so constify it. Signed-off-by: Mike Frysinger <[email protected]> Signed-off-by: Ben Warren <[email protected]>
2010-07-12Write MAC address automatically on MACB-based boardsBen Warren
Also, remove all calls to eth_init() in boards that use MACB Signed-off-by: Ben Warren <[email protected]>
2010-01-31macb: Fix mii_phy_read and mii_phy_write functionsSemih Hazar
Enabling CONFIG_CMD_MII in AVR32 boards was not possible due to compile errors. This patch fixes miiphy_read and miiphy_write functions and registers them properly. Signed-off-by: Semih Hazar <[email protected]> Signed-off-by: Ben Warren <[email protected]>
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 <[email protected]>
2009-03-22at91: Support for the at91sam9g20 : Atmel 400Mhz ARM 926ej-s SOC.Nicolas Ferre
AT91sam9g20 is an evolution of the at91sam9260 with a faster clock speed. The AT91SAM9G20-EK board is an updated revision of the AT91SAM9260-EK board. It is essentially the same, with a few minor differences. Here is the chip page on Atmel website: http://www.atmel.com/dyn/products/product_card.asp?part_id=4337 Signed-off-by: Justin Waters <[email protected]> Signed-off-by: Nicolas Ferre <[email protected]> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
2009-01-28AVR32: macb - Search for PHY idGunnar Rangoy
This patch adds support for searching through available PHY-addresses in the macb-driver. This is needed for the ATEVK1100 evaluation board, where the PHY-address will be initialized to either 1 or 7. This patch adds a config option, CONFIG_MACB_SEARCH_PHY, which when enabled tells the driver to search for the PHY address. Signed-off-by: Gunnar Rangoy <[email protected]> Signed-off-by: Paul Driveklepp <[email protected]> Signed-off-by: Olav Morken <[email protected]> Signed-off-by: Ben Warren <[email protected]>
2008-10-18rename CFG_ macros to CONFIG_SYSJean-Christophe PLAGNIOL-VILLARD
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
2008-09-02Introduce netdev.h header file and remove externsBen Warren
This addresses all drivers whose initializers have already been moved to board_eth_init()/cpu_eth_init(). Signed-off-by: Ben Warren <[email protected]>
2008-06-09net: Conditional COBJS inclusion of network driversShinya Kuribayashi
Replace COBJS-y with appropriate driver config names. Signed-off-by: Shinya Kuribayashi <[email protected]> Signed-off-by: Ben Warren <[email protected]>