Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net) |
Andrea Campanella | 7167ebb | 2020-02-24 09:56:38 +0100 | [diff] [blame] | 3 | * Copyright 2020-present Open Networking Foundation |
| 4 | |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 5 | * Licensed under the Apache License, Version 2.0 (the "License"); |
| 6 | * you may not use this file except in compliance with the License. |
| 7 | * You may obtain a copy of the License at |
Andrea Campanella | 7167ebb | 2020-02-24 09:56:38 +0100 | [diff] [blame] | 8 | |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 9 | * http://www.apache.org/licenses/LICENSE-2.0 |
Andrea Campanella | 7167ebb | 2020-02-24 09:56:38 +0100 | [diff] [blame] | 10 | |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 11 | * Unless required by applicable law or agreed to in writing, software |
| 12 | * distributed under the License is distributed on an "AS IS" BASIS, |
| 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 14 | * See the License for the specific language governing permissions and |
| 15 | * limitations under the License. |
| 16 | */ |
David K. Bainbridge | adf422d | 2021-04-09 16:06:41 +0000 | [diff] [blame] | 17 | /* |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 18 | * NOTE: This file was generated, manual edits will be overwritten! |
| 19 | * |
| 20 | * Generated by 'goCodeGenerator.py': |
| 21 | * https://github.com/cboling/OMCI-parser/README.md |
| 22 | */ |
| 23 | |
| 24 | package generated |
| 25 | |
| 26 | import "github.com/deckarep/golang-set" |
| 27 | |
| 28 | // XdslLineConfigurationProfilePart3ClassID is the 16-bit ID for the OMCI |
| 29 | // Managed entity xDSL line configuration profile part 3 |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 30 | const XdslLineConfigurationProfilePart3ClassID = ClassID(106) // 0x006a |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 31 | |
| 32 | var xdsllineconfigurationprofilepart3BME *ManagedEntityDefinition |
| 33 | |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 34 | // XdslLineConfigurationProfilePart3 (Class ID: #106 / 0x006a) |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 35 | // The overall xDSL line configuration profile is modelled in several parts, all of which are |
| 36 | // associated together through a common ME ID (the client PPTP xDSL UNI part 1 has a single |
| 37 | // pointer, which refers to the entire set of line configuration profile parts). |
| 38 | // |
| 39 | // Relationships |
| 40 | // An instance of this ME may be associated with zero or more instances of an xDSL UNI. |
| 41 | // |
| 42 | // Attributes |
| 43 | // Managed Entity Id |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 44 | // This attribute uniquely identifies each instance of this ME. All xDSL and VDSL2 line |
| 45 | // configuration profiles and extensions that pertain to a given PPTP xDSL UNI must share a common |
| 46 | // ME ID. (R, setbycreate) (mandatory) (2-bytes) |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 47 | // |
| 48 | // Loop Diagnostics Mode Forced Ldsf |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 49 | // Loop diagnostics mode forced (LDSF): This configuration parameter forces the line into loop |
| 50 | // diagnostic mode via the xTU-C. It is only valid for [ITUT-G.992.3], [ITUT-G.992.4] and |
| 51 | // [ITUT-G.992.5]. It is defined as follows. |
| 52 | // |
| 53 | // 0 Inhibits the xTU-C from performing loop diagnostic mode procedures on the line. Loop |
| 54 | // diagnostic mode procedures may still be initiated by the xTU-R. |
| 55 | // |
| 56 | // 1 Forces the xTU-C to perform loop diagnostics procedures. |
| 57 | // |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 58 | // Only while the line power management state is L3 can the line be forced into loop diagnostic |
| 59 | // mode. When loop diagnostic procedures complete successfully, the ONU resets this attribute to 0. |
| 60 | // The line remains in the L3 idle state. The loop diagnostics data are available at least until |
| 61 | // the line is forced to the L0 state. As long as loop diagnostic procedures have not completed |
| 62 | // successfully, attempts are made to do so, until the loop diagnostic mode is no longer forced on |
| 63 | // the line through this configuration parameter. If loop diagnostic procedures cannot be completed |
| 64 | // successfully after a vendordiscretionary number of retries or within a vendor-discretionary |
| 65 | // timeout, then an initialization failure occurs. (R,-W, setbycreate) (mandatory) (1-byte) |
| 66 | // |
| 67 | // Automode Cold Start Forced |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 68 | // This attribute is defined to improve testing of the performance of xTUs supporting automode. |
| 69 | // Valid values are 0 and 1. A change in value of this attribute indicates a change in loop |
| 70 | // conditions applied to the devices under test. The xTUs reset any historical information used for |
| 71 | // automode, for shortening an ITU-T G.994.1 handshake, or for shortening the initialization |
| 72 | // procedure. |
| 73 | // |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 74 | // Automode is defined as the case where multiple operation modes are enabled in xTSE (Table |
| 75 | // 9.7.12-1) and where the selection of the operation mode to be used for transmission depends, not |
| 76 | // only on the common capabilities of both xTUs (as exchanged in [ITU-T G.994.1]), but also on |
| 77 | // achievable data rates under given loop conditions. (R,-W, setbycreate) (mandatory if automode is |
| 78 | // supported) (1-byte) |
| 79 | // |
| 80 | // L2 Atpr |
| 81 | // L2ATPR: This parameter specifies the maximum aggregate transmit power reduction that can be |
| 82 | // performed in the L2 request (i.e., at the transition of L0 to L2 state) or through a single |
| 83 | // power trim in the L2 state. It is only valid for [ITUT-G.992.3], [ITUT-G.992.4] and |
| 84 | // [ITUT-G.992.5]. This attribute ranges from 0 (0-dB) dB to 31 (31-dB). (R, W, setbycreate) |
| 85 | // (mandatory) (1 byte) |
| 86 | // |
| 87 | // L2 Atprt |
| 88 | // L2ATPRT: This parameter specifies the total maximum aggregate transmit power reduction (in |
| 89 | // decibels) that can be performed in an L2 state. This is the sum of all reductions of L2 requests |
| 90 | // (i.e., at transitions from L0 to L2 state) and power trims. This attribute ranges from 0 (0 dB) |
| 91 | // dB to 31 (31 dB). (R, W, setbycreate) (mandatory) (1 byte) |
| 92 | // |
| 93 | // Force Inp Downstream |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 94 | // When set to 1, the FORCEINPds attribute forces the framer settings of all downstream bearer |
| 95 | // channels to be selected such that the impulse noise protection (INP) computed according to the |
| 96 | // formula specified in the relevant Recommendation is greater than or equal to the minimal INP |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 97 | // requirement. The default value 0 disables this function. (R, W) (mandatory for [ITU-T G.993.2], |
| 98 | // optional for other Recommendations that support it) (1 byte) |
| 99 | // |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 100 | // Force Inp Upstream |
| 101 | // When set to 1, the FORCEINPus attribute forces the framer settings of all upstream bearer |
| 102 | // channels to be selected such that the INP computed according to the formula specified in the |
| 103 | // relevant Recommendation is greater than or equal to the minimal INP requirement. The default |
| 104 | // value 0 disables this function. (R, W) (mandatory for [ITU-T G.993.2], optional for other |
| 105 | // Recommendations that support it) (1 byte) |
| 106 | // |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 107 | // Update Request Flag For Near_End Test Parameters |
| 108 | // Update request flag for near-end test parameters: The UPDATE-TEST-NE attribute forces an update |
| 109 | // of all near-end test parameters that can be updated during showtime in [ITU-T G.993.2]. Update |
| 110 | // is triggered by setting this attribute to 1, whereupon the near-end test parameters are expected |
| 111 | // to be updated within 10-s, and the ONU should reset the attribute value to 0. The update request |
| 112 | // flag is independent of any autonomous update process in the system. The update request attribute |
| 113 | // must be prepared to accept another set after a period not to exceed 3-min, a period that starts |
| 114 | // when the flag is set via the OMCI or by an autonomous process in the system. (R,-W) (optional) |
| 115 | // (1-byte) |
| 116 | // |
| 117 | // Update Request Flag For Far_End Test Parameters |
| 118 | // Update request flag for far-end test parameters: The UPDATE-TEST-FE attribute forces an update |
| 119 | // of all far-end test parameters that can be updated during showtime in [ITU-T G.993.2]. Update is |
| 120 | // triggered by setting this attribute to 1, whereupon the far-end test parameters are expected to |
| 121 | // be updated within 10-s, and the ONU should reset the attribute value to 0. The update request |
| 122 | // flag is independent of any autonomous update process in the system. The update request attribute |
| 123 | // must be prepared to accept another set after a period not to exceed 3-min, a period that starts |
| 124 | // when the flag is set via the OMCI or by an autonomous process in the system. (R,-W) (optional) |
| 125 | // (1-byte) |
| 126 | // |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 127 | // The following eight attributes configure the impulse noise monitoring (INM) function, whose |
| 128 | // results are available via the xDSL impulse noise monitor PM history data ME. The downstream |
| 129 | // attributes are applicable to [ITUT G.993.2], [ITUT G.992.3] and [ITUT G.992.5]. Only [ITUT |
| 130 | // G.993.2] supports the upstream attributes. |
| 131 | // |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 132 | // Inm Inter Arrival Time Offset Upstream |
| 133 | // INM inter-arrival time offset upstream: INMIATOus is the inter-arrival time (IAT) offset that |
| 134 | // the xTU-C receiver uses to determine in which bin of the IAT histogram the IAT is reported. |
| 135 | // Valid values for INMIATO range from 3 to 511 discrete multi-tone (DMT) symbols in steps of 1 DMT |
| 136 | // symbol. (R,-W) (optional) (2-bytes) |
| 137 | // |
| 138 | // Inm Inter_Arrival Time Step Upstream |
| 139 | // INM inter-arrival time step upstream: INMIATSus is the IAT step that the xTU-C receiver uses to |
| 140 | // determine in which bin of the IAT histogram the IAT is reported. Valid values for INMIATS range |
| 141 | // from 0 to 7 in steps of 1. (R,-W) (optional) (1-byte) |
| 142 | // |
| 143 | // Inm Cluster Continuation Value Upstream |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 144 | // INMCCus is the cluster continuation value that the xTU-C receiver uses in the cluster indication |
| 145 | // process described in the applicable Recommendation. Valid values for INMCC range from 0 to 64 |
| 146 | // DMT symbols in steps of 1 DMT symbol. (R,-W) (optional) (1-byte) |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 147 | // |
| 148 | // Inm Equivalent Inp Mode Upstream |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 149 | // INM_INPEQ_MODEus is the INM equivalent INP mode that the xTU-C receiver uses in the computation |
| 150 | // of the equivalent INP, as defined in the applicable Recommendation. Valid values for |
| 151 | // INM_INPEQ_MODE are 0..4. (R,-W) (optional) (1-byte) |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 152 | // |
| 153 | // Inm Inter Arrival Time Offset Downstream |
| 154 | // INM inter-arrival time offset downstream: INMIATOds is the IAT offset that the xTU-R receiver |
| 155 | // uses to determine in which bin of the IAT histogram the IAT is reported. Valid values for |
| 156 | // INMIATO range from 3 to 511 DMT symbols in steps of 1 DMT symbol. (R,-W) (optional) (2-bytes) |
| 157 | // |
| 158 | // Inm Inter_Arrival Time Step Downstream |
| 159 | // INM inter-arrival time step downstream: INMIATSds is the IAT step that the xTU-R receiver uses |
| 160 | // to determine in which bin of the IAT histogram the IAT is reported. Valid values for INMIATS |
| 161 | // range from 0 to 7 in steps of 1. (R,-W) (optional) (1-byte) |
| 162 | // |
| 163 | // Inm Cluster Continuation Value Downstream |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 164 | // INMCCds is the cluster continuation value that the xTU-R receiver uses in the cluster indication |
| 165 | // process described in the applicable Recommendation. Valid values for INMCC range from 0 to 64 |
| 166 | // DMT symbols in steps of 1 DMT symbol. (R,-W) (optional) (1-byte) |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 167 | // |
| 168 | // Inm Equivalent Inp Mode Downstream |
Chip Boling | 610117d | 2021-09-09 11:24:34 -0500 | [diff] [blame] | 169 | // INM_INPEQ_MODEds is the INM equivalent INP mode that the xTU-R receiver uses in the computation |
| 170 | // of the equivalent INP, as defined in the applicable Recommendation. Valid values for |
| 171 | // INM_INPEQ_MODE are 0..4. (R,-W) (optional) (1-byte) |
Chip Boling | 6e27b35 | 2020-02-14 09:10:01 -0600 | [diff] [blame] | 172 | // |
| 173 | type XdslLineConfigurationProfilePart3 struct { |
| 174 | ManagedEntityDefinition |
| 175 | Attributes AttributeValueMap |
| 176 | } |
| 177 | |
| 178 | func init() { |
| 179 | xdsllineconfigurationprofilepart3BME = &ManagedEntityDefinition{ |
| 180 | Name: "XdslLineConfigurationProfilePart3", |
| 181 | ClassID: 106, |
| 182 | MessageTypes: mapset.NewSetWith( |
| 183 | Create, |
| 184 | Delete, |
| 185 | Get, |
| 186 | Set, |
| 187 | ), |
| 188 | AllowedAttributeMask: 0xffff, |
| 189 | AttributeDefinitions: AttributeDefinitionMap{ |
| 190 | 0: Uint16Field("ManagedEntityId", PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read, SetByCreate), false, false, false, 0), |
| 191 | 1: ByteField("LoopDiagnosticsModeForcedLdsf", UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 1), |
| 192 | 2: ByteField("AutomodeColdStartForced", UnsignedIntegerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 2), |
| 193 | 3: ByteField("L2Atpr", UnsignedIntegerAttributeType, 0x2000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 3), |
| 194 | 4: ByteField("L2Atprt", UnsignedIntegerAttributeType, 0x1000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 4), |
| 195 | 5: ByteField("ForceInpDownstream", UnsignedIntegerAttributeType, 0x0800, 0, mapset.NewSetWith(Read, Write), false, false, false, 5), |
| 196 | 6: ByteField("ForceInpUpstream", UnsignedIntegerAttributeType, 0x0400, 0, mapset.NewSetWith(Read, Write), false, false, false, 6), |
| 197 | 7: ByteField("UpdateRequestFlagForNearEndTestParameters", UnsignedIntegerAttributeType, 0x0200, 0, mapset.NewSetWith(Read, Write), true, true, false, 7), |
| 198 | 8: ByteField("UpdateRequestFlagForFarEndTestParameters", UnsignedIntegerAttributeType, 0x0100, 0, mapset.NewSetWith(Read, Write), true, true, false, 8), |
| 199 | 9: Uint16Field("InmInterArrivalTimeOffsetUpstream", UnsignedIntegerAttributeType, 0x0080, 0, mapset.NewSetWith(Read, Write), false, true, false, 9), |
| 200 | 10: ByteField("InmInterArrivalTimeStepUpstream", UnsignedIntegerAttributeType, 0x0040, 0, mapset.NewSetWith(Read, Write), false, true, false, 10), |
| 201 | 11: ByteField("InmClusterContinuationValueUpstream", UnsignedIntegerAttributeType, 0x0020, 0, mapset.NewSetWith(Read, Write), false, true, false, 11), |
| 202 | 12: ByteField("InmEquivalentInpModeUpstream", UnsignedIntegerAttributeType, 0x0010, 0, mapset.NewSetWith(Read, Write), false, true, false, 12), |
| 203 | 13: Uint16Field("InmInterArrivalTimeOffsetDownstream", UnsignedIntegerAttributeType, 0x0008, 0, mapset.NewSetWith(Read, Write), false, true, false, 13), |
| 204 | 14: ByteField("InmInterArrivalTimeStepDownstream", UnsignedIntegerAttributeType, 0x0004, 0, mapset.NewSetWith(Read, Write), false, true, false, 14), |
| 205 | 15: ByteField("InmClusterContinuationValueDownstream", UnsignedIntegerAttributeType, 0x0002, 0, mapset.NewSetWith(Read, Write), false, true, false, 15), |
| 206 | 16: ByteField("InmEquivalentInpModeDownstream", UnsignedIntegerAttributeType, 0x0001, 0, mapset.NewSetWith(Read, Write), false, true, false, 16), |
| 207 | }, |
| 208 | Access: CreatedByOlt, |
| 209 | Support: UnknownSupport, |
| 210 | } |
| 211 | } |
| 212 | |
| 213 | // NewXdslLineConfigurationProfilePart3 (class ID 106) creates the basic |
| 214 | // Managed Entity definition that is used to validate an ME of this type that |
| 215 | // is received from or transmitted to the OMCC. |
| 216 | func NewXdslLineConfigurationProfilePart3(params ...ParamData) (*ManagedEntity, OmciErrors) { |
| 217 | return NewManagedEntity(*xdsllineconfigurationprofilepart3BME, params...) |
| 218 | } |