OpenCloudOS-Kernel/drivers/net/phy
Pali Rohár f0b4f84767 net: sfp: add mode quirk for GPON module Ubiquiti U-Fiber Instant
The Ubiquiti U-Fiber Instant SFP GPON module has nonsensical information
stored in its EEPROM. It claims to support all transceiver types including
10G Ethernet. Clear all claimed modes and set only 1000baseX_Full, which is
the only one supported.

This module has also phys_id set to SFF, and the SFP subsystem currently
does not allow to use SFP modules detected as SFFs. Add exception for this
module so it can be detected as supported.

This change finally allows to detect and use SFP GPON module Ubiquiti
U-Fiber Instant on Linux system.

EEPROM content of this SFP module is (where XX is serial number):

00: 02 04 0b ff ff ff ff ff ff ff ff 03 0c 00 14 c8    ???........??.??
10: 00 00 00 00 55 42 4e 54 20 20 20 20 20 20 20 20    ....UBNT
20: 20 20 20 20 00 18 e8 29 55 46 2d 49 4e 53 54 41        .??)UF-INSTA
30: 4e 54 20 20 20 20 20 20 34 20 20 20 05 1e 00 36    NT      4   ??.6
40: 00 06 00 00 55 42 4e 54 XX XX XX XX XX XX XX XX    .?..UBNTXXXXXXXX
50: 20 20 20 20 31 34 30 31 32 33 20 20 60 80 02 41        140123  `??A

Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-01-28 13:41:17 -08:00
..
mscc net: phy: mscc: use new PTP_MSGTYPE_* defines 2020-11-25 12:23:21 -08:00
Kconfig mdio: fix mdio-thunder.c dependency & build error 2020-09-27 13:21:28 -07:00
Makefile net: phy: Sort Kconfig and Makefile 2020-08-27 06:55:51 -07:00
adin.c net: phy: adin: remove the use of the .ack_interrupt() 2020-11-17 11:37:09 -08:00
amd.c net: phy: amd: remove the use of .ack_interrupt() 2020-11-17 11:37:00 -08:00
aquantia.h net: phy: Use the correct style for SPDX License Identifier 2019-11-27 11:25:48 -08:00
aquantia_hwmon.c net: phy: aquantia: add hwmon support 2019-02-25 14:16:22 -08:00
aquantia_main.c net: phy: aquantia: do not return an error on clearing pending IRQs 2020-11-11 14:09:54 -08:00
at803x.c net: phy: at803x: add support for configuring SmartEEE 2021-01-15 15:06:07 -08:00
ax88796b.c net: phy: rename Asix Electronics PHY driver 2019-06-09 13:24:17 -07:00
bcm-cygnus.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm-phy-lib.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm-phy-lib.h net: phy: broadcom: implement generic .handle_interrupt() callback 2020-11-05 16:32:27 -08:00
bcm7xxx.c net: phy: bcm7xxx: Add an entry for BCM72116 2021-01-07 14:46:09 -08:00
bcm63xx.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm87xx.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm54140.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm84881.c net: phy: bcm84881: clear settings on link down 2020-04-23 15:55:35 -07:00
broadcom.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
cicada.c net: phy: cicada: remove the use of .ack_interrupt() 2020-11-05 16:32:39 -08:00
cortina.c net: mdiobus: add clause 45 mdiobus accessors 2020-05-26 15:31:45 -07:00
davicom.c net: phy: davicom: remove the use of .ack_interrupt() 2020-11-05 16:32:39 -08:00
dp83tc811.c net: phy: ti: remove the use of .ack_interrupt() 2020-11-25 11:18:38 -08:00
dp83640.c net: phy: dp83640: use new PTP_MSGTYPE_SYNC define 2020-11-25 12:23:06 -08:00
dp83640_reg.h
dp83822.c net: phy: ti: remove the use of .ack_interrupt() 2020-11-25 11:18:38 -08:00
dp83848.c net: phy: ti: remove the use of .ack_interrupt() 2020-11-25 11:18:38 -08:00
dp83867.c net: phy: ti: remove the use of .ack_interrupt() 2020-11-25 11:18:38 -08:00
dp83869.c net: phy: ti: remove the use of .ack_interrupt() 2020-11-25 11:18:38 -08:00
et1011c.c net: phy: switch drivers to use dynamic feature detection 2019-04-15 17:19:54 -07:00
fixed_phy.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
icplus.c net: phy: icplus: remove the use .ack_interrupt() 2020-11-25 11:18:37 -08:00
intel-xway.c net: phy: intel-xway: remove the use of .ack_interrupt() 2020-11-25 11:18:37 -08:00
linkmode.c net: add linkmode helper for setting flow control advertisement 2020-02-16 19:39:44 -08:00
lxt.c net: phy: lxt: remove the use of .ack_interrupt() 2020-11-17 11:36:59 -08:00
marvell.c net: phy: marvell: replace phy_modify() 2020-12-01 17:08:07 -08:00
marvell10g.c net: phy: marvell10g: fix null pointer dereference 2020-08-11 15:42:23 -07:00
mdio-boardinfo.c net: phy: Fixup parameters in kerneldoc 2020-07-07 12:47:10 -07:00
mdio-boardinfo.h
mdio_bus.c net: phy: replace mutex_is_locked with lockdep_assert_held in phylib 2021-01-07 14:53:07 -08:00
mdio_device.c net: mdio device: use flexible sleeping in reset function 2020-08-03 15:01:02 -07:00
mdio_devres.c of: mdio: provide devm_of_mdiobus_register() 2020-06-30 15:57:34 -07:00
meson-gxl.c net: phy: meson-gxl: remove the use of .ack_callback() 2020-11-25 11:18:37 -08:00
micrel.c net: phy: micrel: Add KS8851 PHY support 2021-01-05 17:05:11 -08:00
microchip.c net: phy: microchip: remove the use of .ack_interrupt() 2020-11-17 11:36:59 -08:00
microchip_t1.c net: phy: microchip: remove the use of .ack_interrupt() 2020-11-17 11:36:59 -08:00
mii_timestamper.c net: mii_timestamper: fix static allocation by PHY driver 2020-01-31 07:46:11 -08:00
national.c net: phy: national: remove definition of DEBUG 2021-01-18 20:03:01 -08:00
nxp-tja11xx.c net: phy: nxp-tja11xx: remove the use of .ack_interrupt() 2020-11-17 11:37:00 -08:00
phy-c45.c net: phy: fix kernel-doc markups 2020-11-17 14:15:03 -08:00
phy-core.c net: phy: Document core PHY structures 2020-09-23 18:02:49 -07:00
phy.c net: phy: replace mutex_is_locked with lockdep_assert_held in phylib 2021-01-07 14:53:07 -08:00
phy_device.c net: phy: replace mutex_is_locked with lockdep_assert_held in phylib 2021-01-07 14:53:07 -08:00
phy_led_triggers.c net: phy: leds: Deduplicate link LED trigger registration 2020-10-30 10:43:37 -07:00
phylink.c net: phy: fix kernel-doc markups 2020-11-17 14:15:03 -08:00
qsemi.c net: phy: qsemi: remove the use of .ack_interrupt() 2020-11-25 11:18:38 -08:00
realtek.c net: phy: realtek: Add support for RTL9000AA/AN 2021-01-22 18:06:42 -08:00
rockchip.c net: phy: switch drivers to use dynamic feature detection 2019-04-15 17:19:54 -07:00
sfp-bus.c net: sfp: add mode quirk for GPON module Ubiquiti U-Fiber Instant 2021-01-28 13:41:17 -08:00
sfp.c net: sfp: add mode quirk for GPON module Ubiquiti U-Fiber Instant 2021-01-28 13:41:17 -08:00
sfp.h net: sfp: add module start/stop upstream notifications 2019-12-11 11:53:41 -08:00
smsc.c net: phy: smsc: fix clk error handling 2021-01-12 18:39:19 -08:00
spi_ks8995.c net: Use kobj_to_dev() API 2020-09-28 15:14:42 -07:00
ste10Xp.c net: phy: ste10Xp: remove the use of .ack_interrupt() 2020-11-17 11:37:00 -08:00
swphy.c Update rmk's email address in various drivers 2020-04-21 17:50:09 +01:00
swphy.h
teranetics.c net: phy: remove genphy_no_soft_reset 2020-04-24 16:47:51 -07:00
uPD60620.c net: phy: use phy_resolve_aneg_pause() 2019-12-19 12:52:34 -08:00
vitesse.c net: phy: vitesse: remove the use of .ack_interrupt() 2020-11-17 11:36:59 -08:00
xilinx_gmii2rgmii.c net: phy: gmii2rgmii: Dont use priv field in phy device 2019-09-05 12:32:06 +02:00