generic: add support for vsc8504 phy
adds support for vsc8504 phy. patch have use on 5.4 kernel and has to be dropped after since phy is supported by CONFIG_MICROSEMI_PHY on newer LTS kernels. Tested-by: Johannes Kimmel <fff@bareminimum.eu> Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
This commit is contained in:
parent
c8a81ada58
commit
b9898cd78a
57
target/linux/generic/hack-5.4/703-add_vsc8504_support.patch
Normal file
57
target/linux/generic/hack-5.4/703-add_vsc8504_support.patch
Normal file
@ -0,0 +1,57 @@
|
||||
From: Roman Kuzmitskii <damex.pp@icloud.com>
|
||||
Date: Thu, 05 Nov 2020 02:00:00 +0000
|
||||
Subject: [PATCH] net: phy: vitesse: add vsc8504 support
|
||||
|
||||
This patch adds support for vsc8504 phy.
|
||||
That phy is changed owner:
|
||||
vitesse -> microsemi -> microchip
|
||||
So is its driver in kernel was changed and rewritten.
|
||||
|
||||
there is no need to upstream this patch.
|
||||
this vsc8504 is supported by newer kernels out of box.
|
||||
support could be enabled by CONFIG_MICROSEMI_PHY.
|
||||
|
||||
Tested-by: Johannes Kimmel <fff@bareminimum.eu>
|
||||
Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
|
||||
--- a/drivers/net/phy/vitesse.c
|
||||
+++ b/drivers/net/phy/vitesse.c
|
||||
@@ -61,6 +61,7 @@
|
||||
|
||||
#define PHY_ID_VSC8234 0x000fc620
|
||||
#define PHY_ID_VSC8244 0x000fc6c0
|
||||
+#define PHY_ID_VSC8504 0x000704c2
|
||||
#define PHY_ID_VSC8572 0x000704d0
|
||||
#define PHY_ID_VSC8601 0x00070420
|
||||
#define PHY_ID_VSC7385 0x00070450
|
||||
@@ -292,6 +293,7 @@
|
||||
err = phy_write(phydev, MII_VSC8244_IMASK,
|
||||
(phydev->drv->phy_id == PHY_ID_VSC8234 ||
|
||||
phydev->drv->phy_id == PHY_ID_VSC8244 ||
|
||||
+ phydev->drv->phy_id == PHY_ID_VSC8504 ||
|
||||
phydev->drv->phy_id == PHY_ID_VSC8572 ||
|
||||
phydev->drv->phy_id == PHY_ID_VSC8601) ?
|
||||
MII_VSC8244_IMASK_MASK :
|
||||
@@ -402,6 +404,15 @@
|
||||
.ack_interrupt = &vsc824x_ack_interrupt,
|
||||
.config_intr = &vsc82xx_config_intr,
|
||||
}, {
|
||||
+ .phy_id = PHY_ID_VSC8504,
|
||||
+ .name = "Vitesse VSC8504",
|
||||
+ .phy_id_mask = 0x000ffff0,
|
||||
+ /* PHY_GBIT_FEATURES */
|
||||
+ .config_init = &vsc824x_config_init,
|
||||
+ .config_aneg = &vsc82x4_config_aneg,
|
||||
+ .ack_interrupt = &vsc824x_ack_interrupt,
|
||||
+ .config_intr = &vsc82xx_config_intr,
|
||||
+}, {
|
||||
.phy_id = PHY_ID_VSC8572,
|
||||
.name = "Vitesse VSC8572",
|
||||
.phy_id_mask = 0x000ffff0,
|
||||
@@ -488,6 +499,7 @@
|
||||
static struct mdio_device_id __maybe_unused vitesse_tbl[] = {
|
||||
{ PHY_ID_VSC8234, 0x000ffff0 },
|
||||
{ PHY_ID_VSC8244, 0x000fffc0 },
|
||||
+ { PHY_ID_VSC8504, 0x000ffff0 },
|
||||
{ PHY_ID_VSC8572, 0x000ffff0 },
|
||||
{ PHY_ID_VSC7385, 0x000ffff0 },
|
||||
{ PHY_ID_VSC7388, 0x000ffff0 },
|
Loading…
Reference in New Issue
Block a user