All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] net: phy: at803x: add QCA9561 support
@ 2021-10-04 19:36 David Bauer
  2021-10-04 22:01 ` Andrew Lunn
  2021-10-05  1:31 ` Jakub Kicinski
  0 siblings, 2 replies; 3+ messages in thread
From: David Bauer @ 2021-10-04 19:36 UTC (permalink / raw)
  To: andrew, hkallweit1, linux, davem, kuba, netdev

Add support for the embedded fast-ethernet PHY found on the QCA9561
WiSoC platform. It supports the usual Atheros PHY featureset including
the cable tester.

Tested on a Xiaomi MiRouter 4Q (QCA9561)

Signed-off-by: David Bauer <mail@david-bauer.net>
---
 drivers/net/phy/at803x.c | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

diff --git a/drivers/net/phy/at803x.c b/drivers/net/phy/at803x.c
index bdac087058b2..e2ad0fcb901f 100644
--- a/drivers/net/phy/at803x.c
+++ b/drivers/net/phy/at803x.c
@@ -152,6 +152,7 @@
 
 #define QCA8327_PHY_ID				0x004dd034
 #define QCA8337_PHY_ID				0x004dd036
+#define QCA9561_PHY_ID				0x004dd042
 #define QCA8K_PHY_ID_MASK			0xffffffff
 
 #define QCA8K_DEVFLAGS_REVISION_MASK		GENMASK(2, 0)
@@ -1236,7 +1237,8 @@ static int at803x_cable_test_get_status(struct phy_device *phydev,
 	int pair, ret;
 
 	if (phydev->phy_id == ATH9331_PHY_ID ||
-	    phydev->phy_id == ATH8032_PHY_ID)
+	    phydev->phy_id == ATH8032_PHY_ID ||
+	    phydev->phy_id == QCA9561_PHY_ID)
 		pair_mask = 0x3;
 	else
 		pair_mask = 0xf;
@@ -1276,7 +1278,8 @@ static int at803x_cable_test_start(struct phy_device *phydev)
 	phy_write(phydev, MII_BMCR, BMCR_ANENABLE);
 	phy_write(phydev, MII_ADVERTISE, ADVERTISE_CSMA);
 	if (phydev->phy_id != ATH9331_PHY_ID &&
-	    phydev->phy_id != ATH8032_PHY_ID)
+	    phydev->phy_id != ATH8032_PHY_ID &&
+	    phydev->phy_id != QCA9561_PHY_ID)
 		phy_write(phydev, MII_CTRL1000, 0);
 
 	/* we do all the (time consuming) work later */
@@ -1407,6 +1410,21 @@ static struct phy_driver at803x_driver[] = {
 	.read_status		= at803x_read_status,
 	.soft_reset		= genphy_soft_reset,
 	.config_aneg		= at803x_config_aneg,
+}, {
+	/* Qualcomm Atheros QCA9561 */
+	PHY_ID_MATCH_EXACT(QCA9561_PHY_ID),
+	.name			= "Qualcomm Atheros QCA9561 built-in PHY",
+	.suspend		= at803x_suspend,
+	.resume			= at803x_resume,
+	.flags			= PHY_POLL_CABLE_TEST,
+	/* PHY_BASIC_FEATURES */
+	.config_intr		= &at803x_config_intr,
+	.handle_interrupt	= at803x_handle_interrupt,
+	.cable_test_start	= at803x_cable_test_start,
+	.cable_test_get_status	= at803x_cable_test_get_status,
+	.read_status		= at803x_read_status,
+	.soft_reset		= genphy_soft_reset,
+	.config_aneg		= at803x_config_aneg,
 }, {
 	/* QCA8337 */
 	.phy_id = QCA8337_PHY_ID,
@@ -1430,6 +1448,7 @@ static struct mdio_device_id __maybe_unused atheros_tbl[] = {
 	{ PHY_ID_MATCH_EXACT(ATH8032_PHY_ID) },
 	{ PHY_ID_MATCH_EXACT(ATH8035_PHY_ID) },
 	{ PHY_ID_MATCH_EXACT(ATH9331_PHY_ID) },
+	{ PHY_ID_MATCH_EXACT(QCA9561_PHY_ID) },
 	{ }
 };
 
-- 
2.33.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] net: phy: at803x: add QCA9561 support
  2021-10-04 19:36 [PATCH] net: phy: at803x: add QCA9561 support David Bauer
@ 2021-10-04 22:01 ` Andrew Lunn
  2021-10-05  1:31 ` Jakub Kicinski
  1 sibling, 0 replies; 3+ messages in thread
From: Andrew Lunn @ 2021-10-04 22:01 UTC (permalink / raw)
  To: David Bauer; +Cc: hkallweit1, linux, davem, kuba, netdev

On Mon, Oct 04, 2021 at 09:36:33PM +0200, David Bauer wrote:
> Add support for the embedded fast-ethernet PHY found on the QCA9561
> WiSoC platform. It supports the usual Atheros PHY featureset including
> the cable tester.
> 
> Tested on a Xiaomi MiRouter 4Q (QCA9561)
> 
> Signed-off-by: David Bauer <mail@david-bauer.net>

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] net: phy: at803x: add QCA9561 support
  2021-10-04 19:36 [PATCH] net: phy: at803x: add QCA9561 support David Bauer
  2021-10-04 22:01 ` Andrew Lunn
@ 2021-10-05  1:31 ` Jakub Kicinski
  1 sibling, 0 replies; 3+ messages in thread
From: Jakub Kicinski @ 2021-10-05  1:31 UTC (permalink / raw)
  To: David Bauer; +Cc: andrew, hkallweit1, linux, davem, netdev

On Mon,  4 Oct 2021 21:36:33 +0200 David Bauer wrote:
> Add support for the embedded fast-ethernet PHY found on the QCA9561
> WiSoC platform. It supports the usual Atheros PHY featureset including
> the cable tester.
> 
> Tested on a Xiaomi MiRouter 4Q (QCA9561)
> 
> Signed-off-by: David Bauer <mail@david-bauer.net>

Please keep Andrew's tag, rebase this patch on net-next:

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/

and resend with [PATCH net-next] as the subject prefix.

We have a number of additions to at803x already queued for the next
release and otherwise this patch conflicts with them.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-10-05  1:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-04 19:36 [PATCH] net: phy: at803x: add QCA9561 support David Bauer
2021-10-04 22:01 ` Andrew Lunn
2021-10-05  1:31 ` Jakub Kicinski

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.