summaryrefslogtreecommitdiff
path: root/drivers/net/phy
AgeCommit message (Collapse)Author
2014-08-21drivers: net: remove dead driversMasahiro Yamada
The following configs are not defined at all: - CONFIG_INCA_IP_SWITCH - CONFIG_PBL2800_ETHER - CONFIG_PHY_ICPLUS Signed-off-by: Masahiro Yamada <[email protected]>
2014-08-09vitesse: remove duplicated argument to ||[email protected]
Remove the duplicated argument to || check Signed-off-by: Maxin B. John <[email protected]>
2014-06-05phy: fix create_phy_by_mask for when its given an actual search maskCormier, Jonathan
get_phy_id returns -EIO when it can't read from a phy at a given addr. This would cause create_phy_by_mask to return prematurely before it had tested the other addresses in the provided mask. Example usage: Replace phydev = phy_connect(bus, phy_addr, dev, phy_if) with phydev = phy_find_by_mask(bus, phy_mask, phy_if) if (phydev) phy_connect_dev(phydev, dev); Signed-off-by: Cormier, Jonathan <[email protected]> Cc: Joe Hershberger <[email protected]>
2014-05-16net: phy/vitesse: Add support for VSC8664 phy moduleChunhe Lan
This patch adds support for VSC8664 PHY module which can be found on Freescale's T4240RDB boards. Signed-off-by: Chunhe Lan <[email protected]> Reviewed-by: York Sun <[email protected]>
2014-05-12net/phy: enable get_phy_id redefinableShengzhou Liu
As some PHYs have non-standard PHY ID registers, PHY Id can't be read correctly by current get_phy_id function, so we enable get_phy_id redefinable to permit specific PHY driver having own specific get_phy_id function. Signed-off-by: Shengzhou Liu <[email protected]>
2014-05-12AR8035/phy: Enable autonegotiation function for ar8035Xiaobo Xie
Function "genphy_parse_link()" used "if (mii_reg & BMSR_ANEGCAPABLE)" before, but used "if (phydev->supported & SUPPORTED_Autoneg)" now. So assign "phydev->supported" to "phydev->drv->features" for ar8035 to enable autonegotiation. Then removed the genphy_config_aneg() function. Signed-off-by: Xie Xiaobo <[email protected]>
2014-04-22ar8031: modify the config func of ar8031 to ar8021_configZhao Qiang
ar8031 has the same config steps with ar8021, so change its config func to ar8021_config instead of genphy_config. Signed-off-by: Zhao Qiang <[email protected]> Reviewed-by: York Sun <[email protected]>
2014-04-22net/phy: Fix PHY id for VSC8514Codrin Ciubotariu
In the current Datasheet for VSC8514 there is a mistake, saying that the PHY id is 0x70570. The real value in the identifier registers is 0x70670. Linux PHY driver uses 0x70670 also. Signed-off-by: Codrin Ciubotariu <[email protected]> Cc: York Sun <[email protected]> Reviewed-by: York Sun <[email protected]>
2014-03-07net/phy: Correct AR8021 phy_maskHaijun.Zhang
There was wrong phy_mask for AR8021 device, so the AR8021 can't be probed correctly. Changed it from 0x4fffff to 0x4ffff0. Signed-off-by: Haijun Zhang <[email protected]>
2014-02-25Merge branch 'master' of git://git.denx.de/u-boot-mpc85xxTom Rini
With this, fixup a trivial build error of get_effective_memsize needing to be updated in the new board/freescale/p1010rdb/spl.c Signed-off-by: Tom Rini <[email protected]>
2014-02-24ar8031/8033/phy:enable autonegotiation for ar8031/8033Zhao Qiang
Function "genphy_parse_link()" used "if (mii_reg & BMSR_ANEGCAPABLE)" before while "if (phydev->supported & SUPPORTED_Autoneg)" now. So assign "phydev->supported" to "phydev->drv->features" for ar8031/8033 to enable autonegotiation. Signed-off-by: Zhao Qiang <[email protected]> Reviewed-by: York Sun <[email protected]>
2014-02-19net, phy: atheros ar803x bugHeiko Schocher
commit 626ee1e3 "phylib: update atheros ar803x phy" leads in failing ethernet on the pxm2 board. Calling genphy_config() instead of ar8021_config(), which seems for ar8021 phys not ar803x phys, make it working again. Signed-off-by: Heiko Schocher <[email protected]> Cc: Shengzhou Liu <[email protected]> Cc: Joe Hershberger <[email protected]>
2014-01-14net: phy: atheros: Fix the masks for AR8031/8035Fabio Estevam
Use the same masks as used in the kernel: https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/drivers/net/phy/at803x.c?id=refs/tags/v3.12.6 With such changes Ethernet is functional on hummingboard solo. Signed-off-by: Fabio Estevam <[email protected]> Acked-by: Stefano Babic <[email protected]> Acked-by: Joe Hershberger <[email protected]> Acked-by: Marek Vasut <[email protected]> Patch: 306640
2013-11-22phy: Use general phy code for smsc lan8720aDavid Dueck
Signed-off-by: David Dueck <[email protected]>
2013-11-22phy: Use supported field during autonegotiationDavid Dueck
The current code incorrectly detects gigabit capabilities for some 100Mbit/s phys. (lan8720a) Signed-off-by: David Dueck <[email protected]>
2013-11-22net: phy: atheros: Fix masks for AR8035 and AR8021Fabio Estevam
The masks were ignoring the last 4 bits which didn't allow detection differences between the ar8031 and ar8035. Signed-off-by: Jon Nettleton <[email protected]> Signed-off-by: Fabio Estevam <[email protected]> Patch: 288018
2013-11-22net/phy: Fix the phy id mask of AR8031Chunhe Lan
The both AR8031 and AR8035 belong to Atheros 803x serial PHY. So the phy id mask of AR8031 is the same to the phy id mask of AR8035. The right mask value is 0x4fffff. This patch has been tested on the P1010 and P1023. Signed-off-by: Chunhe Lan <[email protected]> Cc: Joe Hershberger <[email protected]> Patch: 287748
2013-11-22net, phy: fix AR8031 phy_maskHeiko Schocher
AR8035 driver will be never applied because of wrong mask for AR8031 driver. Fix this. Signed-off-by: Heiko Schocher <[email protected]> Reported-by: Pavel Nakonechny <[email protected]> Cc: Andy Fleming <[email protected]> Cc: Joe Hershberger <[email protected]> Patch: 276944
2013-11-22net: add function to read/write extended registers in Micrel PhyStefano Babic
Signed-off-by: Stefano Babic <[email protected]>
2013-11-22net: fix mask for phy Micrel KSZ9031Stefano Babic
Signed-off-by: Stefano Babic <[email protected]>
2013-11-22net/phy: realtek: Fix the PHY ID mask to ensure the correct Realtek PHY is ↵Bhupesh Sharma
detected The 'get_phy_driver' code in 'drivers/net/phy/phy.c' uses the following method to determine which driver is to be loaded for a particular PHY module: list_for_each(entry, &phy_drivers) { drv = list_entry(entry, struct phy_driver, list); if ((drv->uid & drv->mask) == (phy_id & drv->mask)) return drv; } This means that a drv->mask of 0xfffff0 will return incorrect phy driver for the logic above, even if the drv->uid is anything other than something ending with a 0x0. For e.g. if the RTL8211E drv->uid is 0x1cc915 and drv->mask is 0xffffff and the RTL8211B drv->uid is 0x1cc910 and drv->mask is 0xffffff0, then the phy driver selected will always be RTL8211B even though the underlying phy connected on the board is a 8211E module. This patch fixes this issue. Signed-off-by: Bhupesh Sharma <[email protected]>
2013-11-22net: phy/vitesse: Add support for VSC8514 phy moduleArpit Goel
This patch adds support for VSC8514 PHY module which can be found on Freescale's T1040RDB boards. Signed-off-by: Arpit Goel <[email protected]> Signed-off-by: Bhupesh Sharma <[email protected]>
2013-11-22phylib: update atheros ar803x phyShengzhou Liu
As AR8031 and AR8033 have same PHY ID 0x4dd074, they use the common driver. Currently AR8031_driver didn't work for AR8033, hence updated it to have it work on AR8031/AR8033. Signed-off-by: Shengzhou Liu <[email protected]>
2013-10-31drivers: net: convert makefiles to Kbuild styleMasahiro Yamada
Signed-off-by: Masahiro Yamada <[email protected]>
2013-09-20Cosmetic: Fix a number of typos, no functional changes.Robert P. J. Day
Fix various misspellings of things like "environment", "kernel", "default" and "volatile", and throw in a couple grammar fixes. Signed-off-by: Robert P. J. Day <[email protected]>
2013-08-19net: phy/realtek: Add support for RTL8211DN and RTL8211E phy modulesBhupesh Sharma
This patch adds support for Realtek PHY modules RTL8211DN and RTL8211E (variants: RTL8211E-VB-CG, RTL8211E-VL-CG, RTL8211EG-VB-CG), which can be found on Freescale's T1040RDB boards. To make the driver more generic across 8211 family, a generic name 8211x is added for macros and function names. Signed-off-by: Bhupesh Sharma <[email protected]> Acked-by: York Sun <[email protected]>
2013-08-19phy: smsc: LAN8710/8720 are not Gbit PHYsFabio Estevam
LAN8710/8720 are 10/100 Mbps PHYs, so fix the '.features' field. Cc: Joe Hershberger <[email protected]> Cc: Nobuhiro Iwamatsu <[email protected]> Signed-off-by: Fabio Estevam <[email protected]>
2013-07-30net, phy, cpsw: fix gigabit register accessHeiko Schocher
accessing a lan9303 switch with the cpsw driver results in wrong speed detection, as the switch sets the BMSR_ERCAP in BMSR register, and follow read of the MII_STAT1000 register fails, as the switch does not support it. Current code did not check, if a phy_read() fails ... fix this. Signed-off-by: Heiko Schocher <[email protected]> Cc: Joe Hershberger <[email protected]> Acked-by: Mugunthan V N <[email protected]> Signed-off-by: Tom Rini <[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-07-19net: phy: Set SUPPORTED_1000baseX_Half flag in ESTATUS_1000_XHALF caseFabio Estevam
Commit de1d786e (add support for Xilinx 1000BASE-X phy (GTX)) introduced the checking for ESTATUS_1000_XHALF, but it incorrectly sets the SUPPORTED_1000baseX_Full flag in this case. Set the SUPPORTED_1000baseX_Half flag instead. Acked-by: Charles Coldwell <[email protected]> Reviewed-By: Sascha Silbe <[email protected]> Reviewed-by: Joe Hershberger <[email protected]> Signed-off-by: Fabio Estevam <[email protected]>
2013-07-19phy: fix 10/100Mbps operation on 1Gbps-capable linksSascha Silbe
de1d786 [add support for Xilinx 1000BASE-X phy (GTX)] introduced a check for the extended status register in order to support 1Gbps-capable PHYs that don't have the 1000BASE-T registers. Since Extended Status only indicates what the PHY (i.e. the local side) is capable of, this broke communication with non-1Gbps peers. Only check the extended status if the 1000BASE-T registers are actually missing so we don't end up setting speed to 1Gbps even though the previous test (for the combination of local and peer support for 1Gbps) already indicated we can't do 1Gbps with the current peer. Signed-off-by: Sascha Silbe <[email protected]> Tested-by: Fabio Estevam <[email protected]> Reviewed-by: Joe Hershberger <[email protected]>
2013-06-24phylib: add atheros ar803x phyHeiko Schocher
add atheros ar803x phy, used on the upcoming siemens boards. Signed-off-by: Heiko Schocher <[email protected]> Cc: Andy Fleming <[email protected]> Cc: Joe Hershberger <[email protected]>
2013-06-24phylib: add natsemi dp83630 phyHeiko Schocher
add natsemi dp83630 phy, used on the upcoming siemens boards. Signed-off-by: Heiko Schocher <[email protected]> Cc: Andy Fleming <[email protected]> Cc: Joe Hershberger <[email protected]>
2013-06-24net: phy: supplement support for Micrel's KSZ9031SARTRE Leo
Add function ksz9031_phy_extended_write and ksz9031_phy_extended_read Signed-off-by: Leo Sartre <[email protected]>
2013-06-24phylib: Add Atheros AR8035 GETH PHY supportXie Xiaobo
Signed-off-by: Xie Xiaobo <[email protected]>
2013-06-24add support for Xilinx 1000BASE-X phy (GTX)Charles Coldwell
commit 39695029bc15041c809df3db4ba19bd729c447fa Author: Charles Coldwell <[email protected]> Date: Tue Feb 19 08:27:33 2013 -0500 Changes to support the Xilinx 1000BASE-X phy (GTX/MGT) Signed-off-by: Charles Coldwell <[email protected]>
2013-06-24PHY: micrel.c: add support for KSZ9031David Andrey
Add support for Micrel PHY KSZ9031 in phylib, including small rework for KSZ9021 to avoid code duplication Signed-off-by: David Andrey <[email protected]> Cc: Troy Kisky <[email protected]> Cc: Joe Herschberger <[email protected]> Cc: Andy Fleming <[email protected]> Acked-by: Stefan Roese <[email protected]>
2013-06-24NET: phy: add 88E1310 PHY initializationSebastian Hesselbarth
This adds PHY initialization for Marvell Alaska 88E1310 PHY. Signed-off-by: Sebastian Hesselbarth <[email protected]>
2013-06-24net: add ICPlus PHY driverYegor Yefremov
The driver code was taken from Linux kernel source: drivers/net/phy/icplus.c Signed-off-by: Yegor Yefremov <[email protected]>
2013-06-24phy: export genphy_parse_link()Yegor Yefremov
Signed-off-by: Yegor Yefremov <[email protected]>
2013-05-30Merge branch 'u-boot/master' into 'u-boot-arm/master'Albert ARIBAUD
Conflicts: common/cmd_fpga.c drivers/usb/host/ohci-at91.c
2013-05-24net/phy: fix select line for TN80xxShaohui Xie
TN80xx has same PHY ID as TN2020, but it needs different setting to register 30.93 which used to select line, so we read register 30.32 which has bit 15:12 to indicate PHY hardware version, for TN20xx we will get 3 or 2, for TN80xx we will get 5 or 4. Signed-off-by: Shaohui Xie <[email protected]> Signed-off-by: Andy Fleming <[email protected]>
2013-05-14net/phy: add VSC8574 supportShaohui Xie
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 <[email protected]> Signed-off-by: Shaohui Xie <[email protected]> Signed-off-by: Andy Fleming <[email protected]>
2013-05-10phy: add support for ET1011C physMatt Porter
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 <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2013-04-30net: phy: Define Marvell 88e1518 phyMichal Simek
This phy is used on zedboard (xilinx zynq platform). Signed-off-by: Michal Simek <[email protected]> Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2013-01-28phy: add phy_find_by_mask/phy_connect_devTroy Kisky
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 <[email protected]>
2013-01-09mv88e61xx: refactor PHY and SWITCH level-codeAlbert ARIBAUD
Signed-off-by: Albert ARIBAUD <[email protected]>
2012-12-15phy: Add support for Marvell 88E1118RMichal Simek
Marvell 88E1118R has different uid then 88E1118. Signed-off-by: Michal Simek <[email protected]> CC: Andy Fleming <[email protected]> CC: Zang Roy-R61911 <[email protected]> CC: Kumar Gala <[email protected]>
2012-11-04drivers/net/: sparse fixesKim Phillips
phy.c:46:5: warning: symbol 'genphy_config_advert' was not declared. Should it be static? phy.c:121:5: warning: symbol 'genphy_setup_forced' was not declared. Should it be static? phy.c:468:5: warning: symbol 'phy_probe' was not declared. Should it be static? phy.c:491:19: warning: symbol 'get_phy_driver' was not declared. Should it be static? phy.c:508:19: warning: symbol 'phy_device_create' was not declared. Should it be static? phy.c:552:5: warning: symbol 'get_phy_id' was not declared. Should it be static? phy.c:584:19: warning: symbol 'get_phy_device' was not declared. Should it be sta vitesse.c:126:5: warning: symbol 'vsc8601_config' was not declared. Should it be static? vsc7385.c:33:5: warning: symbol 'vsc7385_upload_firmware' was not declared. Should it be static? tgec_phy.c:33:5: warning: symbol 'tgec_mdio_write' was not declared. Should it be static? tgec_phy.c:75:5: warning: symbol 'tgec_mdio_read' was not declared. Should it be static? tgec_phy.c:117:5: warning: symbol 'tgec_mdio_reset' was not declared. Should it be static? eth.c:48:6: warning: symbol 'dtsec_configure_serdes' was not declared. Should it be static? p4080.c:26:5: warning: symbol 'port_to_devdisr' was not declared. Should it be static? Signed-off-by: Kim Phillips <[email protected]>
2012-11-04net/: sparse fixesKim Phillips
bootp.c:44:14: warning: symbol 'dhcp_state' was not declared. Should it be static? bootp.c:45:15: warning: symbol 'dhcp_leasetime' was not declared. Should it be static? bootp.c:46:10: warning: symbol 'NetDHCPServerIP' was not declared. Should it be static? arp.c:30:17: warning: symbol 'NetArpWaitReplyIP' was not declared. Should it be static? arp.c:37:16: warning: symbol 'NetArpTxPacket' was not declared. Should it be static? arp.c:38:17: warning: symbol 'NetArpPacketBuf' was not declared. Should it be static? atheros.c:33:19: warning: symbol 'AR8021_driver' was not declared. Should it be static? net.c:183:7: warning: symbol 'PktBuf' was not declared. Should it be static? net.c:159:21: warning: symbol 'net_state' was not declared. Should it be static? ping.c:73:6: warning: symbol 'ping_start' was not declared. Should it be static? ping.c:82:13: warning: symbol 'ping_receive' was not declared. Should it be static? tftp.c:53:7: warning: symbol 'TftpRRQTimeoutMSecs' was not declared. Should it be static? tftp.c:54:5: warning: symbol 'TftpRRQTimeoutCountMax' was not declared. Should it be static? eth.c:125:19: warning: symbol 'eth_current' was not declared. Should it be static? Note: in the ping.c fix, commit a36b12f95a29647a06b5459198684fc142482020 "net: Move PING out of net.c" mistakenly carried the ifdef CMD_PING clause from when it was necessary to avoid warnings when it was embedded in net.c. Signed-off-by: Kim Phillips <[email protected]>