diff --git a/target/linux/generic/backport-6.12/730-06-v6.17-net-phy-sfp-Add-quirk-for-SFP-ONU-XGSPON.patch b/target/linux/generic/backport-6.12/730-06-v6.17-net-phy-sfp-Add-quirk-for-SFP-ONU-XGSPON.patch
new file mode 100644
index 0000000000..f65e9da50a
--- /dev/null
+++ b/target/linux/generic/backport-6.12/730-06-v6.17-net-phy-sfp-Add-quirk-for-SFP-ONU-XGSPON.patch
@@ -0,0 +1,61 @@
+From d6899e971a19f525a2efe2d301c859e753462607 Mon Sep 17 00:00:00 2001
+From: Chris Morgan <macromorgan@hotmail.com>
+Date: Thu, 5 Jun 2025 14:18:21 -0500
+Subject: [PATCH] net: sfp: add quirk for SFP-ONU-XGSPON module
+
+Add quirk for YV SFP+ONT-XGSPON module.
+
+This device uses pins 2 and 7 for UART communication, so disable
+TX_FAULT and LOS. Additionally as it is an embedded system in an
+SFP+ form factor provide it enough time to fully boot before we
+attempt to use it.
+
+Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
+---
+ drivers/net/phy/sfp.c | 21 ++++++++++++++++++++-
+ 1 file changed, 20 insertions(+), 1 deletion(-)
+
+--- a/drivers/net/phy/sfp.c
++++ b/drivers/net/phy/sfp.c
+@@ -366,6 +366,11 @@ static void sfp_fixup_nokia(struct sfp *
+ 	sfp_fixup_ignore_los(sfp);
+ }
+ 
++static void sfp_fixup_ignore_hw(struct sfp *sfp, unsigned int mask)
++{
++	sfp->state_hw_mask &= ~mask;
++}
++
+ // For 10GBASE-T short-reach modules
+ static void sfp_fixup_10gbaset_30m(struct sfp *sfp)
+ {
+@@ -408,7 +413,19 @@ static void sfp_fixup_halny_gsfp(struct
+ 	 * these are possibly used for other purposes on this
+ 	 * module, e.g. a serial port.
+ 	 */
+-	sfp->state_hw_mask &= ~(SFP_F_TX_FAULT | SFP_F_LOS);
++	sfp_fixup_ignore_hw(sfp, (SFP_F_TX_FAULT | SFP_F_LOS));
++}
++
++static void sfp_fixup_potron(struct sfp *sfp)
++{
++	/*
++	 * The TX_FAULT and LOS pins on this device are used for serial
++	 * communication, so ignore them. Additionally, provide extra
++	 * time for this device to fully start up.
++	 */
++
++	sfp_fixup_long_startup(sfp);
++	sfp_fixup_ignore_hw(sfp, (SFP_F_TX_FAULT | SFP_F_LOS));
+ }
+ 
+ static void sfp_fixup_rollball_cc(struct sfp *sfp)
+@@ -489,6 +506,8 @@ static const struct sfp_quirk sfp_quirks
+ 	SFP_QUIRK("FS", "GPON-ONU-34-20BI", sfp_quirk_2500basex,
+ 		  sfp_fixup_ignore_tx_fault),
+ 
++	SFP_QUIRK_F("YV", "SFP+ONU-XGSPON", sfp_fixup_potron),
++
+ 	SFP_QUIRK_F("HALNy", "HL-GSFP", sfp_fixup_halny_gsfp),
+ 
+ 	// HG MXPD-483II-F 2.5G supports 2500Base-X, but incorrectly reports
