diff --git a/userspace/snmpd/WR-SWITCH-MIB.txt b/userspace/snmpd/WR-SWITCH-MIB.txt index cf6fcdfe094c5339cd7f7ace456899710e6b4e1a..1a6fecca98c7f94f021abe2a0de126f7cfb8a011 100644 --- a/userspace/snmpd/WR-SWITCH-MIB.txt +++ b/userspace/snmpd/WR-SWITCH-MIB.txt @@ -26,6 +26,13 @@ wrSwitchMIB MODULE-IDENTITY DESCRIPTION "White Rabbit Switch internal details " + REVISION "202311300000Z" + DESCRIPTION + "Updates for v7.0 WRS firmware release + Added objects: + - wrsPtpInstanceExtensionCfg + " + REVISION "202303260000Z" DESCRIPTION "Updates for v6.1 WRS firmware release @@ -2917,7 +2924,8 @@ WrsPtpInstanceEntry ::= wrsPtpInstancePeerVid INTEGER, wrsPtpInstanceVlanNum INTEGER, wrsPtpInstanceVlanListStr DisplayString, - wrsPtpInstanceStatusError INTEGER + wrsPtpInstanceStatusError INTEGER, + wrsPtpInstanceExtensionCfg INTEGER } wrsPtpInstancePortIndex OBJECT-TYPE @@ -3199,6 +3207,20 @@ wrsPtpInstanceVlanListStr OBJECT-TYPE " ::= { wrsPtpInstanceEntry 26 } +wrsPtpInstanceExtensionCfg OBJECT-TYPE + SYNTAX INTEGER { --ppsi/include/ppsi/ppsi.h + na(0), + none(1), -- PPSI_EXT_NONE + whiteRabbit(2), -- PPSI_EXT_WR + l1Sync(3), -- PPSI_EXT_L1S + haWrAutonegotiation(4) -- autonegotiation between HA nad WR + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Extension configured on the PTP Instance" + ::= { wrsPtpInstanceEntry 27 } + --wrsNetworking --Configuration diff --git a/userspace/snmpd/oids.txt b/userspace/snmpd/oids.txt index 1bcdb1d4625a6724130a6a8e68dffd4484aafdbb..e20c7a2fd095def2ac2eb7e9d1727d52645070f5 100644 --- a/userspace/snmpd/oids.txt +++ b/userspace/snmpd/oids.txt @@ -310,6 +310,7 @@ "wrsPtpInstanceVlanNum" "1.3.6.1.4.1.96.100.7.8.1.24" "wrsPtpInstanceVlanListStr" "1.3.6.1.4.1.96.100.7.8.1.25" "wrsPtpInstanceStatusError" "1.3.6.1.4.1.96.100.7.8.1.26" +"wrsPtpInstanceExtensionCfg" "1.3.6.1.4.1.96.100.7.8.1.27" "wrsId" "1.3.6.1.4.1.96.100.1000" "wrsIdUnkn" "1.3.6.1.4.1.96.100.1000.1" "wrsIdUnknUnkn" "1.3.6.1.4.1.96.100.1000.1.1" diff --git a/userspace/snmpd/wrsPtpInstanceTable.c b/userspace/snmpd/wrsPtpInstanceTable.c index 211ac35adf3e977e8e950d0d6ca0bb8c6c825ca9..069b2b86565ea47ee5084a73b3cac1150ecaf595 100644 --- a/userspace/snmpd/wrsPtpInstanceTable.c +++ b/userspace/snmpd/wrsPtpInstanceTable.c @@ -41,6 +41,7 @@ static struct pickinfo wrsPtpInstanceTable_pickinfo[] = { FIELD(wrsPtpInstanceTable_s, ASN_OCTET_STR, wrsPtpInstanceVlanListStr), FIELD(wrsPtpInstanceTable_s, ASN_INTEGER, wrsPtpInstanceStatusError), + FIELD(wrsPtpInstanceTable_s, ASN_INTEGER, wrsPtpInstanceExtensionCfg), }; static char *slog_obj_name; static char *wrsPtpInstanceStatusError_str = "wrsPtpInstanceStatusError"; @@ -249,6 +250,11 @@ time_t wrsPtpInstanceTable_data_fill(unsigned int *n_rows) } } } + if (ppsi_i->cfg.extAutonegEnable == PPSI_EXT_AUTONEG_ENABLE) { + pit->wrsPtpInstanceExtensionCfg = WRS_PTP_INSTANCE_EXTENSION_CFG_HAWRAUTONEGOTIATION; + } else { + pit->wrsPtpInstanceExtensionCfg = ppsi_i->cfg.extension + 1; + } } retries++; diff --git a/userspace/snmpd/wrsPtpInstanceTable.h b/userspace/snmpd/wrsPtpInstanceTable.h index 2c213e6e0dfaf36b3b80488a839dafcafef02cc1..2c4920d88779c79e70067d27c51ceaf3724564d3 100644 --- a/userspace/snmpd/wrsPtpInstanceTable.h +++ b/userspace/snmpd/wrsPtpInstanceTable.h @@ -15,6 +15,8 @@ * equal to 0 (NA),shouldn't happen in * normal operation */ +#define WRS_PTP_INSTANCE_EXTENSION_CFG_HAWRAUTONEGOTIATION 4 + struct wrsPtpInstanceTable_s { uint32_t wrsPtpInstancePortIndex; /* not reported, index fields has t o be marked @@ -47,6 +49,7 @@ struct wrsPtpInstanceTable_s { * because SNMP does not allow table within table */ char wrsPtpInstanceVlanListStr[WRSPTPINSTANCEVLANLISTSTRLEN]; int wrsPtpInstanceStatusError; + int wrsPtpInstanceExtensionCfg; }; extern struct wrsPtpInstanceTable_s wrsPtpInstanceTable_array[PP_MAX_LINKS];