blob: fa883bc7560d66993fff44f4ad8c29369c39d19e [file] [log] [blame]
Matteo Scandolof9d43412021-01-12 11:11:34 -08001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
3 * Copyright 2020-present Open Networking Foundation
4
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
8
9 * http://www.apache.org/licenses/LICENSE-2.0
10
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 */
17/*
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
24package generated
25
26import "github.com/deckarep/golang-set"
27
28// PhysicalPathTerminationPointXdslUniPart1ClassID is the 16-bit ID for the OMCI
29// Managed entity Physical path termination point xDSL UNI part 1
30const PhysicalPathTerminationPointXdslUniPart1ClassID ClassID = ClassID(98)
31
32var physicalpathterminationpointxdslunipart1BME *ManagedEntityDefinition
33
34// PhysicalPathTerminationPointXdslUniPart1 (class ID #98)
35// This ME represents the point where physical paths terminate on an xDSL CO modem (xTU-C). The
36// xDSL ME family is used for ADSL VDSL2 and FAST services. A legacy family of VDSL MEs remains
37// valid for ITUT G.993.1 VDSL, if needed. It is documented in [ITUT G.983.2].
38//
39// The ONU automatically creates an instance of this ME per port:
40//
41// o when the ONU has xDSL ports built into its factory configuration;
42//
43// o when a cardholder is provisioned to expect a circuit pack of the xDSL type;
44//
45// o when a cardholder provisioned for plug-and-play is equipped with a circuit pack of the xDSL
46// type. Note that the installation of a plug-and-play card may indicate the presence of xDSL ports
47// via equipment ID as well as its type, and indeed may cause the ONU to instantiate a port-mapping
48// package that specifies xDSL ports.
49//
50// The ONU automatically deletes instances of this ME when a cardholder is neither provisioned to
51// expect an xDSL circuit pack, nor is it equipped with an xDSL circuit pack.
52//
53// Relationships
54// An instance of this ME is associated with each instance of a real or pre-provisioned xDSL port.
55//
56// Attributes
57// Managed Entity Id
58// Managed entity ID: This attribute uniquely identifies each instance of this ME. This 2 byte
59// number indicates the physical position of the UNI. The six LSBs of the first byte are the slot
60// ID, defined in clause 9.1.5. The two MSBs indicate the channel number in some of the implicitly
61// linked MEs, and must be 0 in the PPTP itself. This reduces the possible number of physical slots
62// to 64. The second byte is the port ID, with the range 1..255. (R) (mandatory) (2-bytes)
63//
64// Loopback Configuration
65// Upon ME instantiation, the ONU sets this attribute to 0. (R,-W) (mandatory) (1-byte)
66//
67// Administrative State
68// Administrative state: This attribute locks (1) and unlocks (0) the functions performed by this
69// ME. Administrative state is further described in clause A.1.6. (R,-W) (mandatory) (1-byte)
70//
71// Operational State
72// Operational state: This attribute indicates whether the ME is capable of performing its
73// function. Valid values are enabled (0) and disabled (1). (R) (optional) (1-byte)
74//
75// Xdsl Line Configuration Profile
76// xDSL line configuration profile: This attribute points to an instance of the xDSL line
77// configuration profiles (part 1, 2 and 3) MEs, and if necessary, also to VDSL2 line configuration
78// extensions (1 and 2) MEs, also to vectoring line configuration extension MEs. Upon ME
79// instantiation, the ONU sets this attribute to 0, a null pointer. (R,-W) (mandatory) (2-bytes)
80//
81// Xdsl Subcarrier Masking Downstream Profile
82// xDSL subcarrier masking downstream profile: This attribute points to an instance of the xDSL
83// subcarrier masking downstream profile ME. Upon ME instantiation, the ONU sets this attribute to
84// 0, a null pointer. (R,-W) (mandatory) (2-bytes)
85//
86// Xdsl Subcarrier Masking Upstream Profile
87// xDSL subcarrier masking upstream profile: This attribute points to an instance of the xDSL
88// subcarrier masking upstream profile ME. Upon ME instantiation, the ONU sets this attribute to 0,
89// a null pointer. (R,-W) (mandatory) (2-bytes)
90//
91// Xdsl Downstream Power Spectral Density Psd Mask Profile
92// xDSL downstream power spectral density (PSD) mask profile: This attribute points to an instance
93// of the xDSL PSD mask profile ME that defines downstream parameters. Upon ME instantiation, the
94// ONU sets this attribute to 0, a null pointer. (R,-W) (mandatory) (2-bytes)
95//
96// Xdsl Downstream Rfi Bands Profile
97// xDSL downstream RFI bands profile: This attribute points to an instance of the xDSL downstream
98// RFI bands profile ME. Upon ME instantiation, the ONU sets this attribute to 0, a null pointer.
99// (R,-W) (mandatory) (2-bytes)
100//
101// Arc
102// ARC: See clause A.1.4.3. (R,-W) (optional) (1-byte)
103//
104// Arc Interval
105// ARC interval: See clause A.1.4.3. (R,-W) (optional) (1-byte)
106//
107// Modem Type
108// NOTE - Many newer VDSL2 chip sets support only PTM. The ATM default is retained for backward
109// compatibility, but implementers should be aware that the default may need to be overridden by
110// provisioning before the xDSL UNI can be brought into service.
111//
112// Upstream Psd Mask Profile
113// Upstream PSD mask profile: This attribute points to an instance of the xDSL PSD mask profile
114// that defines upstream parameters. Upon ME instantiation, the ONU sets this attribute to 0, a
115// null pointer. (R,-W) (optional) (2-bytes)
116//
117// Network Specific Extensions Pointer
118// Network specific extensions pointer: This attribute points to a network address ME that contains
119// the path and name of a file containing network specific parameters for the associated UNI. Upon
120// ME instantiation, the ONU sets this attribute to 0xFFFF, a null pointer. (R,-W) (optional)
121// (2-bytes)
122//
123type PhysicalPathTerminationPointXdslUniPart1 struct {
124 ManagedEntityDefinition
125 Attributes AttributeValueMap
126}
127
128func init() {
129 physicalpathterminationpointxdslunipart1BME = &ManagedEntityDefinition{
130 Name: "PhysicalPathTerminationPointXdslUniPart1",
131 ClassID: 98,
132 MessageTypes: mapset.NewSetWith(
133 Get,
134 Set,
135 ),
136 AllowedAttributeMask: 0xfff8,
137 AttributeDefinitions: AttributeDefinitionMap{
138 0: Uint16Field("ManagedEntityId", PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read), false, false, false, 0),
139 1: ByteField("LoopbackConfiguration", UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read, Write), false, false, false, 1),
140 2: ByteField("AdministrativeState", UnsignedIntegerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, Write), false, false, false, 2),
141 3: ByteField("OperationalState", UnsignedIntegerAttributeType, 0x2000, 0, mapset.NewSetWith(Read), true, true, false, 3),
142 4: Uint16Field("XdslLineConfigurationProfile", UnsignedIntegerAttributeType, 0x1000, 0, mapset.NewSetWith(Read, Write), false, false, false, 4),
143 5: Uint16Field("XdslSubcarrierMaskingDownstreamProfile", UnsignedIntegerAttributeType, 0x0800, 0, mapset.NewSetWith(Read, Write), false, false, false, 5),
144 6: Uint16Field("XdslSubcarrierMaskingUpstreamProfile", UnsignedIntegerAttributeType, 0x0400, 0, mapset.NewSetWith(Read, Write), false, false, false, 6),
145 7: Uint16Field("XdslDownstreamPowerSpectralDensityPsdMaskProfile", UnsignedIntegerAttributeType, 0x0200, 0, mapset.NewSetWith(Read, Write), false, false, false, 7),
146 8: Uint16Field("XdslDownstreamRfiBandsProfile", UnsignedIntegerAttributeType, 0x0100, 0, mapset.NewSetWith(Read, Write), false, false, false, 8),
147 9: ByteField("Arc", UnsignedIntegerAttributeType, 0x0080, 0, mapset.NewSetWith(Read, Write), true, true, false, 9),
148 10: ByteField("ArcInterval", UnsignedIntegerAttributeType, 0x0040, 0, mapset.NewSetWith(Read, Write), false, true, false, 10),
149 11: ByteField("ModemType", UnsignedIntegerAttributeType, 0x0020, 0, mapset.NewSetWith(Read, Write), false, true, false, 11),
150 12: Uint16Field("UpstreamPsdMaskProfile", UnsignedIntegerAttributeType, 0x0010, 0, mapset.NewSetWith(Read, Write), false, true, false, 12),
151 13: Uint16Field("NetworkSpecificExtensionsPointer", UnsignedIntegerAttributeType, 0x0008, 0, mapset.NewSetWith(Read, Write), false, true, false, 13),
152 },
153 Access: CreatedByOnu,
154 Support: UnknownSupport,
155 Alarms: AlarmMap{
156 0: "NE LOF",
157 1: "NE LOS",
158 2: "NE LOL",
159 3: "NE LPR",
160 4: "Card alm",
161 5: "FE LOF",
162 6: "FE LOS",
163 7: "FE LOL",
164 8: "FE LPR",
165 9: "DRT up",
166 10: "DRT down",
167 11: "LINIT",
168 12: "LCD",
169 13: "NCD",
170 14: "LCD-FE",
171 15: "NCD-FE",
172 16: "File not found",
173 17: "OOS",
174 18: "OOS-FE",
175 19: "LOR",
176 20: "LOM",
177 21: "LOR-FE",
178 22: "LOM-FE",
179 },
180 }
181}
182
183// NewPhysicalPathTerminationPointXdslUniPart1 (class ID 98) creates the basic
184// Managed Entity definition that is used to validate an ME of this type that
185// is received from or transmitted to the OMCC.
186func NewPhysicalPathTerminationPointXdslUniPart1(params ...ParamData) (*ManagedEntity, OmciErrors) {
187 return NewManagedEntity(*physicalpathterminationpointxdslunipart1BME, params...)
188}