Bertrand d'Hérouville and Claude Opus 5.5
b3d6d595ff
realtek: rtl839x: gs750e: add SFP cages
...
The two SFP cages of the Netgear GS750E (front panel ports 49 and 50)
are wired to the RTL8393M GPIOs: each cage has its own bit-banged I2C
bus plus mod-def0, LOS and tx-disable lines. Describe them so the sfp
driver can read the module EEPROM, detect insertion and removal, and
let phylink manage the link.
The pin map was recovered from the vendor firmware (V1.0.1.10):
cage SCL SDA mod-def0 LOS tx-disable
49 17 18 16 21 19
50 12 13 2 22 14
Tested on hardware with two GLC-SX-MMD-C 1000BASE-SX modules and the
stock "boota" bootcmd after a cold power cycle: both modules are
detected, EEPROM and DDM (hwmon) are read, and both links come up at
1 Gbps and pass traffic. Unplugging the fibre drops the link and it
comes back on reconnect. Pulling a module reports its removal, and on
reinsertion it is probed again and the link recovers (hotplug tested
with a backport to 25.12.5). The reset key and gpio-restart still work.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Signed-off-by: Bertrand d'Hérouville <bertrand.dherouville@gmail.com >
Link: https://github.com/openwrt/openwrt/pull/25898
Signed-off-by: Jonas Jelonek <jonas@jonasjelonek.de >
2026-10-15 14:57:38 +02:00
..
2026-07-21 18:59:26 +02:00
2026-10-07 17:31:59 +02:00
2026-09-10 22:43:29 +02:00
2026-09-01 18:36:35 +02:00
2026-09-01 18:36:35 +02:00
2026-09-10 22:43:29 +02:00
2026-10-06 20:06:32 +02:00
2026-09-10 22:43:29 +02:00
2026-10-06 18:46:40 +02:00
2026-05-31 12:52:40 +02:00
2026-10-06 22:01:03 +02:00
2026-07-24 09:26:43 +02:00
2026-07-24 09:26:43 +02:00
2026-07-24 09:26:43 +02:00
2026-05-31 12:52:40 +02:00
2026-10-07 17:31:59 +02:00
2026-04-13 18:42:33 +02:00
2026-09-25 09:43:01 +02:00
2026-05-31 12:52:40 +02:00
2026-09-28 15:58:32 +02:00
2026-05-31 12:52:40 +02:00
2026-06-11 20:23:38 +02:00
2026-05-31 12:52:40 +02:00
2026-06-16 09:42:19 +02:00
2026-05-31 12:52:40 +02:00
2026-07-27 22:54:32 +02:00
2026-07-27 22:54:32 +02:00
2026-07-27 22:54:33 +02:00
2026-07-27 22:54:32 +02:00
2026-07-19 11:21:11 +02:00
2026-07-19 11:21:11 +02:00
2026-07-19 11:21:11 +02:00
2026-04-13 18:42:33 +02:00
2026-04-13 18:42:33 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-04-22 16:58:04 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-07-24 17:32:34 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-07-20 18:50:01 +02:00
2026-09-01 18:36:35 +02:00
2026-09-01 18:36:35 +02:00
2026-09-01 18:36:35 +02:00
2026-05-31 12:52:40 +02:00
2026-08-23 09:57:52 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-07-20 18:50:01 +02:00
2026-05-31 12:52:40 +02:00
2026-10-15 14:57:38 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-04-11 19:32:57 +02:00
2026-05-31 12:52:40 +02:00
2026-04-11 19:35:53 +02:00
2026-07-20 18:50:01 +02:00
2026-09-16 14:55:45 +02:00
2026-05-26 16:10:06 +02:00
2026-07-17 19:34:45 +02:00
2026-07-19 11:18:16 +02:00
2026-08-21 17:50:22 +02:00
2026-05-31 12:52:40 +02:00
2026-05-31 12:52:40 +02:00
2026-08-07 19:54:49 +02:00
2026-08-07 19:54:49 +02:00
2026-09-23 21:15:01 +02:00
2026-05-31 12:52:40 +02:00
2026-09-04 20:15:49 +02:00
2026-06-20 15:26:36 +02:00
2026-06-20 15:26:36 +02:00
2026-06-20 15:26:36 +02:00
2026-08-07 19:54:49 +02:00
2026-08-07 19:54:49 +02:00
2026-08-07 19:54:49 +02:00
2026-08-07 19:54:49 +02:00
2026-09-11 21:25:48 +02:00
2026-05-11 10:34:53 +02:00
2026-08-21 17:50:22 +02:00
2026-09-01 23:43:46 +02:00
2026-09-30 09:30:57 +02:00
2026-08-11 22:20:12 +02:00
2026-10-08 17:04:30 +02:00
2026-08-11 22:20:12 +02:00
2026-08-11 22:20:13 +02:00
2026-10-08 17:04:30 +02:00
2026-08-11 22:20:13 +02:00
2026-08-18 19:59:14 +02:00
2026-08-08 23:08:21 +02:00
2026-07-27 20:08:32 +02:00
2026-08-11 22:02:47 +02:00
2026-08-08 23:08:21 +02:00
2026-08-11 22:02:47 +02:00
2026-09-30 09:30:56 +02:00
2026-09-30 09:30:56 +02:00
2026-09-14 08:52:35 +02:00
2026-10-09 19:34:23 +02:00
2026-09-18 08:58:24 +02:00
2026-09-01 21:10:37 +02:00
2026-06-09 09:22:07 +02:00
2026-09-11 21:15:10 +02:00
2026-05-01 12:41:49 +02:00
2026-05-24 19:32:31 +02:00
2026-05-01 12:41:49 +02:00
2026-06-14 23:58:17 +02:00
2026-05-31 12:52:40 +02:00
2026-06-14 23:58:17 +02:00
2026-05-01 12:41:49 +02:00
2026-06-13 16:21:12 +02:00
2026-09-11 21:25:46 +02:00
2026-08-21 17:50:22 +02:00
2026-06-19 17:43:51 +02:00
2026-07-21 18:59:26 +02:00
2026-09-15 13:43:19 +02:00
2026-09-17 18:14:40 +02:00
2026-08-21 17:50:22 +02:00
2026-09-28 20:24:21 +02:00
2026-06-18 22:10:26 +02:00
2026-05-21 12:08:41 +02:00
2026-05-31 12:52:40 +02:00
2026-08-21 17:50:22 +02:00
2026-05-31 12:52:40 +02:00
2026-09-18 09:00:41 +02:00
2026-10-06 18:46:40 +02:00