Skip to content

Commit 96bcabe

Browse files
plappermaulrobimarko
authored andcommitted
realtek: mdio: relocate reset function
Place the reset function into the config structure. Signed-off-by: Markus Stockhausen <[email protected]> Link: openwrt/openwrt#21274 Signed-off-by: Robert Marko <[email protected]>
1 parent 87a3c62 commit 96bcabe

File tree

1 file changed

+13
-15
lines changed

1 file changed

+13
-15
lines changed

target/linux/realtek/files-6.12/drivers/net/mdio/mdio-realtek-otto.c

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@ struct rtmdio_config {
171171
int (*read_mmd_phy)(u32 port, u32 addr, u32 reg, u32 *val);
172172
int (*read_phy)(u32 port, u32 page, u32 reg, u32 *val);
173173
int (*read_sds_phy)(int sds, int page, int regnum);
174+
int (*reset)(struct mii_bus *bus);
174175
int (*write_mmd_phy)(u32 port, u32 addr, u32 reg, u32 val);
175176
int (*write_phy)(u32 port, u32 page, u32 reg, u32 val);
176177
int (*write_sds_phy)(int sds, int page, int regnum, u16 val);
@@ -1382,6 +1383,13 @@ static int rtmdio_931x_reset(struct mii_bus *bus)
13821383
return 0;
13831384
}
13841385

1386+
static int rtmdio_reset(struct mii_bus *bus)
1387+
{
1388+
struct rtmdio_bus_priv *priv = bus->priv;
1389+
1390+
return priv->cfg->reset(bus);
1391+
}
1392+
13851393
/*
13861394
* TODO: This is a tiny leftover from the central SoC include. For now try to detect the
13871395
* Realtek SoC automatically. This needs to be changed to a proper DTS compatible in a
@@ -1437,22 +1445,8 @@ static int rtmdio_probe(struct platform_device *pdev)
14371445

14381446
priv->cfg = (const struct rtmdio_config *)device_get_match_data(dev);
14391447

1440-
switch (family) {
1441-
case RTMDIO_838X_FAMILY_ID:
1442-
bus->reset = rtmdio_838x_reset;
1443-
break;
1444-
case RTMDIO_839X_FAMILY_ID:
1445-
bus->reset = rtmdio_839x_reset;
1446-
break;
1447-
case RTMDIO_930X_FAMILY_ID:
1448-
bus->reset = rtmdio_930x_reset;
1449-
break;
1450-
case RTMDIO_931X_FAMILY_ID:
1451-
bus->reset = rtmdio_931x_reset;
1452-
break;
1453-
}
1454-
14551448
bus->name = "Realtek MDIO bus";
1449+
bus->reset = rtmdio_reset;
14561450
bus->read = rtmdio_read;
14571451
bus->write = rtmdio_write;
14581452
bus->read_c45 = rtmdio_read_c45;
@@ -1533,6 +1527,7 @@ static const struct rtmdio_config rtmdio_838x_cfg = {
15331527
.read_mmd_phy = rtmdio_838x_read_mmd_phy,
15341528
.read_phy = rtmdio_838x_read_phy,
15351529
.read_sds_phy = rtmdio_838x_read_sds_phy,
1530+
.reset = rtmdio_838x_reset,
15361531
.write_mmd_phy = rtmdio_838x_write_mmd_phy,
15371532
.write_phy = rtmdio_838x_write_phy,
15381533
.write_sds_phy = rtmdio_838x_write_sds_phy,
@@ -1544,6 +1539,7 @@ static const struct rtmdio_config rtmdio_839x_cfg = {
15441539
.read_mmd_phy = rtmdio_839x_read_mmd_phy,
15451540
.read_phy = rtmdio_839x_read_phy,
15461541
.read_sds_phy = rtmdio_839x_read_sds_phy,
1542+
.reset = rtmdio_839x_reset,
15471543
.write_mmd_phy = rtmdio_839x_write_mmd_phy,
15481544
.write_phy = rtmdio_839x_write_phy,
15491545
.write_sds_phy = rtmdio_839x_write_sds_phy,
@@ -1555,6 +1551,7 @@ static const struct rtmdio_config rtmdio_930x_cfg = {
15551551
.read_mmd_phy = rtmdio_930x_read_mmd_phy,
15561552
.read_phy = rtmdio_930x_read_phy,
15571553
.read_sds_phy = rtmdio_930x_read_sds_phy,
1554+
.reset = rtmdio_930x_reset,
15581555
.write_mmd_phy = rtmdio_930x_write_mmd_phy,
15591556
.write_phy = rtmdio_930x_write_phy,
15601557
.write_sds_phy = rtmdio_930x_write_sds_phy,
@@ -1566,6 +1563,7 @@ static const struct rtmdio_config rtmdio_931x_cfg = {
15661563
.read_mmd_phy = rtmdio_931x_read_mmd_phy,
15671564
.read_phy = rtmdio_931x_read_phy,
15681565
.read_sds_phy = rtsds_931x_read,
1566+
.reset = rtmdio_931x_reset,
15691567
.write_mmd_phy = rtmdio_931x_write_mmd_phy,
15701568
.write_phy = rtmdio_931x_write_phy,
15711569
.write_sds_phy = rtsds_931x_write,

0 commit comments

Comments
 (0)