16 Jan, 2018
1 commit
-
Add a minimalistic Broadcom BCM53xx (roboswitch) switch driver similar
to the Marvell MV88E617x. This takes care of configuring the minimum
amount out of the switch hardware such that each user visible port
(configurable) and the CPU port can forward packets between each other
while preserving isolation with other ports.This is useful for e.g: the Lamobo R1 board featuring a Broadcom
BCM53125 switch.Reviewed-by: Stefan Roese
Signed-off-by: Florian Fainelli
17 Nov, 2017
1 commit
-
The Amlogic Meson GXL/GXM families embeds an internal RMII Ethernet PHY.
The PHY acts as a generic PHY but needs a slight configuration right
before it's configuration.Signed-off-by: Neil Armstrong
08 Aug, 2017
1 commit
-
The KS8721BL and KSZ9021 PHYs are software-incompatible, yet they
share the same ID. Drivers for bothe PHYs cannot safely coexist, so
the solution was to use #ifdefs to select between the two drivers.As a result KSZ9031, which has a unique ID, is now caught in the
crossfire. Unless CONFIG_PHY_MICREL_KSZ9031 is defined, the KSZ9031
will not function properly, as some essential configuration code is
ifdef'd-out.To prevent such situations, move the KSZ9000 drivers to a separate
file, and place them under a separate Kconfig option. While it is
possible to enable both KSZ8000 and KSZ9000 drivers at the same time,
the assumption is that it is highly unlikely for a system to contain
both a KSZ8000 and a KSZ9000 PHY, and that only one of the drivers
will be enabled at any given time.Signed-off-by: Alexandru Gagniuc
Reviewed-by: Philipp Tomsich
Acked-by: Joe Hershberger
04 Apr, 2017
1 commit
-
This includes Marvell mvpp2 patches with the ethernet support for the
ARMv8 Armada 7k/8k platforms. The ethernet patches are all acked by Joe
and he is okay with me pushing them via the Marvell tree.
29 Mar, 2017
1 commit
-
This patch adds the new PHY interface modes XAUI, RXAUI and SFI that will
be used by the PPv2.2 support in the Marvell mvpp2 ethernet driver.Signed-off-by: Stefan Roese
Cc: Stefan Chulski
Cc: Kostya Porotchkin
Cc: Nadav Haklai
Acked-by: Joe Hershberger
26 Mar, 2017
1 commit
-
This patch adds support for having a "fixed-link" to some other MAC
(like some embedded switch-device).For this purpose we introduce a new phy-driver, called "Fixed PHY".
Fixed PHY works only with CONFIG_DM_ETH enabled, since the fixed-link is
described with a subnode below ethernet interface.Most ethernet drivers (unfortunately not all are following same scheme
for searching/attaching phys) are calling "phy_connect(...)" for getting
a phy-device.
At this point we link in, we search here for a subnode called "fixed-
link", once found we start phy_device_create(...) with the special phy-
id PHY_FIXED_ID (0xa5a55a5a).During init the "Fixed PHY" driver has registered with this id and now
gets probed, during probe we get all the details about fixed-link out of
dts, later on the phy reports this values.Signed-off-by: Hannes Schmelzer
Signed-off-by: Hannes Schmelzer
Acked-by: Joe Hershberger
Reviewed-by: Christian Gmeiner
09 Feb, 2017
1 commit
-
Signed-off-by: John Haechten
Acked-by: Joe Hershberger
25 May, 2016
3 commits
-
Add a helper to phy.h to identify whether the
phy is configured for SGMII all variables.Signed-off-by: Dan Murphy
Reviewed-by: Mugunthan V N
Reviewed-by: Michal Simek
Tested-by: Mugunthan V N
Acked-by: Joe Hershberger -
Move the phy_interface_is_rgmii to the phy.h
file for all phy's to be able to use the API.This now aligns with the Linux kernel based on
commit e463d88c36d42211aa72ed76d32fb8bf37820ef1Signed-off-by: Dan Murphy
Reviewed-by: Mugunthan V N
Reviewed-by: Michal Simek
Tested-by: Mugunthan V N
Acked-by: Joe Hershberger -
The previous mv88e61xx driver was a driver for configuring the
switch, but did not integrate with the PHY/networking system, so
it could not be used as a PHY by U-boot. This is a complete
rework to support this device as a PHY.Signed-off-by: Kevin Smith
Acked-by: Prafulla Wadaskar
Cc: Albert ARIBAUD
Cc: Joe Hershberger
Cc: Stefan Roese
Cc: Marek Vasut
Acked-by: Joe Hershberger
05 Apr, 2016
1 commit
-
Add phy driver support for xilinx PCS/PMA core
Signed-off-by: Siva Durga Prasad Paladugu
Signed-off-by: Kedareswara rao Appana
Signed-off-by: Michal Simek
29 Jan, 2016
3 commits
-
Current driver always performs a phy soft reset when connecting the phy
device, but soft reset is not always supported by a phy device, so
introduce a quirk PHY_FLAG_BROKEN_RESET to let such a phy device to skip
soft reset. This commit uses 'flags' of phy device structure to store the
quirk.Signed-off-by: Shaohui Xie
Acked-by: Joe Hershberger -
This new function will allow MAC drivers to override supported
capabilities of the phy. It is required when MAC cannot handle all
speeds supported by phy.For example phy supports up-to 1Gb connections while MAC may only work
in modes up to 100 or even 10 Mbit/sec.Signed-off-by: Alexey Brodkin
Cc: Joe Hershberger
Acked-by: Joe Hershberger -
Breakdown the PHY_*_FEATURES into per speed defines such that we can
easily re-use them individually.Signed-off-by: Florian Fainelli
Signed-off-by: Alexey Brodkin
Cc: Joe Hershberger
Acked-by: Joe Hershberger
19 Nov, 2015
1 commit
-
Code is taken from Linux kernel driver (v4.2).
Signed-off-by: Edgar E. Iglesias
Signed-off-by: Michal Simek
Reviewed-by: Tom Rini
Acked-by: Joe Hershberger
21 Apr, 2015
1 commit
-
commit 3c6928fd7b0f84 "net: phy: fix warnings with W=1" caused
some PHYs(e.g. CS4315/CS4340) not working. This patch fixes the
warning and make those special PHYs working as well.Signed-off-by: Shengzhou Liu
19 Apr, 2015
1 commit
-
When driver model is used for Ethernet a few functions are passed a udevice
instead of an eth_device. Also add a function to find a PHY type given its
name. This will be used to decode the device tree node.Finally, put a phy_interface field in struct eth_pdata since this is an
important part of the platform data for Ethernet.Signed-off-by: Simon Glass
Acked-by: Joe Hershberger
17 Jan, 2015
1 commit
-
This patch supports AQ1202, AQ2104, AQR105 PHY.
Signed-off-by: Shaohui Xie
Acked-by: Joe Hershberger
Reviewed-by: York Sun
06 Dec, 2014
1 commit
-
Add support for Cortina CS4315/CS4340 10G PHY.
- This driver loads CS43xx firmware from NOR/NAND/SPI/SD device
to initialize Cortina PHY.
- Cortina PHY has non-standard offset of PHY ID registers, thus
we define own get_phy_id() to override default get_phy_id().
- To define macro CONFIG_PHY_CORTINA will enable this driver.Signed-off-by: Shengzhou Liu
Reviewed-by: York Sun
20 Nov, 2014
1 commit
-
As auto-negotiation is not supported for 2.5G SGMII, we need
to add a new type PHY_INTERFACE_MODE_SGMII_2500 to differentiate
SGMII-1G and SGMII-2.5G with different setting for auto-negotiation.Signed-off-by: Shaohui Xie
Signed-off-by: Shengzhou Liu
Reviewed-by: York Sun
23 Oct, 2014
1 commit
-
The Marvell MV78460 eval board DB-78460-BP seems to need a longer
PHY autonegotiation timeout than the "standard" 4 seconds. So lets
make this timeout configurable. If not defined in the board config
header the original 4000ms is used.Signed-off-by: Stefan Roese
Cc: Joe Hershberger
06 Aug, 2014
1 commit
-
Messages to afleming@freescale.com now bounce, and should be
directed to my personal address at afleming@gmail.comSigned-off-by: Andy Fleming
05 Mar, 2014
1 commit
-
Add a prototype for board_phy_config() to fix the following sparse warning:
wandboard.c:200:5: warning: symbol 'board_phy_config' was not declared. Should it be static?
Cc: Joe Hershberger
Signed-off-by: Fabio Estevam
02 Dec, 2013
1 commit
23 Nov, 2013
2 commits
-
Some phys (Micrel) has extended registers that must be
accessed in a special way. Add pointers to the phy driver
structure to allow to use these functions with mdio command.Signed-off-by: Stefano Babic
-
fixed-link is used in kernel for PHY-less MAC, so introduce this
structure that U-boot can use it to fixup dtb dynamically.Signed-off-by: Shaohui Xie
24 Jul, 2013
1 commit
-
Signed-off-by: Wolfgang Denk
[trini: Fixup common/cmd_io.c]
Signed-off-by: Tom Rini
25 Jun, 2013
1 commit
-
Signed-off-by: Yegor Yefremov
30 May, 2013
1 commit
-
Conflicts:
common/cmd_fpga.c
drivers/usb/host/ohci-at91.c
15 May, 2013
1 commit
-
The VSC8574 is a quad-port Gigabit Ethernet transceiver with four SerDes
interfaces for quad-port dual media capability. This driver supports SGMII
and QSGMII MAC mode. For now SGMII mode is tested.Signed-off-by: Roy Zang
Signed-off-by: Shaohui Xie
Signed-off-by: Andy Fleming
10 May, 2013
1 commit
-
Adds an ET1011C PHY driver which is derived from the
Linux kernel PHY driver (drivers/net/phy/et1011c.c)
from the v3.9-rc2 tag. Note that an errata workaround
config option is implemented to allow for TX_CLK to be
enabled even when gigabit mode is negotiated. This
workaround is used on the PG1.0 TI814X EVM.Signed-off-by: Matt Porter
Reviewed-by: Tom Rini
28 Jan, 2013
1 commit
-
It is useful to be able to try a range of
possible phy addresses to connect.Also, an ethernet device is not required
to use phy_find_by_mask leading to better
separation of mii vs ethernet, as suggested
by Andy Fleming.Signed-off-by: Troy Kisky
28 Feb, 2012
1 commit
-
Add the gigabit phy KSZ9021.
Also, add function ksz9021_phy_extended_write
/_read for access to the phys extended registers.
The environment variable "disable_giga"
can be used to disable 1000baseTx.Signed-off-by: Troy Kisky
Acked-by: Dirk Behme
05 Jan, 2012
1 commit
-
This trivial change removes a compilation warning:
----8
Cc: Nobuhiro Iwamatsu
Acked-by: Marek Vasut
21 Oct, 2011
1 commit
-
The work-around for P4080 erratum SERDES9 says that the SERDES receiver
lanes should be reset after the XAUI starts tranmitting alignment signals.Signed-off-by: Timur Tabi
Signed-off-by: Kumar Gala
21 Apr, 2011
2 commits
-
The tsec driver had a bunch of PHY drivers already written. This
converts them all into PHY Lib drivers, and serves as the first
set of PHY drivers for PHY Lib.While doing that, cleaned up a number of magic numbers (though
not all of them, as PHY vendors like to keep their numbers as
magical as possible). Also, noticed that almost all of the
vitesse/cicada PHYs had the same config/parse/startup functions,
so those have been collapsed into one.Signed-off-by: Andy Fleming
Signed-off-by: Kumar Gala
Acked-by: Detlev Zundel -
Extends the mii_dev structure to participate in a full-blown MDIO and
PHY driver scheme. The mii_dev structure and miiphy calls are modified
in such a way to allow the original mii command and miiphy
infrastructure to work as before, but also to support a new set of APIs
which allow (among other things) sharing of PHY driver code and 10G supportThe mii command will continue to support normal PHY management functions
(Clause 22 of 802.3), but will not be changed to support 10G
(Clause 45).The basic design is similar to PHY Lib from Linux, but simplified for
U-Boot's network and driver infrastructure.We now have MDIO drivers and PHY drivers
An MDIO driver provides:
read
write
resetA PHY driver provides:
(optionally): probe
config - initial setup, starting of auto-negotiation
startup - waiting for AN, and reading link state
shutdown - any cleanup neededThe ethernet drivers interact with the PHY Lib using these functions:
phy_connect()
phy_config()
phy_startup()
phy_shutdown()Each PHY driver can be configured separately, or all at once using
config_phylib_all_drivers.h (added in the patch which adds the drivers)We also provide generic drivers for Clause 22 (10/100/1000), and
Clause 45 (10G) PHYs.We also implement phy_reset(), and call it in phy_connect(). Because
phy_reset() is essentially the same as miiphy_reset, but:
a) must support 10G PHYs, and
b) should use the phylib primitives,we implement miiphy_reset, using phy_reset(), but only when
CONFIG_PHYLIB is set. Otherwise, we just use the old version. In this
way, we save on compile size, even if we don't manage to save code size.Pulled ethtool.h and mdio.h from:
git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
782d640afd15af7a1faf01cfe566ca4ac511319d
With many, many deletions so as to enable compilation under u-bootSigned-off-by: Andy Fleming
Signed-off-by: Kumar Gala
Acked-by: Detlev Zundel