1
1
openwrt/target/linux/qualcommbe/patches-6.18/0309-net-phy-Add-phy_package_remove_once-helper.patch
Alexandru Gagniuc 809ca978d1 qualcommbe: kernel-6.18: update patches
Generate new patches for 6.18 from my ipq95xx development branch.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21506
Signed-off-by: Robert Marko <robimarko@gmail.com>
2026-05-28 10:15:20 +02:00

60 lines
2.1 KiB
Diff

From f3b0ae884a0b7e0a1e15fe188da278ed69a87b7c Mon Sep 17 00:00:00 2001
From: Luo Jie <quic_luoj@quicinc.com>
Date: Mon, 23 Sep 2024 18:46:34 +0800
Subject: [PATCH] net: phy: Add phy_package_remove_once helper
QCA8084 PHY package needs to do the PHY package clean up,
add phy_package_remove_once helper to support.
Change-Id: I3cd73bc7be1b1d531435ef72f48db0682548decf
Signed-off-by: Luo Jie <quic_luoj@quicinc.com>
Alex G: Move phy_package_remove_once() to phy_package,c
Update to match the patches that will be upstream.
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
---
drivers/net/phy/phy_package.c | 6 ++++++
drivers/net/phy/phylib.h | 1 +
drivers/net/phy/qcom/qca808x.c | 2 +-
3 files changed, 8 insertions(+), 1 deletion(-)
--- a/drivers/net/phy/phy_package.c
+++ b/drivers/net/phy/phy_package.c
@@ -178,6 +178,12 @@ bool phy_package_probe_once(struct phy_d
}
EXPORT_SYMBOL_GPL(phy_package_probe_once);
+bool phy_package_remove_once(struct phy_device *phydev)
+{
+ return __phy_package_set_once(phydev, 2);
+}
+EXPORT_SYMBOL_GPL(phy_package_remove_once);
+
/**
* phy_package_join - join a common PHY group
* @phydev: target phy_device struct
--- a/drivers/net/phy/phylib.h
+++ b/drivers/net/phy/phylib.h
@@ -23,6 +23,7 @@ int __phy_package_write_mmd(struct phy_d
u32 regnum, u16 val);
bool phy_package_init_once(struct phy_device *phydev);
bool phy_package_probe_once(struct phy_device *phydev);
+bool phy_package_remove_once(struct phy_device *phydev);
int phy_package_join(struct phy_device *phydev, int base_addr, size_t priv_size);
int of_phy_package_join(struct phy_device *phydev, size_t priv_size);
void phy_package_leave(struct phy_device *phydev);
--- a/drivers/net/phy/qcom/qca808x.c
+++ b/drivers/net/phy/qcom/qca808x.c
@@ -1,11 +1,11 @@
// SPDX-License-Identifier: GPL-2.0+
-#include <dt-bindings/net/qcom,qca808x.h>
#include <linux/phy.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/reset.h>
#include <linux/clk.h>
+#include <dt-bindings/net/qcom,qca808x.h>
#include "../phylib.h"
#include "qcom.h"