Skip to content

Commit d1cb613

Browse files
robimarkodavem330
authored andcommitted
net: phy: qcom: add support for QCA807x PHY Family
This adds driver for the Qualcomm QCA8072 and QCA8075 PHY-s. They are 2 or 5 port IEEE 802.3 clause 22 compliant 10BASE-Te, 100BASE-TX and 1000BASE-T PHY-s. They feature 2 SerDes, one for PSGMII or QSGMII connection with MAC, while second one is SGMII for connection to MAC or fiber. Both models have a combo port that supports 1000BASE-X and 100BASE-FX fiber. PHY package can be configured in 3 mode following this table: First Serdes mode Second Serdes mode Option 1 PSGMII for copper Disabled ports 0-4 Option 2 PSGMII for copper 1000BASE-X / 100BASE-FX ports 0-4 Option 3 QSGMII for copper SGMII for ports 0-3 copper port 4 Each PHY inside of QCA807x series has 4 digitally controlled output only pins that natively drive LED-s. But some vendors used these to driver generic LED-s controlled by userspace, so lets enable registering each PHY as GPIO controller and add driver for it. These are commonly used in Qualcomm IPQ40xx, IPQ60xx and IPQ807x boards. Co-developed-by: Christian Marangi <[email protected]> Signed-off-by: Robert Marko <[email protected]> Signed-off-by: Christian Marangi <[email protected]> Reviewed-by: Andrew Lunn <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 9b1d5e0 commit d1cb613

File tree

3 files changed

+606
-0
lines changed

3 files changed

+606
-0
lines changed

drivers/net/phy/qcom/Kconfig

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,11 @@ config QCA808X_PHY
2020
select QCOM_NET_PHYLIB
2121
help
2222
Currently supports the QCA8081 model
23+
24+
config QCA807X_PHY
25+
tristate "Qualcomm QCA807x PHYs"
26+
select QCOM_NET_PHYLIB
27+
depends on OF_MDIO
28+
help
29+
Currently supports the Qualcomm QCA8072, QCA8075 and the PSGMII
30+
control PHY.

drivers/net/phy/qcom/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@ obj-$(CONFIG_QCOM_NET_PHYLIB) += qcom-phy-lib.o
33
obj-$(CONFIG_AT803X_PHY) += at803x.o
44
obj-$(CONFIG_QCA83XX_PHY) += qca83xx.o
55
obj-$(CONFIG_QCA808X_PHY) += qca808x.o
6+
obj-$(CONFIG_QCA807X_PHY) += qca807x.o

0 commit comments

Comments
 (0)