ipq40xx: qca807x: add suspend and resume ops
authorSerhii Serhieiev <adron@mstnt.com>
Sun, 20 Mar 2022 18:26:32 +0000 (19:26 +0100)
committerDavid Bauer <mail@david-bauer.net>
Sun, 2 Oct 2022 21:04:39 +0000 (23:04 +0200)
Currently, suspend and resume ops are not present, this means that if user
disables a DSA interface that the PHY-s remain alive and the link is up.

Fix it by using generic PHY suspend and resume ops.

Signed-off-by: Serhii Serhieiev <adron@mstnt.com>
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
target/linux/ipq40xx/files/drivers/net/phy/qca807x.c

index 2a2d19d6db19afb5f1524fb4ce1788262a8b2063..94d5b83a7c908c3da6a5a21968707e80918303c1 100644 (file)
@@ -820,6 +820,8 @@ static struct phy_driver qca807x_drivers[] = {
                .soft_reset     = genphy_soft_reset,
                .get_tunable    = qca807x_get_tunable,
                .set_tunable    = qca807x_set_tunable,
+               .resume         = genphy_resume,
+               .suspend        = genphy_suspend,
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0)
                .cable_test_start       = qca807x_cable_test_start,
                .cable_test_get_status  = qca807x_cable_test_get_status,
@@ -844,6 +846,8 @@ static struct phy_driver qca807x_drivers[] = {
                .soft_reset     = genphy_soft_reset,
                .get_tunable    = qca807x_get_tunable,
                .set_tunable    = qca807x_set_tunable,
+               .resume         = genphy_resume,
+               .suspend        = genphy_suspend,
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0)
                .cable_test_start       = qca807x_cable_test_start,
                .cable_test_get_status  = qca807x_cable_test_get_status,