| #
cf51737f |
| 27-May-2025 |
David Wu <david.wu@rock-chips.com> |
net: phy: Add rockchip fephy support
Signed-off-by: David Wu <david.wu@rock-chips.com> Change-Id: I06d51e841ded6fcf1f0741e570b6acb226339c28
|
| #
bf9a0f37 |
| 02-Mar-2022 |
David Wu <david.wu@rock-chips.com> |
net: phy: Add rk630 phy support
Change-Id: Idae9d4f8948281267758f01a020a7a07099dc827 Signed-off-by: David Wu <david.wu@rock-chips.com>
|
| #
7965f3d3 |
| 08-Feb-2019 |
Carlo Caione <ccaione@baylibre.com> |
UPSTREAM: net: phy: Add generic helpers to access MMD PHY registers
Two new helper functions (phy_read_mmd() and phy_write_mmd()) are added to allow access to the MMD PHY registers.
The MMD PHY reg
UPSTREAM: net: phy: Add generic helpers to access MMD PHY registers
Two new helper functions (phy_read_mmd() and phy_write_mmd()) are added to allow access to the MMD PHY registers.
The MMD PHY registers can be accessed by several means:
1. Using two new MMD access function hooks in the PHY driver. These functions can be implemented when the PHY driver does not support the standard IEEE Compatible clause 45 access mechanism described in clause 22 or if the PHY uses its own non-standard access mechanism.
2. Direct access for C45 PHYs and C22 PHYs when accessing the reachable DEVADs.
3. The standard clause 45 access extensions to the MMD registers through the indirection registers (clause 22) in all the other cases.
Signed-off-by: Carlo Caione <ccaione@baylibre.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: David Wu <david.wu@rock-chips.com> Change-Id: I53a73274b6386f8a510b590a0f7ce1923f7b5528
show more ...
|
| #
5b8d1209 |
| 16-Nov-2018 |
Pankaj Bansal <pankaj.bansal@nxp.com> |
UPSTREAM: net: phy: Add clause 45 identifier to phy_device
The phy devices can be accessed via clause 22 or via clause 45. This information can be deduced when we read phy id. if the phy id is read
UPSTREAM: net: phy: Add clause 45 identifier to phy_device
The phy devices can be accessed via clause 22 or via clause 45. This information can be deduced when we read phy id. if the phy id is read without giving any MDIO Manageable Device Address (MMD), then it conforms to clause 22. otherwise it conforms to clause 45.
Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: David Wu <david.wu@rock-chips.com> Change-Id: Iae1c8e2414b655639c42f7098a097c6a0a1e5792
show more ...
|
| #
7ef89642 |
| 05-Jul-2018 |
Grygorii Strashko <grygorii.strashko@ti.com> |
UPSTREAM: net: phy: add ofnode node to struct phy_device
Now the UCLASS_ETH device "node" field is owerwritten by some network drivers in case of Ethernet PHYs which are linked to UCLASS_ETH device
UPSTREAM: net: phy: add ofnode node to struct phy_device
Now the UCLASS_ETH device "node" field is owerwritten by some network drivers in case of Ethernet PHYs which are linked to UCLASS_ETH device using "phy-handle" DT property and when Ethernet PHY driver needs to read some additional information from DT. In such cases following happens (in general):
- network drivers priv->phydev = phy_connect(priv->bus, priv->phyaddr, dev, priv->interface); <-- phydev is connected to dev which is UCLASS_ETH device
if (priv->phy_of_handle > 0) dev_set_of_offset(priv->phydev->dev, priv->phy_of_handle); <-- phydev->dev->node is overwritten by phy-handle DT node
- PHY driver in .config() callback int node = dev_of_offset(dev); <-- PHY driver uses overwritten dev->node const void *fdt = gd->fdt_blob;
if (fdtdec_get_bool(fdt, node, "property")) ...
As result, UCLASS_ETH device can't be used any more for DT accessing.
This patch adds additional ofnode node field to struct phy_device which can be set explicitly by network drivers and used by PHY drivers, so overwriting can be avoided. Also add helper function phy_get_ofnode() which will check and return phy_device->node or dev_ofnode(phydev->dev) for backward compatibility with existing drivers.
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: David Wu <david.wu@rock-chips.com> Change-Id: I31fcf01cfb19894bc90d198d9138c1fd3e25802e
show more ...
|
| #
6e7adf70 |
| 07-Aug-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-net
|
| #
d397f7c4 |
| 07-Jul-2017 |
Alexandru Gagniuc <alex.g@adaptrum.com> |
net: phy: micrel: Separate KSZ9000 drivers from KSZ8000 drivers
The KS8721BL and KSZ9021 PHYs are software-incompatible, yet they share the same ID. Drivers for bothe PHYs cannot safely coexist, so
net: phy: micrel: Separate KSZ9000 drivers from KSZ8000 drivers
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 <alex.g@adaptrum.com> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| #
da409ccc |
| 17-May-2017 |
Simon Glass <sjg@chromium.org> |
dm: core: Replace of_offset with accessor (part 2)
At present devices use a simple integer offset to record the device tree node associated with the device. In preparation for supporting a live devi
dm: core: Replace of_offset with accessor (part 2)
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 <sjg@chromium.org>
show more ...
|
| #
db40c1aa |
| 23-Mar-2017 |
Hannes Schmelzer <hannes.schmelzer@br-automation.com> |
drivers/net/phy: add fixed-phy / fixed-link support
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-d
drivers/net/phy: add fixed-phy / fixed-link support
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 <hannes.schmelzer@br-automation.com>
Signed-off-by: Hannes Schmelzer <oe5hpm@oevsv.at> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
show more ...
|
| #
e1a71f8b |
| 09-Feb-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-net
|
| #
a5fd13ad |
| 09-Dec-2016 |
John Haechten <john.haechten@microsemi.com> |
net: phy: MSCC Add Support for VSC8530-VSC8531-VSC8540-VSC8541
Signed-off-by: John Haechten <john.haechten@microsemi.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
|
| #
dc557e9a |
| 18-Jun-2016 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
Signed-off-by: Stefano Babic <sbabic@denx.de>
|
| #
2ee490a0 |
| 24-May-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-net
Signed-off-by: Tom Rini <trini@konsulko.com>
Conflicts: drivers/net/zynq_gem.c
|
| #
24ae3961 |
| 31-Mar-2016 |
Kevin Smith <kevin.smith@elecsyscorp.com> |
net: phy: Add PHY driver for mv88e61xx switches
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 a
net: phy: Add PHY driver for mv88e61xx switches
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 <kevin.smith@elecsyscorp.com> Acked-by: Prafulla Wadaskar <prafulla@marvell.com> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Stefan Roese <sr@denx.de> Cc: Marek Vasut <marex@denx.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| #
ec8fb48c |
| 24-May-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://www.denx.de/git/u-boot-microblaze
|
| #
7a673f0b |
| 18-May-2016 |
Michal Simek <michal.simek@xilinx.com> |
phy: Wire return value from phy_config()
Fix zynq_gem driver to handle error from phy_config correctly.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
|
| #
b733c278 |
| 18-May-2016 |
Michal Simek <michal.simek@xilinx.com> |
net: phy: Handle phy_startup() error codes properly
Propagate error code from genphy_update_link() to phy startup().
Signed-off-by: Michal Simek <michal.simek@xilinx.com> Acked-by: Stephen Warren <
net: phy: Handle phy_startup() error codes properly
Propagate error code from genphy_update_link() to phy startup().
Signed-off-by: Michal Simek <michal.simek@xilinx.com> Acked-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
| #
ef5e821b |
| 18-May-2016 |
Michal Simek <michal.simek@xilinx.com> |
phy: Return correct error code when timeout happens
Return -ETIMEDOUT if timeout happens.
Signed-off-by: Michal Simek <michal.simek@xilinx.com> Acked-by: Stephen Warren <swarren@nvidia.com>
|
| #
4ed6ed3c |
| 04-Apr-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://www.denx.de/git/u-boot-microblaze
|
| #
ed6fad3e |
| 05-Feb-2016 |
Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> |
phy: Add phy driver support for xilinx PCS/PMA core
Add phy driver support for xilinx PCS/PMA core
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Kedareswara rao Appa
phy: Add phy driver support for xilinx PCS/PMA core
Add phy driver support for xilinx PCS/PMA core
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Kedareswara rao Appana <appanad@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
show more ...
|
| #
82d72a1b |
| 28-Jan-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-net
|
| #
ddcd1f30 |
| 28-Jan-2016 |
Shaohui Xie <Shaohui.Xie@nxp.com> |
net: phy: introduce a quirk PHY_FLAG_BROKEN_RESET
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
net: phy: introduce a quirk PHY_FLAG_BROKEN_RESET
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 <Shaohui.Xie@nxp.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| #
1f9e672c |
| 22-Jan-2016 |
Alexandre Messier <amessier@tycoint.com> |
net: phy: Use 'autoneg' flag from phydev
Use the 'autoneg' flag available in phydev when checking if autoneg is in use.
The previous implementation was checking directly in the PHY if autoneg was s
net: phy: Use 'autoneg' flag from phydev
Use the 'autoneg' flag available in phydev when checking if autoneg is in use.
The previous implementation was checking directly in the PHY if autoneg was supported. Some PHYs will report that autoneg is supported, even when it is disabled. Thus it is not possible to use that bit to determine if autoneg is currently in use or not.
Signed-off-by: Alexandre Messier <amessier@tycoint.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| #
53b0c38c |
| 22-Jan-2016 |
Alexandre Messier <amessier@tycoint.com> |
net: phy: Set ANRESTART in setup_forced
When configuring a PHY in fixed (forced) link mode, in order for the changes to be applied, either one of these conditions must be triggered: 1- PHY is reset
net: phy: Set ANRESTART in setup_forced
When configuring a PHY in fixed (forced) link mode, in order for the changes to be applied, either one of these conditions must be triggered: 1- PHY is reset 2- Autoneg is restarted 3- PHY transitions from power-down to power-up
Neither of these is currently done, so effectively the fixed link configuration is not applied in the PHY.
Fix this by setting the Autoneg restart bit.
Signed-off-by: Alexandre Messier <amessier@tycoint.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| #
b18acb0a |
| 13-Jan-2016 |
Alexey Brodkin <Alexey.Brodkin@synopsys.com> |
drivers/net/phy: introduce phy_set_supported()
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 p
drivers/net/phy: introduce phy_set_supported()
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 <abrodkin@synopsys.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|