blob: cb35f78dd4f75c8fb68b512e8c378ea4669b09be [file] [log] [blame]
Chip Boling6e27b352020-02-14 09:10:01 -06001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
Andrea Campanella7167ebb2020-02-24 09:56:38 +01003 * Copyright 2020-present Open Networking Foundation
4
Chip Boling6e27b352020-02-14 09:10:01 -06005 * 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 Campanella7167ebb2020-02-24 09:56:38 +01008
Chip Boling6e27b352020-02-14 09:10:01 -06009 * http://www.apache.org/licenses/LICENSE-2.0
Andrea Campanella7167ebb2020-02-24 09:56:38 +010010
Chip Boling6e27b352020-02-14 09:10:01 -060011 * 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 */
Chip Boling34ebcb62021-02-02 12:13:58 -060017/*
Chip Boling6e27b352020-02-14 09:10:01 -060018 * 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// PhysicalPathTerminationPointMocaUniClassID is the 16-bit ID for the OMCI
29// Managed entity Physical path termination point MoCA UNI
Chip Boling610117d2021-09-09 11:24:34 -050030const PhysicalPathTerminationPointMocaUniClassID = ClassID(162) // 0x00a2
Chip Boling6e27b352020-02-14 09:10:01 -060031
32var physicalpathterminationpointmocauniBME *ManagedEntityDefinition
33
Chip Boling610117d2021-09-09 11:24:34 -050034// PhysicalPathTerminationPointMocaUni (Class ID: #162 / 0x00a2)
Chip Boling6e27b352020-02-14 09:10:01 -060035// This ME represents an MoCA UNI, where physical paths terminate and physical path level functions
36// are performed.
37//
38// The ONU automatically creates an instance of this ME per port as follows.
39//
40// o When the ONU has MoCA ports built into its factory configuration.
41//
42// o When a cardholder is provisioned to expect a circuit pack of the MoCA type.
43//
44// o When a cardholder provisioned for plug-and-play is equipped with a circuit pack of the MoCA
45// type. Note that the installation of a plug-and-play card may indicate the presence of MoCA ports
46// via equipment ID as well as its type, and indeed may cause the ONU to instantiate a port-mapping
47// package that specifies MoCA ports.
48//
49// The ONU automatically deletes instances of this ME when a cardholder is neither provisioned to
50// expect an MoCA circuit pack, nor is it equipped with an MoCA circuit pack.
51//
52// Relationships
53// An instance of this ME is associated with each real or pre-provisioned MoCA port.
54//
55// Attributes
56// Managed Entity Id
Chip Boling610117d2021-09-09 11:24:34 -050057// This attribute uniquely identifies each instance of this ME. This 2-byte number is directly
58// associated with the physical position of the UNI. The first byte is the slot ID (defined in
59// clause 9.1.5). The second byte is the port ID, with the range 1..255. (R) (mandatory) (2-bytes)
Chip Boling6e27b352020-02-14 09:10:01 -060060//
61// Loopback Configuration
Chip Boling610117d2021-09-09 11:24:34 -050062// 0 No loopback
63//
64// 3 Loopback3, loopback of downstream traffic after PHY transceiver, depicted in Figure 9.10.1-1.
65//
Chip Boling6e27b352020-02-14 09:10:01 -060066// Upon ME instantiation, the ONU sets this attribute to 0. (R,-W) (optional) (1-byte)
67//
Chip Boling610117d2021-09-09 11:24:34 -050068// This attribute sets the MoCA loopback configuration. Note that normal bridge behaviour may
69// defeat the loopback signal unless broadcast MAC addresses are used.
70//
Chip Boling6e27b352020-02-14 09:10:01 -060071// Administrative State
Chip Boling610117d2021-09-09 11:24:34 -050072// This attribute locks (1) and unlocks (0) the functions performed by this ME. Administrative
73// state is further described in clause A.1.6. (R,-W) (mandatory) (1-byte)
Chip Boling6e27b352020-02-14 09:10:01 -060074//
75// Operational State
Chip Boling610117d2021-09-09 11:24:34 -050076// This attribute indicates whether the ME is capable of performing its function. Valid values are
77// enabled (0) and disabled (1). (R) (optional) (1-byte)
Chip Boling6e27b352020-02-14 09:10:01 -060078//
79// Max Frame Size
Chip Boling610117d2021-09-09 11:24:34 -050080// This attribute denotes the maximum frame size allowed across this interface. Upon ME
81// instantiation, the ONU sets this attribute to 1518. (R,-W) (mandatory) (2-bytes)
Chip Boling6e27b352020-02-14 09:10:01 -060082//
83// Arc
Chip Boling610117d2021-09-09 11:24:34 -050084// See clause A.1.4.3. (R,-W) (optional) (1-byte)
Chip Boling6e27b352020-02-14 09:10:01 -060085//
86// Arc Interval
Chip Boling610117d2021-09-09 11:24:34 -050087// See clause A.1.4.3. (R,-W) (optional) (1-byte)
Chip Boling6e27b352020-02-14 09:10:01 -060088//
89// Pppoe Filter
Chip Boling610117d2021-09-09 11:24:34 -050090// This attribute controls filtering of PPPoE packets on this MoCA port. When its value is 1, all
91// packets other than PPPoE packets are discarded. The default 0 accepts packets of all types.
92// (R,-W) (optional) (1-byte)
Chip Boling6e27b352020-02-14 09:10:01 -060093//
94// Network Status
Chip Boling610117d2021-09-09 11:24:34 -050095// This attribute indicates the networking state of the MoCA interface as follows.
96//
97// 0 The interface has not joined an MoCA network.
98//
99// 1 The interface has joined an MoCA network.
100//
101// 2 The interface has joined an MoCA network and is currently the network coordinator.
102//
Chip Boling6e27b352020-02-14 09:10:01 -0600103// (R) (mandatory) (1-byte)
104//
105// Password
Chip Boling610117d2021-09-09 11:24:34 -0500106// This attribute specifies the MoCA encryption key. It is an ASCII string of 17 decimal digits.
107// Upon ME instantiation, the ONU sets this attribute to 17 null bytes. (R,-W) (mandatory)
Chip Boling6e27b352020-02-14 09:10:01 -0600108// (17-bytes)
109//
110// Privacy Enabled
Chip Boling610117d2021-09-09 11:24:34 -0500111// This attribute activates (1) link-layer security. The default value 0 deactivates it. (R,-W)
112// (mandatory) (1-byte)
Chip Boling6e27b352020-02-14 09:10:01 -0600113//
114// Minimum Bandwidth Alarm Threshold
Chip Boling610117d2021-09-09 11:24:34 -0500115// This attribute specifies the minimum desired PHY link bandwidth between two nodes. If the actual
116// bandwidth is lower, an LL alarm is declared. Valid values are 0 to 0x0410 (260-Mbit/s) in
117// 0.25-Mbit/s increments. The default value is 0x02D0 (180-Mbit/s). The value 0 disables the
118// threshold. (R,-W) (optional) (2-bytes)
Chip Boling6e27b352020-02-14 09:10:01 -0600119//
120// Frequency Mask
Chip Boling610117d2021-09-09 11:24:34 -0500121// This attribute is a bit map of the centre frequencies that the interface is permitted to use,
122// where each bit represents a centre frequency. The LSB (b[1]) corresponds to centre frequency
123// 800-MHz. The next significant bit (b[2]) corresponds to centre frequency 825-MHz. The 28th bit
124// (b[28]) corresponds to centre frequency 1500-MHz. The four MSBs are not used. (R,-W) (optional)
125// (4-bytes)
Chip Boling6e27b352020-02-14 09:10:01 -0600126//
127// Rf Channel
Chip Boling610117d2021-09-09 11:24:34 -0500128// This attribute reports the frequency to which the MoCA interface is currently tuned, in
129// megahertz. (R) (mandatory) (2-bytes)
Chip Boling6e27b352020-02-14 09:10:01 -0600130//
131// Last Operational Frequency
Chip Boling610117d2021-09-09 11:24:34 -0500132// This attribute reports the frequency to which the MoCA interface was tuned when last
133// operational, in megahertz. (R) (mandatory) (2-bytes)
Chip Boling6e27b352020-02-14 09:10:01 -0600134//
135type PhysicalPathTerminationPointMocaUni struct {
136 ManagedEntityDefinition
137 Attributes AttributeValueMap
138}
139
140func init() {
141 physicalpathterminationpointmocauniBME = &ManagedEntityDefinition{
142 Name: "PhysicalPathTerminationPointMocaUni",
143 ClassID: 162,
144 MessageTypes: mapset.NewSetWith(
145 Get,
146 Set,
147 ),
148 AllowedAttributeMask: 0xfffc,
149 AttributeDefinitions: AttributeDefinitionMap{
150 0: Uint16Field("ManagedEntityId", PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read), false, false, false, 0),
151 1: ByteField("LoopbackConfiguration", UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read, Write), false, true, false, 1),
152 2: ByteField("AdministrativeState", UnsignedIntegerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, Write), false, false, false, 2),
153 3: ByteField("OperationalState", UnsignedIntegerAttributeType, 0x2000, 0, mapset.NewSetWith(Read), true, true, false, 3),
154 4: Uint16Field("MaxFrameSize", UnsignedIntegerAttributeType, 0x1000, 0, mapset.NewSetWith(Read, Write), false, false, false, 4),
155 5: ByteField("Arc", UnsignedIntegerAttributeType, 0x0800, 0, mapset.NewSetWith(Read, Write), true, true, false, 5),
156 6: ByteField("ArcInterval", UnsignedIntegerAttributeType, 0x0400, 0, mapset.NewSetWith(Read, Write), false, true, false, 6),
157 7: ByteField("PppoeFilter", UnsignedIntegerAttributeType, 0x0200, 0, mapset.NewSetWith(Read, Write), false, true, false, 7),
158 8: ByteField("NetworkStatus", UnsignedIntegerAttributeType, 0x0100, 0, mapset.NewSetWith(Read), false, false, false, 8),
159 9: MultiByteField("Password", OctetsAttributeType, 0x0080, 17, toOctets("AAAAAAAAAAAAAAAAAAAAAAA="), mapset.NewSetWith(Read, Write), false, false, false, 9),
160 10: ByteField("PrivacyEnabled", UnsignedIntegerAttributeType, 0x0040, 0, mapset.NewSetWith(Read, Write), false, false, false, 10),
161 11: Uint16Field("MinimumBandwidthAlarmThreshold", UnsignedIntegerAttributeType, 0x0020, 0, mapset.NewSetWith(Read, Write), false, true, false, 11),
162 12: Uint32Field("FrequencyMask", UnsignedIntegerAttributeType, 0x0010, 0, mapset.NewSetWith(Read, Write), false, true, false, 12),
163 13: Uint16Field("RfChannel", UnsignedIntegerAttributeType, 0x0008, 0, mapset.NewSetWith(Read), false, false, false, 13),
164 14: Uint16Field("LastOperationalFrequency", UnsignedIntegerAttributeType, 0x0004, 0, mapset.NewSetWith(Read), false, false, false, 14),
165 },
166 Access: CreatedByOnu,
167 Support: UnknownSupport,
Chip Boling34ebcb62021-02-02 12:13:58 -0600168 Alarms: AlarmMap{
169 0: "MoCA LOL",
170 1: "MoCA limited link (LL)",
171 },
Chip Boling6e27b352020-02-14 09:10:01 -0600172 }
173}
174
175// NewPhysicalPathTerminationPointMocaUni (class ID 162) creates the basic
176// Managed Entity definition that is used to validate an ME of this type that
177// is received from or transmitted to the OMCC.
178func NewPhysicalPathTerminationPointMocaUni(params ...ParamData) (*ManagedEntity, OmciErrors) {
179 return NewManagedEntity(*physicalpathterminationpointmocauniBME, params...)
180}