From 95cbc1a2e0b15e262774fee78e78f4684f088bd9 Mon Sep 17 00:00:00 2001 From: diijkstra <16804536+diijkstra@users.noreply.github.com> Date: Fri, 13 Mar 2026 22:43:36 +0100 Subject: [PATCH] TEG-S562: Correctly assign SFP Looks like the SFP numbers are reversed, since GPIOs were mapped to SFP numbers, the need to be reversed too. This fixes swapped display of SFP stats on the webpage. --- doc/devices/TEG-S562.md | 18 +++++++++--------- machine.c | 14 +++++++------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/doc/devices/TEG-S562.md b/doc/devices/TEG-S562.md index 6a49427..8eab4e9 100644 --- a/doc/devices/TEG-S562.md +++ b/doc/devices/TEG-S562.md @@ -39,10 +39,10 @@ Bottom ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ ┌──────────┐ ┌──────────┐ │ -│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ SFP │ │ SFP │ │ +│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ SFP 2 │ │ SFP 1 │ │ │ │ RJ45 │ │ RJ45 │ │ RJ45 │ │ RJ45 │ │ PORT 5 │ │ PORT 6 │ │ -│ │ PORT 1 │ │ PORT 2 │ │ PORT 3 │ │ PORT 4 │ │ MAC ? │ │ MAC ? │ │ -│ │ MAC 4 │ │ MAC 5 │ │ MAC 6 │ │ MAC 7 │ │ SerDes ? │ │ SerDes ? │ │ +│ │ PORT 1 │ │ PORT 2 │ │ PORT 3 │ │ PORT 4 │ │ MAC 8 │ │ MAC 3 │ │ +│ │ MAC 4 │ │ MAC 5 │ │ MAC 6 │ │ MAC 7 │ │ SerDes 0 │ │ SerDes 1 │ │ │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` @@ -106,9 +106,9 @@ GPIO mapping unknown. | 00000002 | GPIO01 | | GPIO33 | | | 00000004 | GPIO02 | | GPIO34 | Random changes | | 00000008 | GPIO03 | | GPIO35 | | -| 00000010 | GPIO04 | | GPIO36 | SFP1 Present | -| 00000020 | GPIO05 | | GPIO37 | SFP1 RX Los | -| 00000040 | GPIO06 | | GPIO38 | SFP2 Present | +| 00000010 | GPIO04 | | GPIO36 | SFP2 Present | +| 00000020 | GPIO05 | | GPIO37 | SFP2 RX Los | +| 00000040 | GPIO06 | | GPIO38 | SFP1 Present | | 00000080 | GPIO07 | | GPIO39 | | | 00000100 | GPIO08 | | GPIO40 | | | 00000200 | GPIO09 | | GPIO41 | | @@ -120,11 +120,11 @@ GPIO mapping unknown. | 00008000 | GPIO15 | PORT2 Link | GPIO47 | SFP1 I2C SDA | | 00010000 | GPIO16 | PORT2-LED-GREEN | GPIO48 | SFP2 I2C CLK | | 00020000 | GPIO17 | PORT2-LED-AMBER | GPIO49 | SFP2 I2C SDA | -| 00040000 | GPIO18 | PORT3 Link | GPIO50 | SFP2 Rx LOS | -| 00080000 | GPIO19 | PORT3-LED-GREEN | GPIO51 | SFP1 TX Disable | +| 00040000 | GPIO18 | PORT3 Link | GPIO50 | SFP1 Rx LOS | +| 00080000 | GPIO19 | PORT3-LED-GREEN | GPIO51 | SFP2 TX Disable | | 00100000 | GPIO20 | PORT4-LED-AMBER | GPIO52 | | | 00200000 | GPIO21 | PORT4 Link | GPIO53 | | -| 00400000 | GPIO22 | PORT4-LED-GREEN | GPIO54 | SFP2 TX Disable | +| 00400000 | GPIO22 | PORT4-LED-GREEN | GPIO54 | SFP1 TX Disable | | 00800000 | GPIO23 | PORT4-LED-AMBER | GPIO55 | | | 01000000 | GPIO24 | | GPIO56 | | | 02000000 | GPIO25 | | GPIO57 | | diff --git a/machine.c b/machine.c index 14f2579..7c924b1 100644 --- a/machine.c +++ b/machine.c @@ -327,15 +327,15 @@ __code const struct machine machine = { .n_sfp = 2, .log_to_phys_port = {0, 0, 0, 6, 1, 2, 3, 4, 5}, .phys_to_log_port = {4, 5, 6, 7, 3, 8, 0, 0, 0}, - .is_sfp = {0, 0, 0, 2, 0, 0, 0, 0, 1}, - .sfp_port[0].pin_detect = GPIO36_PWM_OUT, - .sfp_port[0].pin_los = GPIO37, - .sfp_port[0].pin_tx_disable = GPIO51_I2C_SDA2_UART1_RX, + .is_sfp = {0, 0, 0, 1, 0, 0, 0, 0, 2}, + .sfp_port[0].pin_detect = GPIO38, + .sfp_port[0].pin_los = GPIO50_I2C_SCL2_UART1_TX, + .sfp_port[0].pin_tx_disable = GPIO54_ACL_BIT2_EN, .sfp_port[0].sds = 0, .sfp_port[0].i2c = { .sda = GPIO47_I2C_SDA0, .scl = GPIO46_I2C_SCL0 }, - .sfp_port[1].pin_detect = GPIO38, - .sfp_port[1].pin_los = GPIO50_I2C_SCL2_UART1_TX, - .sfp_port[1].pin_tx_disable = GPIO54_ACL_BIT2_EN, + .sfp_port[1].pin_detect = GPIO36_PWM_OUT, + .sfp_port[1].pin_los = GPIO37, + .sfp_port[1].pin_tx_disable = GPIO51_I2C_SDA2_UART1_RX, .sfp_port[1].sds = 1, .sfp_port[1].i2c = { .sda = GPIO49_I2C_SDA1, .scl = GPIO48_I2C_SCL1 }, .reset_pin = GPIO_NA,