nl-linux 0.3.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +5 -0
  3. data/CHANGELOG.md +6 -0
  4. data/Rakefile +14 -2
  5. data/generated/nl/linux/binder.rb +172 -44
  6. data/generated/nl/linux/conntrack.rb +1293 -370
  7. data/generated/nl/linux/dev_energymodel.rb +278 -93
  8. data/generated/nl/linux/devlink.rb +5654 -1954
  9. data/generated/nl/linux/dpll.rb +1838 -669
  10. data/generated/nl/linux/drm_ras.rb +234 -72
  11. data/generated/nl/linux/ethtool.rb +6683 -2885
  12. data/generated/nl/linux/fou.rb +308 -129
  13. data/generated/nl/linux/handshake.rb +277 -99
  14. data/generated/nl/linux/lockd.rb +88 -33
  15. data/generated/nl/linux/mptcp_pm.rb +639 -186
  16. data/generated/nl/linux/net_shaper.rb +782 -224
  17. data/generated/nl/linux/netdev.rb +2105 -631
  18. data/generated/nl/linux/nfsd.rb +1030 -358
  19. data/generated/nl/linux/nftables.rb +5041 -1612
  20. data/generated/nl/linux/nl80211.rb +4531 -871
  21. data/generated/nl/linux/nlctrl.rb +411 -119
  22. data/generated/nl/linux/ovpn.rb +1211 -293
  23. data/generated/nl/linux/ovs_datapath.rb +271 -106
  24. data/generated/nl/linux/ovs_flow.rb +1819 -354
  25. data/generated/nl/linux/ovs_packet.rb +257 -82
  26. data/generated/nl/linux/ovs_vport.rb +334 -132
  27. data/generated/nl/linux/psp.rb +916 -281
  28. data/generated/nl/linux/rt_addr.rb +369 -166
  29. data/generated/nl/linux/rt_link.rb +6708 -1450
  30. data/generated/nl/linux/rt_neigh.rb +919 -364
  31. data/generated/nl/linux/rt_route.rb +1034 -448
  32. data/generated/nl/linux/rt_rule.rb +775 -395
  33. data/generated/nl/linux/sunrpc_cache.rb +297 -102
  34. data/generated/nl/linux/tc.rb +9989 -1780
  35. data/generated/nl/linux/tcp_metrics.rb +327 -105
  36. data/generated/nl/linux/team.rb +279 -93
  37. data/generated/nl/linux/wireguard.rb +432 -95
  38. data/generated/nl/linux.rb +1 -0
  39. data/lib/nl/linux/nlctrl_resolver.rb +31 -0
  40. data/lib/nl/linux/version.rb +1 -1
  41. data/sig/generated/nl/linux/binder.rbs +366 -0
  42. data/sig/generated/nl/linux/conntrack.rbs +2787 -0
  43. data/sig/generated/nl/linux/dev_energymodel.rbs +636 -0
  44. data/sig/generated/nl/linux/devlink.rbs +12496 -0
  45. data/sig/generated/nl/linux/dpll.rbs +3461 -0
  46. data/sig/generated/nl/linux/drm_ras.rbs +553 -0
  47. data/sig/generated/nl/linux/ethtool.rbs +15291 -0
  48. data/sig/generated/nl/linux/fou.rbs +702 -0
  49. data/sig/generated/nl/linux/handshake.rbs +622 -0
  50. data/sig/generated/nl/linux/lockd.rbs +234 -0
  51. data/sig/generated/nl/linux/mptcp_pm.rbs +1511 -0
  52. data/sig/generated/nl/linux/net_shaper.rbs +1645 -0
  53. data/sig/generated/nl/linux/netdev.rbs +4187 -0
  54. data/sig/generated/nl/linux/nfsd.rbs +2520 -0
  55. data/sig/generated/nl/linux/nftables.rbs +10304 -0
  56. data/sig/generated/nl/linux/nl80211.rbs +9786 -0
  57. data/sig/generated/nl/linux/nlctrl.rbs +944 -0
  58. data/sig/generated/nl/linux/nlctrl_resolver.rbs +20 -0
  59. data/sig/generated/nl/linux/ovpn.rbs +2564 -0
  60. data/sig/generated/nl/linux/ovs_datapath.rbs +640 -0
  61. data/sig/generated/nl/linux/ovs_flow.rbs +3659 -0
  62. data/sig/generated/nl/linux/ovs_packet.rbs +540 -0
  63. data/sig/generated/nl/linux/ovs_vport.rbs +777 -0
  64. data/sig/generated/nl/linux/psp.rbs +1846 -0
  65. data/sig/generated/nl/linux/rt_addr.rbs +866 -0
  66. data/sig/generated/nl/linux/rt_link.rbs +13438 -0
  67. data/sig/generated/nl/linux/rt_neigh.rbs +2124 -0
  68. data/sig/generated/nl/linux/rt_route.rbs +2218 -0
  69. data/sig/generated/nl/linux/rt_rule.rbs +1726 -0
  70. data/sig/generated/nl/linux/sunrpc_cache.rbs +739 -0
  71. data/sig/generated/nl/linux/tc.rbs +19931 -0
  72. data/sig/generated/nl/linux/tcp_metrics.rbs +740 -0
  73. data/sig/generated/nl/linux/team.rbs +733 -0
  74. data/sig/generated/nl/linux/version.rbs +7 -0
  75. data/sig/generated/nl/linux/wireguard.rbs +1006 -0
  76. data/sig/generated/nl/linux.rbs +6 -0
  77. data/sig/generated/nl-linux.rbs +2 -0
  78. metadata +46 -7
@@ -3,559 +3,1373 @@
3
3
  # This file is based on Documentation/netlink/specs/dpll.yaml from Linux v7.2.
4
4
  #--
5
5
  # frozen_string_literal: true
6
- # rbs_inline: enabled
7
6
  # This code is generated by Ynl::Generator. DO NOT EDIT.
8
7
  require 'nl'
9
8
  module Nl; module Linux
10
9
  # DPLL subsystem.
11
- class Dpll < ::Nl::Family
10
+ class Dpll < ::Nl::Genl::Family
12
11
  NAME = "dpll"
13
- PROTOCOL = Ractor.make_shareable(::Nl::Protocols::Genl.new("dpll"))
12
+ VERSION = 1
13
+ # @rbs (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) -> (::Nl::Family::Session & instance)
14
+ # @rbs | [R] (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) { (instance) -> R } -> R
15
+ # @overload open(resolver: ::Nl::Linux::DEFAULT_RESOLVER, executor: nil, notification_capacity: DEFAULT_NOTIFICATION_CAPACITY)
16
+ # @param [#call] resolver
17
+ # @param [Symbol, nil] executor
18
+ # @param [Integer, nil] notification_capacity
19
+ # @return [Dpll]
20
+ # @overload open(resolver: ::Nl::Linux::DEFAULT_RESOLVER, executor: nil, notification_capacity: DEFAULT_NOTIFICATION_CAPACITY, &block)
21
+ # @param [#call] resolver
22
+ # @param [Symbol, nil] executor
23
+ # @param [Integer, nil] notification_capacity
24
+ # @yieldparam [Dpll] family
25
+ # @return [Object] the result of the block
26
+ def self.open(resolver: ::Nl::Linux::DEFAULT_RESOLVER, executor: nil, notification_capacity: DEFAULT_NOTIFICATION_CAPACITY)
27
+ super
28
+ end
29
+ # @private
14
30
  MCAST_GROUPS = Ractor.make_shareable({:"monitor" => ::Nl::McastGroup.new("monitor", nil)}) #: Hash[::Symbol, ::Nl::McastGroup]
31
+ module Constants
32
+ # temperature divider allowing userspace to calculate the
33
+ # temperature as float with three digit decimal precision.
34
+ # Value of (DPLL_A_TEMP / DPLL_TEMP_DIVIDER) is integer part of
35
+ # temperature value.
36
+ # Value of (DPLL_A_TEMP % DPLL_TEMP_DIVIDER) is fractional part of
37
+ # temperature value.
38
+ TEMP_DIVIDER = 1000
39
+ PIN_FREQUENCY_1_HZ = 1
40
+ PIN_FREQUENCY_10_KHZ = 10000
41
+ PIN_FREQUENCY_77_5_KHZ = 77500
42
+ PIN_FREQUENCY_10_MHZ = 10000000
43
+ # phase offset divider allows userspace to calculate a value of
44
+ # measured signal phase difference between a pin and dpll device
45
+ # as a fractional value with three digit decimal precision.
46
+ # Value of (DPLL_A_PHASE_OFFSET / DPLL_PHASE_OFFSET_DIVIDER) is an
47
+ # integer part of a measured phase offset value.
48
+ # Value of (DPLL_A_PHASE_OFFSET % DPLL_PHASE_OFFSET_DIVIDER) is a
49
+ # fractional part of a measured phase offset value.
50
+ PHASE_OFFSET_DIVIDER = 1000
51
+ # pin measured frequency divider allows userspace to calculate
52
+ # a value of measured input frequency as a fractional value with
53
+ # three digit decimal precision (millihertz).
54
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
55
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part of
56
+ # a measured frequency value.
57
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
58
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part of
59
+ # a measured frequency value.
60
+ PIN_MEASURED_FREQUENCY_DIVIDER = 1000
61
+ end
62
+ module Enums
63
+ # working modes a dpll can support, differentiates if and how dpll selects
64
+ # one of its inputs to syntonize with it, valid values for DPLL_A_MODE
65
+ # attribute
66
+ module Mode
67
+ # input can be only selected by sending a request to dpll
68
+ Manual = 1
69
+ # highest prio input pin auto selected by dpll
70
+ Automatic = 2
71
+ end
72
+ # provides information of dpll device lock status, valid values for
73
+ # DPLL_A_LOCK_STATUS attribute
74
+ module LockStatus
75
+ # dpll was not yet locked to any valid input (or forced by setting
76
+ # DPLL_A_MODE to DPLL_MODE_DETACHED)
77
+ Unlocked = 1
78
+ # dpll is locked to a valid signal, but no holdover available
79
+ Locked = 2
80
+ # dpll is locked and holdover acquired
81
+ LockedHoAcq = 3
82
+ # dpll is in holdover state - lost a valid lock or was forced
83
+ # by disconnecting all the pins (latter possible only
84
+ # when dpll lock-state was already DPLL_LOCK_STATUS_LOCKED_HO_ACQ,
85
+ # if dpll lock-state was not DPLL_LOCK_STATUS_LOCKED_HO_ACQ, the
86
+ # dpll's lock-state shall remain DPLL_LOCK_STATUS_UNLOCKED)
87
+ Holdover = 4
88
+ end
89
+ # if previous status change was done due to a failure, this provides
90
+ # information of dpll device lock status error.
91
+ # Valid values for DPLL_A_LOCK_STATUS_ERROR attribute
92
+ module LockStatusError
93
+ # dpll device lock status was changed without any error
94
+ None = 1
95
+ # dpll device lock status was changed due to undefined error.
96
+ # Driver fills this value up in case it is not able
97
+ # to obtain suitable exact error type.
98
+ Undefined = 2
99
+ # dpll device lock status was changed because of associated
100
+ # media got down.
101
+ # This may happen for example if dpll device was previously
102
+ # locked on an input pin of type PIN_TYPE_SYNCE_ETH_PORT.
103
+ MediaDown = 3
104
+ # the FFO (Fractional Frequency Offset) between the RX and TX
105
+ # symbol rate on the media got too high.
106
+ # This may happen for example if dpll device was previously
107
+ # locked on an input pin of type PIN_TYPE_SYNCE_ETH_PORT.
108
+ FractionalFrequencyOffsetTooHigh = 4
109
+ end
110
+ # level of quality of a clock device. This mainly applies when
111
+ # the dpll lock-status is DPLL_LOCK_STATUS_HOLDOVER.
112
+ # The current list is defined according to the table 11-7 contained
113
+ # in ITU-T G.8264/Y.1364 document. One may extend this list freely
114
+ # by other ITU-T defined clock qualities, or different ones defined
115
+ # by another standardization body (for those, please use
116
+ # different prefix).
117
+ module ClockQualityLevel
118
+ ItuOpt1Prc = 1
119
+ ItuOpt1SsuA = 2
120
+ ItuOpt1SsuB = 3
121
+ ItuOpt1Eec1 = 4
122
+ ItuOpt1Prtc = 5
123
+ ItuOpt1Eprtc = 6
124
+ ItuOpt1Eeec = 7
125
+ ItuOpt1Eprc = 8
126
+ end
127
+ # type of dpll, valid values for DPLL_A_TYPE attribute
128
+ module Type
129
+ # dpll produces Pulse-Per-Second signal
130
+ Pps = 1
131
+ # dpll drives the Ethernet Equipment Clock
132
+ Eec = 2
133
+ # generic dpll type for devices outside PPS/EEC classes
134
+ Generic = 3
135
+ end
136
+ # defines possible types of a pin, valid values for DPLL_A_PIN_TYPE
137
+ # attribute
138
+ module PinType
139
+ # aggregates another layer of selectable pins
140
+ Mux = 1
141
+ # external input
142
+ Ext = 2
143
+ # ethernet port PHY's recovered clock
144
+ SynceEthPort = 3
145
+ # device internal oscillator
146
+ IntOscillator = 4
147
+ # GNSS recovered clock
148
+ Gnss = 5
149
+ end
150
+ # defines possible direction of a pin, valid values for
151
+ # DPLL_A_PIN_DIRECTION attribute
152
+ module PinDirection
153
+ # pin used as a input of a signal
154
+ Input = 1
155
+ # pin used to output the signal
156
+ Output = 2
157
+ end
158
+ # defines possible states of a pin, valid values for
159
+ # DPLL_A_PIN_STATE attribute
160
+ module PinState
161
+ # pin connected, active input of phase locked loop
162
+ Connected = 1
163
+ # pin disconnected, not considered as a valid input
164
+ Disconnected = 2
165
+ # pin enabled for automatic input selection
166
+ Selectable = 3
167
+ end
168
+ # defines possible operational states of a pin with respect to its
169
+ # parent DPLL device, valid values for DPLL_A_PIN_OPERSTATE attribute
170
+ module PinOperstate
171
+ # pin is qualified and actively used by the DPLL
172
+ Active = 1
173
+ # pin is qualified but not actively used by the DPLL
174
+ Standby = 2
175
+ # pin does not have a valid signal
176
+ NoSignal = 3
177
+ # pin signal failed qualification (e.g. frequency or phase monitor)
178
+ QualFailed = 4
179
+ end
180
+ # Allow control (enable/disable) and status checking over features.
181
+ module FeatureState
182
+ # feature shall be disabled
183
+ Disable = 0
184
+ # feature shall be enabled
185
+ Enable = 1
186
+ end
187
+ end
188
+ module Flags
189
+ # defines possible capabilities of a pin, valid flags on
190
+ # DPLL_A_PIN_CAPABILITIES attribute
191
+ module PinCapabilities
192
+ # pin direction can be changed
193
+ DirectionCanChange = 1
194
+ # pin priority can be changed
195
+ PriorityCanChange = 2
196
+ # pin state can be changed
197
+ StateCanChange = 4
198
+ end
199
+ end
15
200
  module Structs
16
201
  end
17
202
  module AttributeSets
18
- class Dpll < ::Nl::Protocols::Genl::AttributeSet
203
+ class Dpll < ::Nl::AttributeSet
19
204
  # Abstract class
20
- class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
205
+ class Attribute < ::Nl::AttributeSet::Attribute
21
206
  end
22
207
  class Id < Attribute
23
208
  TYPE = 1
24
209
  NAME = :"id"
25
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
210
+ # @private
211
+ ORDER = 0
212
+ # @private
213
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
26
214
  end
27
215
  class ModuleName < Attribute
28
216
  TYPE = 2
29
217
  NAME = :"module_name"
30
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
218
+ # @private
219
+ ORDER = 1
220
+ # @private
221
+ DATATYPE = ::Nl::DataTypes::String.new(check: nil)
31
222
  end
32
223
  class Pad < Attribute
33
224
  TYPE = 3
34
225
  NAME = :"pad"
35
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Pad.new()
226
+ # @private
227
+ ORDER = 2
228
+ # @private
229
+ DATATYPE = ::Nl::DataTypes::Pad.new()
36
230
  end
37
231
  class ClockId < Attribute
38
232
  TYPE = 4
39
233
  NAME = :"clock_id"
40
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
234
+ # @private
235
+ ORDER = 3
236
+ # @private
237
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
41
238
  end
239
+ # Known enum values are defined in {Enums::Mode}.
42
240
  class Mode < Attribute
43
241
  TYPE = 5
44
242
  NAME = :"mode"
45
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
243
+ # @private
244
+ ORDER = 4
245
+ # @private
246
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
46
247
  end
248
+ # Known enum values are defined in {Enums::Mode}.
47
249
  class ModeSupported < Attribute
48
250
  TYPE = 6
49
251
  NAME = :"mode_supported"
50
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
51
- end
252
+ # @private
253
+ MULTI = true
254
+ # @private
255
+ ORDER = 5
256
+ # @private
257
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
258
+ end
259
+ # Known enum values are defined in {Enums::LockStatus}.
52
260
  class LockStatus < Attribute
53
261
  TYPE = 7
54
262
  NAME = :"lock_status"
55
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
263
+ # @private
264
+ ORDER = 6
265
+ # @private
266
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
56
267
  end
57
268
  class Temp < Attribute
58
269
  TYPE = 8
59
270
  NAME = :"temp"
60
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
271
+ # @private
272
+ ORDER = 7
273
+ # @private
274
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
61
275
  end
276
+ # Known enum values are defined in {Enums::Type}.
62
277
  class Type < Attribute
63
278
  TYPE = 9
64
279
  NAME = :"type"
65
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
280
+ # @private
281
+ ORDER = 8
282
+ # @private
283
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
66
284
  end
285
+ # Known enum values are defined in {Enums::LockStatusError}.
67
286
  class LockStatusError < Attribute
68
287
  TYPE = 10
69
288
  NAME = :"lock_status_error"
70
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
71
- end
289
+ # @private
290
+ ORDER = 9
291
+ # @private
292
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
293
+ end
294
+ # Level of quality of a clock device. This mainly applies when
295
+ # the dpll lock-status is DPLL_LOCK_STATUS_HOLDOVER. This could
296
+ # be put to message multiple times to indicate possible parallel
297
+ # quality levels (e.g. one specified by ITU option 1 and another
298
+ # one specified by option 2).
299
+ #
300
+ #
301
+ # Known enum values are defined in {Enums::ClockQualityLevel}.
72
302
  class ClockQualityLevel < Attribute
73
303
  TYPE = 11
74
304
  NAME = :"clock_quality_level"
75
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
76
- end
305
+ # @private
306
+ MULTI = true
307
+ # @private
308
+ ORDER = 10
309
+ # @private
310
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
311
+ end
312
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
313
+ #
314
+ # Known enum values are defined in {Enums::FeatureState}.
77
315
  class PhaseOffsetMonitor < Attribute
78
316
  TYPE = 12
79
317
  NAME = :"phase_offset_monitor"
80
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
318
+ # @private
319
+ ORDER = 11
320
+ # @private
321
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
81
322
  end
323
+ # Averaging factor applied to calculation of reported phase offset.
82
324
  class PhaseOffsetAvgFactor < Attribute
83
325
  TYPE = 13
84
326
  NAME = :"phase_offset_avg_factor"
85
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
86
- end
327
+ # @private
328
+ ORDER = 12
329
+ # @private
330
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
331
+ end
332
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
333
+ #
334
+ # Known enum values are defined in {Enums::FeatureState}.
87
335
  class FrequencyMonitor < Attribute
88
336
  TYPE = 14
89
337
  NAME = :"frequency_monitor"
90
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
338
+ # @private
339
+ ORDER = 13
340
+ # @private
341
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
91
342
  end
92
- # :nodoc:
343
+ # @private
93
344
  BY_NAME = Ractor.make_shareable({:"id" => Id, :"module_name" => ModuleName, :"pad" => Pad, :"clock_id" => ClockId, :"mode" => Mode, :"mode_supported" => ModeSupported, :"lock_status" => LockStatus, :"temp" => Temp, :"type" => Type, :"lock_status_error" => LockStatusError, :"clock_quality_level" => ClockQualityLevel, :"phase_offset_monitor" => PhaseOffsetMonitor, :"phase_offset_avg_factor" => PhaseOffsetAvgFactor, :"frequency_monitor" => FrequencyMonitor}) #: Hash[::Symbol, Attribute]
94
- # :nodoc:
345
+ # @private
95
346
  BY_TYPE = Ractor.make_shareable({1 => Id, 2 => ModuleName, 3 => Pad, 4 => ClockId, 5 => Mode, 6 => ModeSupported, 7 => LockStatus, 8 => Temp, 9 => Type, 10 => LockStatusError, 11 => ClockQualityLevel, 12 => PhaseOffsetMonitor, 13 => PhaseOffsetAvgFactor, 14 => FrequencyMonitor}) #: Hash[::Integer, Attribute]
347
+ # @rbs return: ::Integer
348
+ # @return [Integer]
349
+ # @see Id
350
+ def id; self[:"id"]&.value; end
351
+ # @rbs return: ::String
352
+ # @return [String]
353
+ # @see ModuleName
354
+ def module_name; self[:"module_name"]&.value; end
355
+ # @rbs return: ::Integer
356
+ # @return [Integer]
357
+ # @see ClockId
358
+ def clock_id; self[:"clock_id"]&.value; end
359
+ # Known enum values are defined in {Enums::Mode}.
360
+ # @rbs return: ::Integer
361
+ # @return [Integer]
362
+ # @see Mode
363
+ def mode; self[:"mode"]&.value; end
364
+ # Known enum values are defined in {Enums::Mode}.
365
+ # @rbs return: ::Array[::Integer]
366
+ # @return [Array<Integer>]
367
+ # @see ModeSupported
368
+ def mode_supported; self[:"mode_supported"].map(&:value); end
369
+ # Known enum values are defined in {Enums::LockStatus}.
370
+ # @rbs return: ::Integer
371
+ # @return [Integer]
372
+ # @see LockStatus
373
+ def lock_status; self[:"lock_status"]&.value; end
374
+ # @rbs return: ::Integer
375
+ # @return [Integer]
376
+ # @see Temp
377
+ def temp; self[:"temp"]&.value; end
378
+ # Known enum values are defined in {Enums::Type}.
379
+ # @rbs return: ::Integer
380
+ # @return [Integer]
381
+ # @see Type
382
+ def type; self[:"type"]&.value; end
383
+ # Known enum values are defined in {Enums::LockStatusError}.
384
+ # @rbs return: ::Integer
385
+ # @return [Integer]
386
+ # @see LockStatusError
387
+ def lock_status_error; self[:"lock_status_error"]&.value; end
388
+ # Level of quality of a clock device. This mainly applies when
389
+ # the dpll lock-status is DPLL_LOCK_STATUS_HOLDOVER. This could
390
+ # be put to message multiple times to indicate possible parallel
391
+ # quality levels (e.g. one specified by ITU option 1 and another
392
+ # one specified by option 2).
393
+ #
394
+ #
395
+ # Known enum values are defined in {Enums::ClockQualityLevel}.
396
+ # @rbs return: ::Array[::Integer]
397
+ # @return [Array<Integer>]
398
+ # @see ClockQualityLevel
399
+ def clock_quality_level; self[:"clock_quality_level"].map(&:value); end
400
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
401
+ #
402
+ # Known enum values are defined in {Enums::FeatureState}.
403
+ # @rbs return: ::Integer
404
+ # @return [Integer]
405
+ # @see PhaseOffsetMonitor
406
+ def phase_offset_monitor; self[:"phase_offset_monitor"]&.value; end
407
+ # Averaging factor applied to calculation of reported phase offset.
408
+ # @rbs return: ::Integer
409
+ # @return [Integer]
410
+ # @see PhaseOffsetAvgFactor
411
+ def phase_offset_avg_factor; self[:"phase_offset_avg_factor"]&.value; end
412
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
413
+ #
414
+ # Known enum values are defined in {Enums::FeatureState}.
415
+ # @rbs return: ::Integer
416
+ # @return [Integer]
417
+ # @see FrequencyMonitor
418
+ def frequency_monitor; self[:"frequency_monitor"]&.value; end
96
419
  class << self
97
420
  # Looks up Attribute class by name.
98
- #--
99
421
  # @rbs name: Symbol
100
422
  # @rbs return: Attribute
423
+ # @param [Symbol] name
424
+ # @return [Attribute]
101
425
  def by_name(name); BY_NAME.fetch(name); end
102
426
  # Looks up Attribute class by type value.
103
- #--
104
427
  # @rbs type: Integer
105
428
  # @rbs return: Attribute
429
+ # @param [Integer] type
430
+ # @return [Attribute]
106
431
  def by_type(type); BY_TYPE.fetch(type); end
107
432
  end
108
433
  end
109
- class Pin < ::Nl::Protocols::Genl::AttributeSet
434
+ class Pin < ::Nl::AttributeSet
110
435
  # Abstract class
111
- class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
436
+ class Attribute < ::Nl::AttributeSet::Attribute
112
437
  end
113
438
  class Id < Attribute
114
439
  TYPE = 1
115
440
  NAME = :"id"
116
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
441
+ # @private
442
+ ORDER = 0
443
+ # @private
444
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
117
445
  end
118
446
  class ParentId < Attribute
119
447
  TYPE = 2
120
448
  NAME = :"parent_id"
121
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
449
+ # @private
450
+ ORDER = 1
451
+ # @private
452
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
122
453
  end
123
454
  class ModuleName < Attribute
124
455
  TYPE = 3
125
456
  NAME = :"module_name"
126
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
457
+ # @private
458
+ ORDER = 2
459
+ # @private
460
+ DATATYPE = ::Nl::DataTypes::String.new(check: nil)
127
461
  end
128
462
  class Pad < Attribute
129
463
  TYPE = 4
130
464
  NAME = :"pad"
131
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Pad.new()
465
+ # @private
466
+ ORDER = 3
467
+ # @private
468
+ DATATYPE = ::Nl::DataTypes::Pad.new()
132
469
  end
133
470
  class ClockId < Attribute
134
471
  TYPE = 5
135
472
  NAME = :"clock_id"
136
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
473
+ # @private
474
+ ORDER = 4
475
+ # @private
476
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
137
477
  end
138
478
  class BoardLabel < Attribute
139
479
  TYPE = 6
140
480
  NAME = :"board_label"
141
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
481
+ # @private
482
+ ORDER = 5
483
+ # @private
484
+ DATATYPE = ::Nl::DataTypes::String.new(check: nil)
142
485
  end
143
486
  class PanelLabel < Attribute
144
487
  TYPE = 7
145
488
  NAME = :"panel_label"
146
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
489
+ # @private
490
+ ORDER = 6
491
+ # @private
492
+ DATATYPE = ::Nl::DataTypes::String.new(check: nil)
147
493
  end
148
494
  class PackageLabel < Attribute
149
495
  TYPE = 8
150
496
  NAME = :"package_label"
151
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
497
+ # @private
498
+ ORDER = 7
499
+ # @private
500
+ DATATYPE = ::Nl::DataTypes::String.new(check: nil)
152
501
  end
502
+ # Known enum values are defined in {Enums::PinType}.
153
503
  class Type < Attribute
154
504
  TYPE = 9
155
505
  NAME = :"type"
156
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
506
+ # @private
507
+ ORDER = 8
508
+ # @private
509
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
157
510
  end
511
+ # Known enum values are defined in {Enums::PinDirection}.
158
512
  class Direction < Attribute
159
513
  TYPE = 10
160
514
  NAME = :"direction"
161
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
515
+ # @private
516
+ ORDER = 9
517
+ # @private
518
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
162
519
  end
163
520
  class Frequency < Attribute
164
521
  TYPE = 11
165
522
  NAME = :"frequency"
166
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
523
+ # @private
524
+ ORDER = 10
525
+ # @private
526
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
167
527
  end
168
528
  class FrequencySupported < Attribute
169
529
  TYPE = 12
170
530
  NAME = :"frequency_supported"
531
+ # @private
532
+ MULTI = true
533
+ # @private
534
+ ORDER = 11
171
535
  end
172
536
  class FrequencyMin < Attribute
173
537
  TYPE = 13
174
538
  NAME = :"frequency_min"
175
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
539
+ # @private
540
+ ORDER = 12
541
+ # @private
542
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
176
543
  end
177
544
  class FrequencyMax < Attribute
178
545
  TYPE = 14
179
546
  NAME = :"frequency_max"
180
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
547
+ # @private
548
+ ORDER = 13
549
+ # @private
550
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
181
551
  end
182
552
  class Prio < Attribute
183
553
  TYPE = 15
184
554
  NAME = :"prio"
185
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
555
+ # @private
556
+ ORDER = 14
557
+ # @private
558
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
186
559
  end
560
+ # Known enum values are defined in {Enums::PinState}.
187
561
  class State < Attribute
188
562
  TYPE = 16
189
563
  NAME = :"state"
190
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
564
+ # @private
565
+ ORDER = 15
566
+ # @private
567
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
191
568
  end
569
+ # Known flags are defined in {Flags::PinCapabilities}.
192
570
  class Capabilities < Attribute
193
571
  TYPE = 17
194
572
  NAME = :"capabilities"
195
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
573
+ # @private
574
+ ORDER = 16
575
+ # @private
576
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
196
577
  end
197
578
  class ParentDevice < Attribute
198
579
  TYPE = 18
199
580
  NAME = :"parent_device"
581
+ # @private
582
+ MULTI = true
583
+ # @private
584
+ ORDER = 17
200
585
  end
201
586
  class ParentPin < Attribute
202
587
  TYPE = 19
203
588
  NAME = :"parent_pin"
589
+ # @private
590
+ MULTI = true
591
+ # @private
592
+ ORDER = 18
204
593
  end
205
594
  class PhaseAdjustMin < Attribute
206
595
  TYPE = 20
207
596
  NAME = :"phase_adjust_min"
208
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
597
+ # @private
598
+ ORDER = 19
599
+ # @private
600
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
209
601
  end
210
602
  class PhaseAdjustMax < Attribute
211
603
  TYPE = 21
212
604
  NAME = :"phase_adjust_max"
213
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
605
+ # @private
606
+ ORDER = 20
607
+ # @private
608
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
214
609
  end
215
610
  class PhaseAdjust < Attribute
216
611
  TYPE = 22
217
612
  NAME = :"phase_adjust"
218
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
613
+ # @private
614
+ ORDER = 21
615
+ # @private
616
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
219
617
  end
220
618
  class PhaseOffset < Attribute
221
619
  TYPE = 23
222
620
  NAME = :"phase_offset"
223
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S64, check: nil)
224
- end
621
+ # @private
622
+ ORDER = 22
623
+ # @private
624
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::S64, check: nil)
625
+ end
626
+ # The FFO (Fractional Frequency Offset) of the pin.
627
+ # At top level this represents the RX vs TX symbol rate
628
+ # offset on the media associated with the pin. Inside
629
+ # the pin-parent-device nest it represents the frequency
630
+ # offset between the pin and its parent DPLL device.
631
+ # Value is in PPM (parts per million).
632
+ # This is a lower-precision version of
633
+ # fractional-frequency-offset-ppt.
225
634
  class FractionalFrequencyOffset < Attribute
226
635
  TYPE = 24
227
636
  NAME = :"fractional_frequency_offset"
228
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::SINT, check: nil)
637
+ # @private
638
+ ORDER = 23
639
+ # @private
640
+ DATATYPE = ::Nl::DataTypes::VariableInteger.new(::Nl::Endian::Host, signed: true, check: nil)
229
641
  end
642
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
643
+ # with a SYNC signal embedded into its base clock frequency.
230
644
  class EsyncFrequency < Attribute
231
645
  TYPE = 25
232
646
  NAME = :"esync_frequency"
233
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
647
+ # @private
648
+ ORDER = 24
649
+ # @private
650
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
234
651
  end
652
+ # If provided a pin is capable of embedding a SYNC signal (within given
653
+ # range) into its base frequency signal.
235
654
  class EsyncFrequencySupported < Attribute
236
655
  TYPE = 26
237
656
  NAME = :"esync_frequency_supported"
657
+ # @private
658
+ MULTI = true
659
+ # @private
660
+ ORDER = 25
238
661
  end
662
+ # A ratio of high to low state of a SYNC signal pulse embedded
663
+ # into base clock frequency. Value is in percents.
239
664
  class EsyncPulse < Attribute
240
665
  TYPE = 27
241
666
  NAME = :"esync_pulse"
242
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
667
+ # @private
668
+ ORDER = 26
669
+ # @private
670
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
243
671
  end
672
+ # Capable pin provides list of pins that can be bound to create a
673
+ # reference-sync pin pair.
244
674
  class ReferenceSync < Attribute
245
675
  TYPE = 28
246
676
  NAME = :"reference_sync"
677
+ # @private
678
+ MULTI = true
679
+ # @private
680
+ ORDER = 27
247
681
  end
682
+ # Granularity of phase adjustment, in picoseconds. The value of
683
+ # phase adjustment must be a multiple of this granularity.
248
684
  class PhaseAdjustGran < Attribute
249
685
  TYPE = 29
250
686
  NAME = :"phase_adjust_gran"
251
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
252
- end
687
+ # @private
688
+ ORDER = 28
689
+ # @private
690
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
691
+ end
692
+ # The FFO (Fractional Frequency Offset) of the pin.
693
+ # At top level this represents the RX vs TX symbol rate
694
+ # offset on the media associated with the pin. Inside
695
+ # the pin-parent-device nest it represents the frequency
696
+ # offset between the pin and its parent DPLL device.
697
+ # Value is in PPT (parts per trillion, 10^-12).
698
+ # This is a higher-precision version of
699
+ # fractional-frequency-offset.
253
700
  class FractionalFrequencyOffsetPpt < Attribute
254
701
  TYPE = 30
255
702
  NAME = :"fractional_frequency_offset_ppt"
256
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::SINT, check: nil)
257
- end
703
+ # @private
704
+ ORDER = 29
705
+ # @private
706
+ DATATYPE = ::Nl::DataTypes::VariableInteger.new(::Nl::Endian::Host, signed: true, check: nil)
707
+ end
708
+ # The measured frequency of the input pin in millihertz (mHz).
709
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
710
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part (Hz)
711
+ # of a measured frequency value.
712
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
713
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part
714
+ # of a measured frequency value.
258
715
  class MeasuredFrequency < Attribute
259
716
  TYPE = 31
260
717
  NAME = :"measured_frequency"
261
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
262
- end
718
+ # @private
719
+ ORDER = 30
720
+ # @private
721
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
722
+ end
723
+ # Operational state of the pin with respect to its parent DPLL
724
+ # device. Unlike state (which reflects the administrative intent),
725
+ # operstate reflects the actual hardware status.
726
+ #
727
+ #
728
+ # Known enum values are defined in {Enums::PinOperstate}.
263
729
  class Operstate < Attribute
264
730
  TYPE = 32
265
731
  NAME = :"operstate"
266
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
732
+ # @private
733
+ ORDER = 31
734
+ # @private
735
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
267
736
  end
268
- # :nodoc:
737
+ # @private
269
738
  BY_NAME = Ractor.make_shareable({:"id" => Id, :"parent_id" => ParentId, :"module_name" => ModuleName, :"pad" => Pad, :"clock_id" => ClockId, :"board_label" => BoardLabel, :"panel_label" => PanelLabel, :"package_label" => PackageLabel, :"type" => Type, :"direction" => Direction, :"frequency" => Frequency, :"frequency_supported" => FrequencySupported, :"frequency_min" => FrequencyMin, :"frequency_max" => FrequencyMax, :"prio" => Prio, :"state" => State, :"capabilities" => Capabilities, :"parent_device" => ParentDevice, :"parent_pin" => ParentPin, :"phase_adjust_min" => PhaseAdjustMin, :"phase_adjust_max" => PhaseAdjustMax, :"phase_adjust" => PhaseAdjust, :"phase_offset" => PhaseOffset, :"fractional_frequency_offset" => FractionalFrequencyOffset, :"esync_frequency" => EsyncFrequency, :"esync_frequency_supported" => EsyncFrequencySupported, :"esync_pulse" => EsyncPulse, :"reference_sync" => ReferenceSync, :"phase_adjust_gran" => PhaseAdjustGran, :"fractional_frequency_offset_ppt" => FractionalFrequencyOffsetPpt, :"measured_frequency" => MeasuredFrequency, :"operstate" => Operstate}) #: Hash[::Symbol, Attribute]
270
- # :nodoc:
739
+ # @private
271
740
  BY_TYPE = Ractor.make_shareable({1 => Id, 2 => ParentId, 3 => ModuleName, 4 => Pad, 5 => ClockId, 6 => BoardLabel, 7 => PanelLabel, 8 => PackageLabel, 9 => Type, 10 => Direction, 11 => Frequency, 12 => FrequencySupported, 13 => FrequencyMin, 14 => FrequencyMax, 15 => Prio, 16 => State, 17 => Capabilities, 18 => ParentDevice, 19 => ParentPin, 20 => PhaseAdjustMin, 21 => PhaseAdjustMax, 22 => PhaseAdjust, 23 => PhaseOffset, 24 => FractionalFrequencyOffset, 25 => EsyncFrequency, 26 => EsyncFrequencySupported, 27 => EsyncPulse, 28 => ReferenceSync, 29 => PhaseAdjustGran, 30 => FractionalFrequencyOffsetPpt, 31 => MeasuredFrequency, 32 => Operstate}) #: Hash[::Integer, Attribute]
741
+ # @rbs return: ::Integer
742
+ # @return [Integer]
743
+ # @see Id
744
+ def id; self[:"id"]&.value; end
745
+ # @rbs return: ::Integer
746
+ # @return [Integer]
747
+ # @see ParentId
748
+ def parent_id; self[:"parent_id"]&.value; end
749
+ # @rbs return: ::String
750
+ # @return [String]
751
+ # @see ModuleName
752
+ def module_name; self[:"module_name"]&.value; end
753
+ # @rbs return: ::Integer
754
+ # @return [Integer]
755
+ # @see ClockId
756
+ def clock_id; self[:"clock_id"]&.value; end
757
+ # @rbs return: ::String
758
+ # @return [String]
759
+ # @see BoardLabel
760
+ def board_label; self[:"board_label"]&.value; end
761
+ # @rbs return: ::String
762
+ # @return [String]
763
+ # @see PanelLabel
764
+ def panel_label; self[:"panel_label"]&.value; end
765
+ # @rbs return: ::String
766
+ # @return [String]
767
+ # @see PackageLabel
768
+ def package_label; self[:"package_label"]&.value; end
769
+ # Known enum values are defined in {Enums::PinType}.
770
+ # @rbs return: ::Integer
771
+ # @return [Integer]
772
+ # @see Type
773
+ def type; self[:"type"]&.value; end
774
+ # Known enum values are defined in {Enums::PinDirection}.
775
+ # @rbs return: ::Integer
776
+ # @return [Integer]
777
+ # @see Direction
778
+ def direction; self[:"direction"]&.value; end
779
+ # @rbs return: ::Integer
780
+ # @return [Integer]
781
+ # @see Frequency
782
+ def frequency; self[:"frequency"]&.value; end
783
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
784
+ # @return [Array<AttributeSets::FrequencyRange>]
785
+ # @see FrequencySupported
786
+ def frequency_supported; self[:"frequency_supported"].map(&:value); end
787
+ # @rbs return: ::Integer
788
+ # @return [Integer]
789
+ # @see FrequencyMin
790
+ def frequency_min; self[:"frequency_min"]&.value; end
791
+ # @rbs return: ::Integer
792
+ # @return [Integer]
793
+ # @see FrequencyMax
794
+ def frequency_max; self[:"frequency_max"]&.value; end
795
+ # @rbs return: ::Integer
796
+ # @return [Integer]
797
+ # @see Prio
798
+ def prio; self[:"prio"]&.value; end
799
+ # Known enum values are defined in {Enums::PinState}.
800
+ # @rbs return: ::Integer
801
+ # @return [Integer]
802
+ # @see State
803
+ def state; self[:"state"]&.value; end
804
+ # Known flags are defined in {Flags::PinCapabilities}.
805
+ # @rbs return: ::Integer
806
+ # @return [Integer]
807
+ # @see Capabilities
808
+ def capabilities; self[:"capabilities"]&.value; end
809
+ # @rbs return: ::Array[AttributeSets::PinParentDevice]
810
+ # @return [Array<AttributeSets::PinParentDevice>]
811
+ # @see ParentDevice
812
+ def parent_device; self[:"parent_device"].map(&:value); end
813
+ # @rbs return: ::Array[AttributeSets::PinParentPin]
814
+ # @return [Array<AttributeSets::PinParentPin>]
815
+ # @see ParentPin
816
+ def parent_pin; self[:"parent_pin"].map(&:value); end
817
+ # @rbs return: ::Integer
818
+ # @return [Integer]
819
+ # @see PhaseAdjustMin
820
+ def phase_adjust_min; self[:"phase_adjust_min"]&.value; end
821
+ # @rbs return: ::Integer
822
+ # @return [Integer]
823
+ # @see PhaseAdjustMax
824
+ def phase_adjust_max; self[:"phase_adjust_max"]&.value; end
825
+ # @rbs return: ::Integer
826
+ # @return [Integer]
827
+ # @see PhaseAdjust
828
+ def phase_adjust; self[:"phase_adjust"]&.value; end
829
+ # @rbs return: ::Integer
830
+ # @return [Integer]
831
+ # @see PhaseOffset
832
+ def phase_offset; self[:"phase_offset"]&.value; end
833
+ # The FFO (Fractional Frequency Offset) of the pin.
834
+ # At top level this represents the RX vs TX symbol rate
835
+ # offset on the media associated with the pin. Inside
836
+ # the pin-parent-device nest it represents the frequency
837
+ # offset between the pin and its parent DPLL device.
838
+ # Value is in PPM (parts per million).
839
+ # This is a lower-precision version of
840
+ # fractional-frequency-offset-ppt.
841
+ # @rbs return: ::Integer
842
+ # @return [Integer]
843
+ # @see FractionalFrequencyOffset
844
+ def fractional_frequency_offset; self[:"fractional_frequency_offset"]&.value; end
845
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
846
+ # with a SYNC signal embedded into its base clock frequency.
847
+ # @rbs return: ::Integer
848
+ # @return [Integer]
849
+ # @see EsyncFrequency
850
+ def esync_frequency; self[:"esync_frequency"]&.value; end
851
+ # If provided a pin is capable of embedding a SYNC signal (within given
852
+ # range) into its base frequency signal.
853
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
854
+ # @return [Array<AttributeSets::FrequencyRange>]
855
+ # @see EsyncFrequencySupported
856
+ def esync_frequency_supported; self[:"esync_frequency_supported"].map(&:value); end
857
+ # A ratio of high to low state of a SYNC signal pulse embedded
858
+ # into base clock frequency. Value is in percents.
859
+ # @rbs return: ::Integer
860
+ # @return [Integer]
861
+ # @see EsyncPulse
862
+ def esync_pulse; self[:"esync_pulse"]&.value; end
863
+ # Capable pin provides list of pins that can be bound to create a
864
+ # reference-sync pin pair.
865
+ # @rbs return: ::Array[AttributeSets::ReferenceSync]
866
+ # @return [Array<AttributeSets::ReferenceSync>]
867
+ # @see ReferenceSync
868
+ def reference_sync; self[:"reference_sync"].map(&:value); end
869
+ # Granularity of phase adjustment, in picoseconds. The value of
870
+ # phase adjustment must be a multiple of this granularity.
871
+ # @rbs return: ::Integer
872
+ # @return [Integer]
873
+ # @see PhaseAdjustGran
874
+ def phase_adjust_gran; self[:"phase_adjust_gran"]&.value; end
875
+ # The FFO (Fractional Frequency Offset) of the pin.
876
+ # At top level this represents the RX vs TX symbol rate
877
+ # offset on the media associated with the pin. Inside
878
+ # the pin-parent-device nest it represents the frequency
879
+ # offset between the pin and its parent DPLL device.
880
+ # Value is in PPT (parts per trillion, 10^-12).
881
+ # This is a higher-precision version of
882
+ # fractional-frequency-offset.
883
+ # @rbs return: ::Integer
884
+ # @return [Integer]
885
+ # @see FractionalFrequencyOffsetPpt
886
+ def fractional_frequency_offset_ppt; self[:"fractional_frequency_offset_ppt"]&.value; end
887
+ # The measured frequency of the input pin in millihertz (mHz).
888
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
889
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part (Hz)
890
+ # of a measured frequency value.
891
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
892
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part
893
+ # of a measured frequency value.
894
+ # @rbs return: ::Integer
895
+ # @return [Integer]
896
+ # @see MeasuredFrequency
897
+ def measured_frequency; self[:"measured_frequency"]&.value; end
898
+ # Operational state of the pin with respect to its parent DPLL
899
+ # device. Unlike state (which reflects the administrative intent),
900
+ # operstate reflects the actual hardware status.
901
+ #
902
+ #
903
+ # Known enum values are defined in {Enums::PinOperstate}.
904
+ # @rbs return: ::Integer
905
+ # @return [Integer]
906
+ # @see Operstate
907
+ def operstate; self[:"operstate"]&.value; end
272
908
  class << self
273
909
  # Looks up Attribute class by name.
274
- #--
275
910
  # @rbs name: Symbol
276
911
  # @rbs return: Attribute
912
+ # @param [Symbol] name
913
+ # @return [Attribute]
277
914
  def by_name(name); BY_NAME.fetch(name); end
278
915
  # Looks up Attribute class by type value.
279
- #--
280
916
  # @rbs type: Integer
281
917
  # @rbs return: Attribute
918
+ # @param [Integer] type
919
+ # @return [Attribute]
282
920
  def by_type(type); BY_TYPE.fetch(type); end
283
921
  end
284
922
  end
285
- class PinParentDevice < ::Nl::Protocols::Genl::AttributeSet
923
+ class PinParentDevice < ::Nl::AttributeSet
286
924
  # Abstract class
287
- class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
925
+ class Attribute < ::Nl::AttributeSet::Attribute
288
926
  end
289
927
  class ParentId < Attribute
290
928
  TYPE = 2
291
929
  NAME = :"parent_id"
292
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
930
+ # @private
931
+ ORDER = 0
932
+ # @private
933
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
293
934
  end
935
+ # Known enum values are defined in {Enums::PinDirection}.
294
936
  class Direction < Attribute
295
937
  TYPE = 10
296
938
  NAME = :"direction"
297
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
939
+ # @private
940
+ ORDER = 1
941
+ # @private
942
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
298
943
  end
299
944
  class Prio < Attribute
300
945
  TYPE = 15
301
946
  NAME = :"prio"
302
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
947
+ # @private
948
+ ORDER = 2
949
+ # @private
950
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
303
951
  end
952
+ # Known enum values are defined in {Enums::PinState}.
304
953
  class State < Attribute
305
954
  TYPE = 16
306
955
  NAME = :"state"
307
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
308
- end
956
+ # @private
957
+ ORDER = 3
958
+ # @private
959
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
960
+ end
961
+ # Operational state of the pin with respect to its parent DPLL
962
+ # device. Unlike state (which reflects the administrative intent),
963
+ # operstate reflects the actual hardware status.
964
+ #
965
+ #
966
+ # Known enum values are defined in {Enums::PinOperstate}.
309
967
  class Operstate < Attribute
310
968
  TYPE = 32
311
969
  NAME = :"operstate"
312
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
970
+ # @private
971
+ ORDER = 4
972
+ # @private
973
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
313
974
  end
314
975
  class PhaseOffset < Attribute
315
976
  TYPE = 23
316
977
  NAME = :"phase_offset"
317
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S64, check: nil)
318
- end
978
+ # @private
979
+ ORDER = 5
980
+ # @private
981
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::S64, check: nil)
982
+ end
983
+ # The FFO (Fractional Frequency Offset) of the pin.
984
+ # At top level this represents the RX vs TX symbol rate
985
+ # offset on the media associated with the pin. Inside
986
+ # the pin-parent-device nest it represents the frequency
987
+ # offset between the pin and its parent DPLL device.
988
+ # Value is in PPM (parts per million).
989
+ # This is a lower-precision version of
990
+ # fractional-frequency-offset-ppt.
319
991
  class FractionalFrequencyOffset < Attribute
320
992
  TYPE = 24
321
993
  NAME = :"fractional_frequency_offset"
322
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::SINT, check: nil)
323
- end
994
+ # @private
995
+ ORDER = 6
996
+ # @private
997
+ DATATYPE = ::Nl::DataTypes::VariableInteger.new(::Nl::Endian::Host, signed: true, check: nil)
998
+ end
999
+ # The FFO (Fractional Frequency Offset) of the pin.
1000
+ # At top level this represents the RX vs TX symbol rate
1001
+ # offset on the media associated with the pin. Inside
1002
+ # the pin-parent-device nest it represents the frequency
1003
+ # offset between the pin and its parent DPLL device.
1004
+ # Value is in PPT (parts per trillion, 10^-12).
1005
+ # This is a higher-precision version of
1006
+ # fractional-frequency-offset.
324
1007
  class FractionalFrequencyOffsetPpt < Attribute
325
1008
  TYPE = 30
326
1009
  NAME = :"fractional_frequency_offset_ppt"
327
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::SINT, check: nil)
1010
+ # @private
1011
+ ORDER = 7
1012
+ # @private
1013
+ DATATYPE = ::Nl::DataTypes::VariableInteger.new(::Nl::Endian::Host, signed: true, check: nil)
328
1014
  end
329
- # :nodoc:
1015
+ # @private
330
1016
  BY_NAME = Ractor.make_shareable({:"parent_id" => ParentId, :"direction" => Direction, :"prio" => Prio, :"state" => State, :"operstate" => Operstate, :"phase_offset" => PhaseOffset, :"fractional_frequency_offset" => FractionalFrequencyOffset, :"fractional_frequency_offset_ppt" => FractionalFrequencyOffsetPpt}) #: Hash[::Symbol, Attribute]
331
- # :nodoc:
1017
+ # @private
332
1018
  BY_TYPE = Ractor.make_shareable({2 => ParentId, 10 => Direction, 15 => Prio, 16 => State, 32 => Operstate, 23 => PhaseOffset, 24 => FractionalFrequencyOffset, 30 => FractionalFrequencyOffsetPpt}) #: Hash[::Integer, Attribute]
1019
+ # @rbs return: ::Integer
1020
+ # @return [Integer]
1021
+ # @see ParentId
1022
+ def parent_id; self[:"parent_id"]&.value; end
1023
+ # Known enum values are defined in {Enums::PinDirection}.
1024
+ # @rbs return: ::Integer
1025
+ # @return [Integer]
1026
+ # @see Direction
1027
+ def direction; self[:"direction"]&.value; end
1028
+ # @rbs return: ::Integer
1029
+ # @return [Integer]
1030
+ # @see Prio
1031
+ def prio; self[:"prio"]&.value; end
1032
+ # Known enum values are defined in {Enums::PinState}.
1033
+ # @rbs return: ::Integer
1034
+ # @return [Integer]
1035
+ # @see State
1036
+ def state; self[:"state"]&.value; end
1037
+ # Operational state of the pin with respect to its parent DPLL
1038
+ # device. Unlike state (which reflects the administrative intent),
1039
+ # operstate reflects the actual hardware status.
1040
+ #
1041
+ #
1042
+ # Known enum values are defined in {Enums::PinOperstate}.
1043
+ # @rbs return: ::Integer
1044
+ # @return [Integer]
1045
+ # @see Operstate
1046
+ def operstate; self[:"operstate"]&.value; end
1047
+ # @rbs return: ::Integer
1048
+ # @return [Integer]
1049
+ # @see PhaseOffset
1050
+ def phase_offset; self[:"phase_offset"]&.value; end
1051
+ # The FFO (Fractional Frequency Offset) of the pin.
1052
+ # At top level this represents the RX vs TX symbol rate
1053
+ # offset on the media associated with the pin. Inside
1054
+ # the pin-parent-device nest it represents the frequency
1055
+ # offset between the pin and its parent DPLL device.
1056
+ # Value is in PPM (parts per million).
1057
+ # This is a lower-precision version of
1058
+ # fractional-frequency-offset-ppt.
1059
+ # @rbs return: ::Integer
1060
+ # @return [Integer]
1061
+ # @see FractionalFrequencyOffset
1062
+ def fractional_frequency_offset; self[:"fractional_frequency_offset"]&.value; end
1063
+ # The FFO (Fractional Frequency Offset) of the pin.
1064
+ # At top level this represents the RX vs TX symbol rate
1065
+ # offset on the media associated with the pin. Inside
1066
+ # the pin-parent-device nest it represents the frequency
1067
+ # offset between the pin and its parent DPLL device.
1068
+ # Value is in PPT (parts per trillion, 10^-12).
1069
+ # This is a higher-precision version of
1070
+ # fractional-frequency-offset.
1071
+ # @rbs return: ::Integer
1072
+ # @return [Integer]
1073
+ # @see FractionalFrequencyOffsetPpt
1074
+ def fractional_frequency_offset_ppt; self[:"fractional_frequency_offset_ppt"]&.value; end
333
1075
  class << self
334
1076
  # Looks up Attribute class by name.
335
- #--
336
1077
  # @rbs name: Symbol
337
1078
  # @rbs return: Attribute
1079
+ # @param [Symbol] name
1080
+ # @return [Attribute]
338
1081
  def by_name(name); BY_NAME.fetch(name); end
339
1082
  # Looks up Attribute class by type value.
340
- #--
341
1083
  # @rbs type: Integer
342
1084
  # @rbs return: Attribute
1085
+ # @param [Integer] type
1086
+ # @return [Attribute]
343
1087
  def by_type(type); BY_TYPE.fetch(type); end
344
1088
  end
345
1089
  end
346
- class PinParentPin < ::Nl::Protocols::Genl::AttributeSet
1090
+ class PinParentPin < ::Nl::AttributeSet
347
1091
  # Abstract class
348
- class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1092
+ class Attribute < ::Nl::AttributeSet::Attribute
349
1093
  end
350
1094
  class ParentId < Attribute
351
1095
  TYPE = 2
352
1096
  NAME = :"parent_id"
353
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1097
+ # @private
1098
+ ORDER = 0
1099
+ # @private
1100
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
354
1101
  end
1102
+ # Known enum values are defined in {Enums::PinState}.
355
1103
  class State < Attribute
356
1104
  TYPE = 16
357
1105
  NAME = :"state"
358
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1106
+ # @private
1107
+ ORDER = 1
1108
+ # @private
1109
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
359
1110
  end
360
- # :nodoc:
1111
+ # @private
361
1112
  BY_NAME = Ractor.make_shareable({:"parent_id" => ParentId, :"state" => State}) #: Hash[::Symbol, Attribute]
362
- # :nodoc:
1113
+ # @private
363
1114
  BY_TYPE = Ractor.make_shareable({2 => ParentId, 16 => State}) #: Hash[::Integer, Attribute]
1115
+ # @rbs return: ::Integer
1116
+ # @return [Integer]
1117
+ # @see ParentId
1118
+ def parent_id; self[:"parent_id"]&.value; end
1119
+ # Known enum values are defined in {Enums::PinState}.
1120
+ # @rbs return: ::Integer
1121
+ # @return [Integer]
1122
+ # @see State
1123
+ def state; self[:"state"]&.value; end
364
1124
  class << self
365
1125
  # Looks up Attribute class by name.
366
- #--
367
1126
  # @rbs name: Symbol
368
1127
  # @rbs return: Attribute
1128
+ # @param [Symbol] name
1129
+ # @return [Attribute]
369
1130
  def by_name(name); BY_NAME.fetch(name); end
370
1131
  # Looks up Attribute class by type value.
371
- #--
372
1132
  # @rbs type: Integer
373
1133
  # @rbs return: Attribute
1134
+ # @param [Integer] type
1135
+ # @return [Attribute]
374
1136
  def by_type(type); BY_TYPE.fetch(type); end
375
1137
  end
376
1138
  end
377
- class FrequencyRange < ::Nl::Protocols::Genl::AttributeSet
1139
+ class FrequencyRange < ::Nl::AttributeSet
378
1140
  # Abstract class
379
- class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1141
+ class Attribute < ::Nl::AttributeSet::Attribute
380
1142
  end
381
1143
  class FrequencyMin < Attribute
382
1144
  TYPE = 13
383
1145
  NAME = :"frequency_min"
384
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1146
+ # @private
1147
+ ORDER = 0
1148
+ # @private
1149
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
385
1150
  end
386
1151
  class FrequencyMax < Attribute
387
1152
  TYPE = 14
388
1153
  NAME = :"frequency_max"
389
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1154
+ # @private
1155
+ ORDER = 1
1156
+ # @private
1157
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
390
1158
  end
391
- # :nodoc:
1159
+ # @private
392
1160
  BY_NAME = Ractor.make_shareable({:"frequency_min" => FrequencyMin, :"frequency_max" => FrequencyMax}) #: Hash[::Symbol, Attribute]
393
- # :nodoc:
1161
+ # @private
394
1162
  BY_TYPE = Ractor.make_shareable({13 => FrequencyMin, 14 => FrequencyMax}) #: Hash[::Integer, Attribute]
1163
+ # @rbs return: ::Integer
1164
+ # @return [Integer]
1165
+ # @see FrequencyMin
1166
+ def frequency_min; self[:"frequency_min"]&.value; end
1167
+ # @rbs return: ::Integer
1168
+ # @return [Integer]
1169
+ # @see FrequencyMax
1170
+ def frequency_max; self[:"frequency_max"]&.value; end
395
1171
  class << self
396
1172
  # Looks up Attribute class by name.
397
- #--
398
1173
  # @rbs name: Symbol
399
1174
  # @rbs return: Attribute
1175
+ # @param [Symbol] name
1176
+ # @return [Attribute]
400
1177
  def by_name(name); BY_NAME.fetch(name); end
401
1178
  # Looks up Attribute class by type value.
402
- #--
403
1179
  # @rbs type: Integer
404
1180
  # @rbs return: Attribute
1181
+ # @param [Integer] type
1182
+ # @return [Attribute]
405
1183
  def by_type(type); BY_TYPE.fetch(type); end
406
1184
  end
407
1185
  end
408
- class ReferenceSync < ::Nl::Protocols::Genl::AttributeSet
1186
+ class ReferenceSync < ::Nl::AttributeSet
409
1187
  # Abstract class
410
- class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1188
+ class Attribute < ::Nl::AttributeSet::Attribute
411
1189
  end
412
1190
  class Id < Attribute
413
1191
  TYPE = 1
414
1192
  NAME = :"id"
415
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1193
+ # @private
1194
+ ORDER = 0
1195
+ # @private
1196
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
416
1197
  end
1198
+ # Known enum values are defined in {Enums::PinState}.
417
1199
  class State < Attribute
418
1200
  TYPE = 16
419
1201
  NAME = :"state"
420
- DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1202
+ # @private
1203
+ ORDER = 1
1204
+ # @private
1205
+ DATATYPE = ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
421
1206
  end
422
- # :nodoc:
1207
+ # @private
423
1208
  BY_NAME = Ractor.make_shareable({:"id" => Id, :"state" => State}) #: Hash[::Symbol, Attribute]
424
- # :nodoc:
1209
+ # @private
425
1210
  BY_TYPE = Ractor.make_shareable({1 => Id, 16 => State}) #: Hash[::Integer, Attribute]
1211
+ # @rbs return: ::Integer
1212
+ # @return [Integer]
1213
+ # @see Id
1214
+ def id; self[:"id"]&.value; end
1215
+ # Known enum values are defined in {Enums::PinState}.
1216
+ # @rbs return: ::Integer
1217
+ # @return [Integer]
1218
+ # @see State
1219
+ def state; self[:"state"]&.value; end
426
1220
  class << self
427
1221
  # Looks up Attribute class by name.
428
- #--
429
1222
  # @rbs name: Symbol
430
1223
  # @rbs return: Attribute
1224
+ # @param [Symbol] name
1225
+ # @return [Attribute]
431
1226
  def by_name(name); BY_NAME.fetch(name); end
432
1227
  # Looks up Attribute class by type value.
433
- #--
434
1228
  # @rbs type: Integer
435
1229
  # @rbs return: Attribute
1230
+ # @param [Integer] type
1231
+ # @return [Attribute]
436
1232
  def by_type(type); BY_TYPE.fetch(type); end
437
1233
  end
438
1234
  end
439
- Pin::FrequencySupported::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrequencyRange)
440
- Pin::ParentDevice::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(PinParentDevice)
441
- Pin::ParentPin::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(PinParentPin)
442
- Pin::EsyncFrequencySupported::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrequencyRange)
443
- Pin::ReferenceSync::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(ReferenceSync)
1235
+ # @private
1236
+ Pin::FrequencySupported::DATATYPE = ::Nl::DataTypes::NestedAttributes.new(AttributeSets::FrequencyRange, selector_bindings: Ractor.make_shareable([]))
1237
+ # @private
1238
+ Pin::ParentDevice::DATATYPE = ::Nl::DataTypes::NestedAttributes.new(AttributeSets::PinParentDevice, selector_bindings: Ractor.make_shareable([]))
1239
+ # @private
1240
+ Pin::ParentPin::DATATYPE = ::Nl::DataTypes::NestedAttributes.new(AttributeSets::PinParentPin, selector_bindings: Ractor.make_shareable([]))
1241
+ # @private
1242
+ Pin::EsyncFrequencySupported::DATATYPE = ::Nl::DataTypes::NestedAttributes.new(AttributeSets::FrequencyRange, selector_bindings: Ractor.make_shareable([]))
1243
+ # @private
1244
+ Pin::ReferenceSync::DATATYPE = ::Nl::DataTypes::NestedAttributes.new(AttributeSets::ReferenceSync, selector_bindings: Ractor.make_shareable([]))
444
1245
  end
445
1246
  module Messages
446
1247
  # Get id of dpll device that matches given attributes
447
1248
  #
448
1249
  #
449
1250
  # Requires CAP_NET_ADMIN in the initial user namespace.
450
- class DoDeviceIdGetRequest < ::Nl::Protocols::Genl::Message
1251
+ class DoDeviceIdGetRequest < ::Nl::Genl::Message
451
1252
  TYPE = 1
452
1253
  FIXED_HEADER = nil
453
1254
  ATTRIBUTE_SET = AttributeSets::Dpll
454
1255
  ATTRIBUTES = Ractor.make_shareable(%i[module_name clock_id type])
455
- # Gets the value of `module-name` attribute in the message.
456
- #--
457
1256
  # @rbs return: ::String
1257
+ # @return [String]
1258
+ # @see AttributeSets::Dpll::ModuleName
458
1259
  def module_name; attributes[:"module_name"]&.value; end
459
- # Gets the value of `clock-id` attribute in the message.
460
- #--
461
1260
  # @rbs return: ::Integer
1261
+ # @return [Integer]
1262
+ # @see AttributeSets::Dpll::ClockId
462
1263
  def clock_id; attributes[:"clock_id"]&.value; end
463
- # Gets the value of `type` attribute in the message.
464
- #--
1264
+ # Known enum values are defined in {Enums::Type}.
465
1265
  # @rbs return: ::Integer
1266
+ # @return [Integer]
1267
+ # @see AttributeSets::Dpll::Type
466
1268
  def type; attributes[:"type"]&.value; end
467
1269
  end
468
1270
  # Get id of dpll device that matches given attributes
469
1271
  #
470
1272
  #
471
1273
  # Requires CAP_NET_ADMIN in the initial user namespace.
472
- class DoDeviceIdGetReply < ::Nl::Protocols::Genl::Message
1274
+ class DoDeviceIdGetReply < ::Nl::Genl::Message
473
1275
  TYPE = 1
474
1276
  FIXED_HEADER = nil
475
1277
  ATTRIBUTE_SET = AttributeSets::Dpll
476
1278
  ATTRIBUTES = Ractor.make_shareable(%i[id])
477
- # Gets the value of `id` attribute in the message.
478
- #--
479
1279
  # @rbs return: ::Integer
1280
+ # @return [Integer]
1281
+ # @see AttributeSets::Dpll::Id
480
1282
  def id; attributes[:"id"]&.value; end
481
1283
  end
482
1284
  # Get list of DPLL devices (dump) or attributes of a single dpll device
483
1285
  #
484
1286
  #
485
1287
  # Requires CAP_NET_ADMIN in the initial user namespace.
486
- class DoDeviceGetRequest < ::Nl::Protocols::Genl::Message
1288
+ class DoDeviceGetRequest < ::Nl::Genl::Message
487
1289
  TYPE = 2
488
1290
  FIXED_HEADER = nil
489
1291
  ATTRIBUTE_SET = AttributeSets::Dpll
490
1292
  ATTRIBUTES = Ractor.make_shareable(%i[id])
491
- # Gets the value of `id` attribute in the message.
492
- #--
493
1293
  # @rbs return: ::Integer
1294
+ # @return [Integer]
1295
+ # @see AttributeSets::Dpll::Id
494
1296
  def id; attributes[:"id"]&.value; end
495
1297
  end
496
1298
  # Get list of DPLL devices (dump) or attributes of a single dpll device
497
1299
  #
498
1300
  #
499
1301
  # Requires CAP_NET_ADMIN in the initial user namespace.
500
- class DoDeviceGetReply < ::Nl::Protocols::Genl::Message
1302
+ class DoDeviceGetReply < ::Nl::Genl::Message
501
1303
  TYPE = 2
502
1304
  FIXED_HEADER = nil
503
1305
  ATTRIBUTE_SET = AttributeSets::Dpll
504
1306
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id mode mode_supported lock_status temp type lock_status_error phase_offset_monitor phase_offset_avg_factor frequency_monitor])
505
- # Gets the value of `id` attribute in the message.
506
- #--
507
1307
  # @rbs return: ::Integer
1308
+ # @return [Integer]
1309
+ # @see AttributeSets::Dpll::Id
508
1310
  def id; attributes[:"id"]&.value; end
509
- # Gets the value of `module-name` attribute in the message.
510
- #--
511
1311
  # @rbs return: ::String
1312
+ # @return [String]
1313
+ # @see AttributeSets::Dpll::ModuleName
512
1314
  def module_name; attributes[:"module_name"]&.value; end
513
- # Gets the value of `clock-id` attribute in the message.
514
- #--
515
1315
  # @rbs return: ::Integer
1316
+ # @return [Integer]
1317
+ # @see AttributeSets::Dpll::ClockId
516
1318
  def clock_id; attributes[:"clock_id"]&.value; end
517
- # Gets the value of `mode` attribute in the message.
518
- #--
1319
+ # Known enum values are defined in {Enums::Mode}.
519
1320
  # @rbs return: ::Integer
1321
+ # @return [Integer]
1322
+ # @see AttributeSets::Dpll::Mode
520
1323
  def mode; attributes[:"mode"]&.value; end
521
- # Gets the value of `mode-supported` attribute in the message.
522
- #--
523
- # @rbs return: ::Integer
524
- def mode_supported; attributes[:"mode_supported"]&.value; end
525
- # Gets the value of `lock-status` attribute in the message.
526
- #--
527
- # @rbs return: ::Integer
1324
+ # Known enum values are defined in {Enums::Mode}.
1325
+ # @rbs return: ::Array[::Integer]
1326
+ # @return [Array<Integer>]
1327
+ # @see AttributeSets::Dpll::ModeSupported
1328
+ def mode_supported; attributes[:"mode_supported"].map(&:value); end
1329
+ # Known enum values are defined in {Enums::LockStatus}.
1330
+ # @rbs return: ::Integer
1331
+ # @return [Integer]
1332
+ # @see AttributeSets::Dpll::LockStatus
528
1333
  def lock_status; attributes[:"lock_status"]&.value; end
529
- # Gets the value of `temp` attribute in the message.
530
- #--
531
1334
  # @rbs return: ::Integer
1335
+ # @return [Integer]
1336
+ # @see AttributeSets::Dpll::Temp
532
1337
  def temp; attributes[:"temp"]&.value; end
533
- # Gets the value of `type` attribute in the message.
534
- #--
1338
+ # Known enum values are defined in {Enums::Type}.
535
1339
  # @rbs return: ::Integer
1340
+ # @return [Integer]
1341
+ # @see AttributeSets::Dpll::Type
536
1342
  def type; attributes[:"type"]&.value; end
537
- # Gets the value of `lock-status-error` attribute in the message.
538
- #--
1343
+ # Known enum values are defined in {Enums::LockStatusError}.
539
1344
  # @rbs return: ::Integer
1345
+ # @return [Integer]
1346
+ # @see AttributeSets::Dpll::LockStatusError
540
1347
  def lock_status_error; attributes[:"lock_status_error"]&.value; end
541
- # Gets the value of `phase-offset-monitor` attribute in the message.
542
- #--
1348
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
1349
+ #
1350
+ # Known enum values are defined in {Enums::FeatureState}.
543
1351
  # @rbs return: ::Integer
1352
+ # @return [Integer]
1353
+ # @see AttributeSets::Dpll::PhaseOffsetMonitor
544
1354
  def phase_offset_monitor; attributes[:"phase_offset_monitor"]&.value; end
545
- # Gets the value of `phase-offset-avg-factor` attribute in the message.
546
- #--
1355
+ # Averaging factor applied to calculation of reported phase offset.
547
1356
  # @rbs return: ::Integer
1357
+ # @return [Integer]
1358
+ # @see AttributeSets::Dpll::PhaseOffsetAvgFactor
548
1359
  def phase_offset_avg_factor; attributes[:"phase_offset_avg_factor"]&.value; end
549
- # Gets the value of `frequency-monitor` attribute in the message.
550
- #--
1360
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
1361
+ #
1362
+ # Known enum values are defined in {Enums::FeatureState}.
551
1363
  # @rbs return: ::Integer
1364
+ # @return [Integer]
1365
+ # @see AttributeSets::Dpll::FrequencyMonitor
552
1366
  def frequency_monitor; attributes[:"frequency_monitor"]&.value; end
553
1367
  end
554
1368
  # Get list of DPLL devices (dump) or attributes of a single dpll device
555
1369
  #
556
1370
  #
557
1371
  # Requires CAP_NET_ADMIN in the initial user namespace.
558
- class DumpDeviceGetRequest < ::Nl::Protocols::Genl::Message
1372
+ class DumpDeviceGetRequest < ::Nl::Genl::Message
559
1373
  TYPE = 2
560
1374
  FIXED_HEADER = nil
561
1375
  ATTRIBUTE_SET = AttributeSets::Dpll
@@ -565,135 +1379,156 @@ class Dpll < ::Nl::Family
565
1379
  #
566
1380
  #
567
1381
  # Requires CAP_NET_ADMIN in the initial user namespace.
568
- class DumpDeviceGetReply < ::Nl::Protocols::Genl::Message
1382
+ class DumpDeviceGetReply < ::Nl::Genl::Message
569
1383
  TYPE = 2
570
1384
  FIXED_HEADER = nil
571
1385
  ATTRIBUTE_SET = AttributeSets::Dpll
572
1386
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id mode mode_supported lock_status temp type lock_status_error phase_offset_monitor phase_offset_avg_factor frequency_monitor])
573
- # Gets the value of `id` attribute in the message.
574
- #--
575
1387
  # @rbs return: ::Integer
1388
+ # @return [Integer]
1389
+ # @see AttributeSets::Dpll::Id
576
1390
  def id; attributes[:"id"]&.value; end
577
- # Gets the value of `module-name` attribute in the message.
578
- #--
579
1391
  # @rbs return: ::String
1392
+ # @return [String]
1393
+ # @see AttributeSets::Dpll::ModuleName
580
1394
  def module_name; attributes[:"module_name"]&.value; end
581
- # Gets the value of `clock-id` attribute in the message.
582
- #--
583
1395
  # @rbs return: ::Integer
1396
+ # @return [Integer]
1397
+ # @see AttributeSets::Dpll::ClockId
584
1398
  def clock_id; attributes[:"clock_id"]&.value; end
585
- # Gets the value of `mode` attribute in the message.
586
- #--
1399
+ # Known enum values are defined in {Enums::Mode}.
587
1400
  # @rbs return: ::Integer
1401
+ # @return [Integer]
1402
+ # @see AttributeSets::Dpll::Mode
588
1403
  def mode; attributes[:"mode"]&.value; end
589
- # Gets the value of `mode-supported` attribute in the message.
590
- #--
591
- # @rbs return: ::Integer
592
- def mode_supported; attributes[:"mode_supported"]&.value; end
593
- # Gets the value of `lock-status` attribute in the message.
594
- #--
595
- # @rbs return: ::Integer
1404
+ # Known enum values are defined in {Enums::Mode}.
1405
+ # @rbs return: ::Array[::Integer]
1406
+ # @return [Array<Integer>]
1407
+ # @see AttributeSets::Dpll::ModeSupported
1408
+ def mode_supported; attributes[:"mode_supported"].map(&:value); end
1409
+ # Known enum values are defined in {Enums::LockStatus}.
1410
+ # @rbs return: ::Integer
1411
+ # @return [Integer]
1412
+ # @see AttributeSets::Dpll::LockStatus
596
1413
  def lock_status; attributes[:"lock_status"]&.value; end
597
- # Gets the value of `temp` attribute in the message.
598
- #--
599
1414
  # @rbs return: ::Integer
1415
+ # @return [Integer]
1416
+ # @see AttributeSets::Dpll::Temp
600
1417
  def temp; attributes[:"temp"]&.value; end
601
- # Gets the value of `type` attribute in the message.
602
- #--
1418
+ # Known enum values are defined in {Enums::Type}.
603
1419
  # @rbs return: ::Integer
1420
+ # @return [Integer]
1421
+ # @see AttributeSets::Dpll::Type
604
1422
  def type; attributes[:"type"]&.value; end
605
- # Gets the value of `lock-status-error` attribute in the message.
606
- #--
1423
+ # Known enum values are defined in {Enums::LockStatusError}.
607
1424
  # @rbs return: ::Integer
1425
+ # @return [Integer]
1426
+ # @see AttributeSets::Dpll::LockStatusError
608
1427
  def lock_status_error; attributes[:"lock_status_error"]&.value; end
609
- # Gets the value of `phase-offset-monitor` attribute in the message.
610
- #--
1428
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
1429
+ #
1430
+ # Known enum values are defined in {Enums::FeatureState}.
611
1431
  # @rbs return: ::Integer
1432
+ # @return [Integer]
1433
+ # @see AttributeSets::Dpll::PhaseOffsetMonitor
612
1434
  def phase_offset_monitor; attributes[:"phase_offset_monitor"]&.value; end
613
- # Gets the value of `phase-offset-avg-factor` attribute in the message.
614
- #--
1435
+ # Averaging factor applied to calculation of reported phase offset.
615
1436
  # @rbs return: ::Integer
1437
+ # @return [Integer]
1438
+ # @see AttributeSets::Dpll::PhaseOffsetAvgFactor
616
1439
  def phase_offset_avg_factor; attributes[:"phase_offset_avg_factor"]&.value; end
617
- # Gets the value of `frequency-monitor` attribute in the message.
618
- #--
1440
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
1441
+ #
1442
+ # Known enum values are defined in {Enums::FeatureState}.
619
1443
  # @rbs return: ::Integer
1444
+ # @return [Integer]
1445
+ # @see AttributeSets::Dpll::FrequencyMonitor
620
1446
  def frequency_monitor; attributes[:"frequency_monitor"]&.value; end
621
1447
  end
622
1448
  # Set attributes for a DPLL device
623
1449
  #
624
1450
  # Requires CAP_NET_ADMIN in the initial user namespace.
625
- class DoDeviceSetRequest < ::Nl::Protocols::Genl::Message
1451
+ class DoDeviceSetRequest < ::Nl::Genl::Message
626
1452
  TYPE = 3
627
1453
  FIXED_HEADER = nil
628
1454
  ATTRIBUTE_SET = AttributeSets::Dpll
629
1455
  ATTRIBUTES = Ractor.make_shareable(%i[id mode phase_offset_monitor phase_offset_avg_factor frequency_monitor])
630
- # Gets the value of `id` attribute in the message.
631
- #--
632
1456
  # @rbs return: ::Integer
1457
+ # @return [Integer]
1458
+ # @see AttributeSets::Dpll::Id
633
1459
  def id; attributes[:"id"]&.value; end
634
- # Gets the value of `mode` attribute in the message.
635
- #--
1460
+ # Known enum values are defined in {Enums::Mode}.
636
1461
  # @rbs return: ::Integer
1462
+ # @return [Integer]
1463
+ # @see AttributeSets::Dpll::Mode
637
1464
  def mode; attributes[:"mode"]&.value; end
638
- # Gets the value of `phase-offset-monitor` attribute in the message.
639
- #--
1465
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
1466
+ #
1467
+ # Known enum values are defined in {Enums::FeatureState}.
640
1468
  # @rbs return: ::Integer
1469
+ # @return [Integer]
1470
+ # @see AttributeSets::Dpll::PhaseOffsetMonitor
641
1471
  def phase_offset_monitor; attributes[:"phase_offset_monitor"]&.value; end
642
- # Gets the value of `phase-offset-avg-factor` attribute in the message.
643
- #--
1472
+ # Averaging factor applied to calculation of reported phase offset.
644
1473
  # @rbs return: ::Integer
1474
+ # @return [Integer]
1475
+ # @see AttributeSets::Dpll::PhaseOffsetAvgFactor
645
1476
  def phase_offset_avg_factor; attributes[:"phase_offset_avg_factor"]&.value; end
646
- # Gets the value of `frequency-monitor` attribute in the message.
647
- #--
1477
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
1478
+ #
1479
+ # Known enum values are defined in {Enums::FeatureState}.
648
1480
  # @rbs return: ::Integer
1481
+ # @return [Integer]
1482
+ # @see AttributeSets::Dpll::FrequencyMonitor
649
1483
  def frequency_monitor; attributes[:"frequency_monitor"]&.value; end
650
1484
  end
651
1485
  # Get id of a pin that matches given attributes
652
1486
  #
653
1487
  #
654
1488
  # Requires CAP_NET_ADMIN in the initial user namespace.
655
- class DoPinIdGetRequest < ::Nl::Protocols::Genl::Message
1489
+ class DoPinIdGetRequest < ::Nl::Genl::Message
656
1490
  TYPE = 7
657
1491
  FIXED_HEADER = nil
658
1492
  ATTRIBUTE_SET = AttributeSets::Pin
659
1493
  ATTRIBUTES = Ractor.make_shareable(%i[module_name clock_id board_label panel_label package_label type])
660
- # Gets the value of `module-name` attribute in the message.
661
- #--
662
1494
  # @rbs return: ::String
1495
+ # @return [String]
1496
+ # @see AttributeSets::Pin::ModuleName
663
1497
  def module_name; attributes[:"module_name"]&.value; end
664
- # Gets the value of `clock-id` attribute in the message.
665
- #--
666
1498
  # @rbs return: ::Integer
1499
+ # @return [Integer]
1500
+ # @see AttributeSets::Pin::ClockId
667
1501
  def clock_id; attributes[:"clock_id"]&.value; end
668
- # Gets the value of `board-label` attribute in the message.
669
- #--
670
1502
  # @rbs return: ::String
1503
+ # @return [String]
1504
+ # @see AttributeSets::Pin::BoardLabel
671
1505
  def board_label; attributes[:"board_label"]&.value; end
672
- # Gets the value of `panel-label` attribute in the message.
673
- #--
674
1506
  # @rbs return: ::String
1507
+ # @return [String]
1508
+ # @see AttributeSets::Pin::PanelLabel
675
1509
  def panel_label; attributes[:"panel_label"]&.value; end
676
- # Gets the value of `package-label` attribute in the message.
677
- #--
678
1510
  # @rbs return: ::String
1511
+ # @return [String]
1512
+ # @see AttributeSets::Pin::PackageLabel
679
1513
  def package_label; attributes[:"package_label"]&.value; end
680
- # Gets the value of `type` attribute in the message.
681
- #--
1514
+ # Known enum values are defined in {Enums::PinType}.
682
1515
  # @rbs return: ::Integer
1516
+ # @return [Integer]
1517
+ # @see AttributeSets::Pin::Type
683
1518
  def type; attributes[:"type"]&.value; end
684
1519
  end
685
1520
  # Get id of a pin that matches given attributes
686
1521
  #
687
1522
  #
688
1523
  # Requires CAP_NET_ADMIN in the initial user namespace.
689
- class DoPinIdGetReply < ::Nl::Protocols::Genl::Message
1524
+ class DoPinIdGetReply < ::Nl::Genl::Message
690
1525
  TYPE = 7
691
1526
  FIXED_HEADER = nil
692
1527
  ATTRIBUTE_SET = AttributeSets::Pin
693
1528
  ATTRIBUTES = Ractor.make_shareable(%i[id])
694
- # Gets the value of `id` attribute in the message.
695
- #--
696
1529
  # @rbs return: ::Integer
1530
+ # @return [Integer]
1531
+ # @see AttributeSets::Pin::Id
697
1532
  def id; attributes[:"id"]&.value; end
698
1533
  end
699
1534
  # Get list of pins and its attributes.
@@ -706,14 +1541,14 @@ class Dpll < ::Nl::Family
706
1541
  #
707
1542
  #
708
1543
  # Requires CAP_NET_ADMIN in the initial user namespace.
709
- class DoPinGetRequest < ::Nl::Protocols::Genl::Message
1544
+ class DoPinGetRequest < ::Nl::Genl::Message
710
1545
  TYPE = 8
711
1546
  FIXED_HEADER = nil
712
1547
  ATTRIBUTE_SET = AttributeSets::Pin
713
1548
  ATTRIBUTES = Ractor.make_shareable(%i[id])
714
- # Gets the value of `id` attribute in the message.
715
- #--
716
1549
  # @rbs return: ::Integer
1550
+ # @return [Integer]
1551
+ # @see AttributeSets::Pin::Id
717
1552
  def id; attributes[:"id"]&.value; end
718
1553
  end
719
1554
  # Get list of pins and its attributes.
@@ -726,102 +1561,137 @@ class Dpll < ::Nl::Family
726
1561
  #
727
1562
  #
728
1563
  # Requires CAP_NET_ADMIN in the initial user namespace.
729
- class DoPinGetReply < ::Nl::Protocols::Genl::Message
1564
+ class DoPinGetReply < ::Nl::Genl::Message
730
1565
  TYPE = 8
731
1566
  FIXED_HEADER = nil
732
1567
  ATTRIBUTE_SET = AttributeSets::Pin
733
1568
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id board_label panel_label package_label type frequency frequency_supported capabilities parent_device parent_pin phase_adjust_min phase_adjust_max phase_adjust fractional_frequency_offset esync_frequency esync_frequency_supported esync_pulse reference_sync phase_adjust_gran fractional_frequency_offset_ppt measured_frequency])
734
- # Gets the value of `id` attribute in the message.
735
- #--
736
1569
  # @rbs return: ::Integer
1570
+ # @return [Integer]
1571
+ # @see AttributeSets::Pin::Id
737
1572
  def id; attributes[:"id"]&.value; end
738
- # Gets the value of `module-name` attribute in the message.
739
- #--
740
1573
  # @rbs return: ::String
1574
+ # @return [String]
1575
+ # @see AttributeSets::Pin::ModuleName
741
1576
  def module_name; attributes[:"module_name"]&.value; end
742
- # Gets the value of `clock-id` attribute in the message.
743
- #--
744
1577
  # @rbs return: ::Integer
1578
+ # @return [Integer]
1579
+ # @see AttributeSets::Pin::ClockId
745
1580
  def clock_id; attributes[:"clock_id"]&.value; end
746
- # Gets the value of `board-label` attribute in the message.
747
- #--
748
1581
  # @rbs return: ::String
1582
+ # @return [String]
1583
+ # @see AttributeSets::Pin::BoardLabel
749
1584
  def board_label; attributes[:"board_label"]&.value; end
750
- # Gets the value of `panel-label` attribute in the message.
751
- #--
752
1585
  # @rbs return: ::String
1586
+ # @return [String]
1587
+ # @see AttributeSets::Pin::PanelLabel
753
1588
  def panel_label; attributes[:"panel_label"]&.value; end
754
- # Gets the value of `package-label` attribute in the message.
755
- #--
756
1589
  # @rbs return: ::String
1590
+ # @return [String]
1591
+ # @see AttributeSets::Pin::PackageLabel
757
1592
  def package_label; attributes[:"package_label"]&.value; end
758
- # Gets the value of `type` attribute in the message.
759
- #--
1593
+ # Known enum values are defined in {Enums::PinType}.
760
1594
  # @rbs return: ::Integer
1595
+ # @return [Integer]
1596
+ # @see AttributeSets::Pin::Type
761
1597
  def type; attributes[:"type"]&.value; end
762
- # Gets the value of `frequency` attribute in the message.
763
- #--
764
1598
  # @rbs return: ::Integer
1599
+ # @return [Integer]
1600
+ # @see AttributeSets::Pin::Frequency
765
1601
  def frequency; attributes[:"frequency"]&.value; end
766
- # Gets the value of `frequency-supported` attribute in the message.
767
- #--
768
- # @rbs return: AttributeSets::FrequencyRange
769
- def frequency_supported; attributes[:"frequency_supported"]&.value; end
770
- # Gets the value of `capabilities` attribute in the message.
771
- #--
772
- # @rbs return: ::Integer
1602
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
1603
+ # @return [Array<AttributeSets::FrequencyRange>]
1604
+ # @see AttributeSets::Pin::FrequencySupported
1605
+ def frequency_supported; attributes[:"frequency_supported"].map(&:value); end
1606
+ # Known flags are defined in {Flags::PinCapabilities}.
1607
+ # @rbs return: ::Integer
1608
+ # @return [Integer]
1609
+ # @see AttributeSets::Pin::Capabilities
773
1610
  def capabilities; attributes[:"capabilities"]&.value; end
774
- # Gets the value of `parent-device` attribute in the message.
775
- #--
776
- # @rbs return: AttributeSets::PinParentDevice
777
- def parent_device; attributes[:"parent_device"]&.value; end
778
- # Gets the value of `parent-pin` attribute in the message.
779
- #--
780
- # @rbs return: AttributeSets::PinParentPin
781
- def parent_pin; attributes[:"parent_pin"]&.value; end
782
- # Gets the value of `phase-adjust-min` attribute in the message.
783
- #--
784
- # @rbs return: ::Integer
1611
+ # @rbs return: ::Array[AttributeSets::PinParentDevice]
1612
+ # @return [Array<AttributeSets::PinParentDevice>]
1613
+ # @see AttributeSets::Pin::ParentDevice
1614
+ def parent_device; attributes[:"parent_device"].map(&:value); end
1615
+ # @rbs return: ::Array[AttributeSets::PinParentPin]
1616
+ # @return [Array<AttributeSets::PinParentPin>]
1617
+ # @see AttributeSets::Pin::ParentPin
1618
+ def parent_pin; attributes[:"parent_pin"].map(&:value); end
1619
+ # @rbs return: ::Integer
1620
+ # @return [Integer]
1621
+ # @see AttributeSets::Pin::PhaseAdjustMin
785
1622
  def phase_adjust_min; attributes[:"phase_adjust_min"]&.value; end
786
- # Gets the value of `phase-adjust-max` attribute in the message.
787
- #--
788
1623
  # @rbs return: ::Integer
1624
+ # @return [Integer]
1625
+ # @see AttributeSets::Pin::PhaseAdjustMax
789
1626
  def phase_adjust_max; attributes[:"phase_adjust_max"]&.value; end
790
- # Gets the value of `phase-adjust` attribute in the message.
791
- #--
792
1627
  # @rbs return: ::Integer
1628
+ # @return [Integer]
1629
+ # @see AttributeSets::Pin::PhaseAdjust
793
1630
  def phase_adjust; attributes[:"phase_adjust"]&.value; end
794
- # Gets the value of `fractional-frequency-offset` attribute in the message.
795
- #--
796
- # @rbs return: ::Integer
1631
+ # The FFO (Fractional Frequency Offset) of the pin.
1632
+ # At top level this represents the RX vs TX symbol rate
1633
+ # offset on the media associated with the pin. Inside
1634
+ # the pin-parent-device nest it represents the frequency
1635
+ # offset between the pin and its parent DPLL device.
1636
+ # Value is in PPM (parts per million).
1637
+ # This is a lower-precision version of
1638
+ # fractional-frequency-offset-ppt.
1639
+ # @rbs return: ::Integer
1640
+ # @return [Integer]
1641
+ # @see AttributeSets::Pin::FractionalFrequencyOffset
797
1642
  def fractional_frequency_offset; attributes[:"fractional_frequency_offset"]&.value; end
798
- # Gets the value of `esync-frequency` attribute in the message.
799
- #--
1643
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
1644
+ # with a SYNC signal embedded into its base clock frequency.
800
1645
  # @rbs return: ::Integer
1646
+ # @return [Integer]
1647
+ # @see AttributeSets::Pin::EsyncFrequency
801
1648
  def esync_frequency; attributes[:"esync_frequency"]&.value; end
802
- # Gets the value of `esync-frequency-supported` attribute in the message.
803
- #--
804
- # @rbs return: AttributeSets::FrequencyRange
805
- def esync_frequency_supported; attributes[:"esync_frequency_supported"]&.value; end
806
- # Gets the value of `esync-pulse` attribute in the message.
807
- #--
808
- # @rbs return: ::Integer
1649
+ # If provided a pin is capable of embedding a SYNC signal (within given
1650
+ # range) into its base frequency signal.
1651
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
1652
+ # @return [Array<AttributeSets::FrequencyRange>]
1653
+ # @see AttributeSets::Pin::EsyncFrequencySupported
1654
+ def esync_frequency_supported; attributes[:"esync_frequency_supported"].map(&:value); end
1655
+ # A ratio of high to low state of a SYNC signal pulse embedded
1656
+ # into base clock frequency. Value is in percents.
1657
+ # @rbs return: ::Integer
1658
+ # @return [Integer]
1659
+ # @see AttributeSets::Pin::EsyncPulse
809
1660
  def esync_pulse; attributes[:"esync_pulse"]&.value; end
810
- # Gets the value of `reference-sync` attribute in the message.
811
- #--
812
- # @rbs return: AttributeSets::ReferenceSync
813
- def reference_sync; attributes[:"reference_sync"]&.value; end
814
- # Gets the value of `phase-adjust-gran` attribute in the message.
815
- #--
816
- # @rbs return: ::Integer
1661
+ # Capable pin provides list of pins that can be bound to create a
1662
+ # reference-sync pin pair.
1663
+ # @rbs return: ::Array[AttributeSets::ReferenceSync]
1664
+ # @return [Array<AttributeSets::ReferenceSync>]
1665
+ # @see AttributeSets::Pin::ReferenceSync
1666
+ def reference_sync; attributes[:"reference_sync"].map(&:value); end
1667
+ # Granularity of phase adjustment, in picoseconds. The value of
1668
+ # phase adjustment must be a multiple of this granularity.
1669
+ # @rbs return: ::Integer
1670
+ # @return [Integer]
1671
+ # @see AttributeSets::Pin::PhaseAdjustGran
817
1672
  def phase_adjust_gran; attributes[:"phase_adjust_gran"]&.value; end
818
- # Gets the value of `fractional-frequency-offset-ppt` attribute in the message.
819
- #--
820
- # @rbs return: ::Integer
1673
+ # The FFO (Fractional Frequency Offset) of the pin.
1674
+ # At top level this represents the RX vs TX symbol rate
1675
+ # offset on the media associated with the pin. Inside
1676
+ # the pin-parent-device nest it represents the frequency
1677
+ # offset between the pin and its parent DPLL device.
1678
+ # Value is in PPT (parts per trillion, 10^-12).
1679
+ # This is a higher-precision version of
1680
+ # fractional-frequency-offset.
1681
+ # @rbs return: ::Integer
1682
+ # @return [Integer]
1683
+ # @see AttributeSets::Pin::FractionalFrequencyOffsetPpt
821
1684
  def fractional_frequency_offset_ppt; attributes[:"fractional_frequency_offset_ppt"]&.value; end
822
- # Gets the value of `measured-frequency` attribute in the message.
823
- #--
824
- # @rbs return: ::Integer
1685
+ # The measured frequency of the input pin in millihertz (mHz).
1686
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
1687
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part (Hz)
1688
+ # of a measured frequency value.
1689
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
1690
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part
1691
+ # of a measured frequency value.
1692
+ # @rbs return: ::Integer
1693
+ # @return [Integer]
1694
+ # @see AttributeSets::Pin::MeasuredFrequency
825
1695
  def measured_frequency; attributes[:"measured_frequency"]&.value; end
826
1696
  end
827
1697
  # Get list of pins and its attributes.
@@ -834,14 +1704,14 @@ class Dpll < ::Nl::Family
834
1704
  #
835
1705
  #
836
1706
  # Requires CAP_NET_ADMIN in the initial user namespace.
837
- class DumpPinGetRequest < ::Nl::Protocols::Genl::Message
1707
+ class DumpPinGetRequest < ::Nl::Genl::Message
838
1708
  TYPE = 8
839
1709
  FIXED_HEADER = nil
840
1710
  ATTRIBUTE_SET = AttributeSets::Pin
841
1711
  ATTRIBUTES = Ractor.make_shareable(%i[id])
842
- # Gets the value of `id` attribute in the message.
843
- #--
844
1712
  # @rbs return: ::Integer
1713
+ # @return [Integer]
1714
+ # @see AttributeSets::Pin::Id
845
1715
  def id; attributes[:"id"]&.value; end
846
1716
  end
847
1717
  # Get list of pins and its attributes.
@@ -854,637 +1724,825 @@ class Dpll < ::Nl::Family
854
1724
  #
855
1725
  #
856
1726
  # Requires CAP_NET_ADMIN in the initial user namespace.
857
- class DumpPinGetReply < ::Nl::Protocols::Genl::Message
1727
+ class DumpPinGetReply < ::Nl::Genl::Message
858
1728
  TYPE = 8
859
1729
  FIXED_HEADER = nil
860
1730
  ATTRIBUTE_SET = AttributeSets::Pin
861
1731
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id board_label panel_label package_label type frequency frequency_supported capabilities parent_device parent_pin phase_adjust_min phase_adjust_max phase_adjust fractional_frequency_offset esync_frequency esync_frequency_supported esync_pulse reference_sync phase_adjust_gran fractional_frequency_offset_ppt measured_frequency])
862
- # Gets the value of `id` attribute in the message.
863
- #--
864
1732
  # @rbs return: ::Integer
1733
+ # @return [Integer]
1734
+ # @see AttributeSets::Pin::Id
865
1735
  def id; attributes[:"id"]&.value; end
866
- # Gets the value of `module-name` attribute in the message.
867
- #--
868
1736
  # @rbs return: ::String
1737
+ # @return [String]
1738
+ # @see AttributeSets::Pin::ModuleName
869
1739
  def module_name; attributes[:"module_name"]&.value; end
870
- # Gets the value of `clock-id` attribute in the message.
871
- #--
872
1740
  # @rbs return: ::Integer
1741
+ # @return [Integer]
1742
+ # @see AttributeSets::Pin::ClockId
873
1743
  def clock_id; attributes[:"clock_id"]&.value; end
874
- # Gets the value of `board-label` attribute in the message.
875
- #--
876
1744
  # @rbs return: ::String
1745
+ # @return [String]
1746
+ # @see AttributeSets::Pin::BoardLabel
877
1747
  def board_label; attributes[:"board_label"]&.value; end
878
- # Gets the value of `panel-label` attribute in the message.
879
- #--
880
1748
  # @rbs return: ::String
1749
+ # @return [String]
1750
+ # @see AttributeSets::Pin::PanelLabel
881
1751
  def panel_label; attributes[:"panel_label"]&.value; end
882
- # Gets the value of `package-label` attribute in the message.
883
- #--
884
1752
  # @rbs return: ::String
1753
+ # @return [String]
1754
+ # @see AttributeSets::Pin::PackageLabel
885
1755
  def package_label; attributes[:"package_label"]&.value; end
886
- # Gets the value of `type` attribute in the message.
887
- #--
1756
+ # Known enum values are defined in {Enums::PinType}.
888
1757
  # @rbs return: ::Integer
1758
+ # @return [Integer]
1759
+ # @see AttributeSets::Pin::Type
889
1760
  def type; attributes[:"type"]&.value; end
890
- # Gets the value of `frequency` attribute in the message.
891
- #--
892
1761
  # @rbs return: ::Integer
1762
+ # @return [Integer]
1763
+ # @see AttributeSets::Pin::Frequency
893
1764
  def frequency; attributes[:"frequency"]&.value; end
894
- # Gets the value of `frequency-supported` attribute in the message.
895
- #--
896
- # @rbs return: AttributeSets::FrequencyRange
897
- def frequency_supported; attributes[:"frequency_supported"]&.value; end
898
- # Gets the value of `capabilities` attribute in the message.
899
- #--
900
- # @rbs return: ::Integer
1765
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
1766
+ # @return [Array<AttributeSets::FrequencyRange>]
1767
+ # @see AttributeSets::Pin::FrequencySupported
1768
+ def frequency_supported; attributes[:"frequency_supported"].map(&:value); end
1769
+ # Known flags are defined in {Flags::PinCapabilities}.
1770
+ # @rbs return: ::Integer
1771
+ # @return [Integer]
1772
+ # @see AttributeSets::Pin::Capabilities
901
1773
  def capabilities; attributes[:"capabilities"]&.value; end
902
- # Gets the value of `parent-device` attribute in the message.
903
- #--
904
- # @rbs return: AttributeSets::PinParentDevice
905
- def parent_device; attributes[:"parent_device"]&.value; end
906
- # Gets the value of `parent-pin` attribute in the message.
907
- #--
908
- # @rbs return: AttributeSets::PinParentPin
909
- def parent_pin; attributes[:"parent_pin"]&.value; end
910
- # Gets the value of `phase-adjust-min` attribute in the message.
911
- #--
912
- # @rbs return: ::Integer
1774
+ # @rbs return: ::Array[AttributeSets::PinParentDevice]
1775
+ # @return [Array<AttributeSets::PinParentDevice>]
1776
+ # @see AttributeSets::Pin::ParentDevice
1777
+ def parent_device; attributes[:"parent_device"].map(&:value); end
1778
+ # @rbs return: ::Array[AttributeSets::PinParentPin]
1779
+ # @return [Array<AttributeSets::PinParentPin>]
1780
+ # @see AttributeSets::Pin::ParentPin
1781
+ def parent_pin; attributes[:"parent_pin"].map(&:value); end
1782
+ # @rbs return: ::Integer
1783
+ # @return [Integer]
1784
+ # @see AttributeSets::Pin::PhaseAdjustMin
913
1785
  def phase_adjust_min; attributes[:"phase_adjust_min"]&.value; end
914
- # Gets the value of `phase-adjust-max` attribute in the message.
915
- #--
916
1786
  # @rbs return: ::Integer
1787
+ # @return [Integer]
1788
+ # @see AttributeSets::Pin::PhaseAdjustMax
917
1789
  def phase_adjust_max; attributes[:"phase_adjust_max"]&.value; end
918
- # Gets the value of `phase-adjust` attribute in the message.
919
- #--
920
1790
  # @rbs return: ::Integer
1791
+ # @return [Integer]
1792
+ # @see AttributeSets::Pin::PhaseAdjust
921
1793
  def phase_adjust; attributes[:"phase_adjust"]&.value; end
922
- # Gets the value of `fractional-frequency-offset` attribute in the message.
923
- #--
924
- # @rbs return: ::Integer
1794
+ # The FFO (Fractional Frequency Offset) of the pin.
1795
+ # At top level this represents the RX vs TX symbol rate
1796
+ # offset on the media associated with the pin. Inside
1797
+ # the pin-parent-device nest it represents the frequency
1798
+ # offset between the pin and its parent DPLL device.
1799
+ # Value is in PPM (parts per million).
1800
+ # This is a lower-precision version of
1801
+ # fractional-frequency-offset-ppt.
1802
+ # @rbs return: ::Integer
1803
+ # @return [Integer]
1804
+ # @see AttributeSets::Pin::FractionalFrequencyOffset
925
1805
  def fractional_frequency_offset; attributes[:"fractional_frequency_offset"]&.value; end
926
- # Gets the value of `esync-frequency` attribute in the message.
927
- #--
1806
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
1807
+ # with a SYNC signal embedded into its base clock frequency.
928
1808
  # @rbs return: ::Integer
1809
+ # @return [Integer]
1810
+ # @see AttributeSets::Pin::EsyncFrequency
929
1811
  def esync_frequency; attributes[:"esync_frequency"]&.value; end
930
- # Gets the value of `esync-frequency-supported` attribute in the message.
931
- #--
932
- # @rbs return: AttributeSets::FrequencyRange
933
- def esync_frequency_supported; attributes[:"esync_frequency_supported"]&.value; end
934
- # Gets the value of `esync-pulse` attribute in the message.
935
- #--
936
- # @rbs return: ::Integer
1812
+ # If provided a pin is capable of embedding a SYNC signal (within given
1813
+ # range) into its base frequency signal.
1814
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
1815
+ # @return [Array<AttributeSets::FrequencyRange>]
1816
+ # @see AttributeSets::Pin::EsyncFrequencySupported
1817
+ def esync_frequency_supported; attributes[:"esync_frequency_supported"].map(&:value); end
1818
+ # A ratio of high to low state of a SYNC signal pulse embedded
1819
+ # into base clock frequency. Value is in percents.
1820
+ # @rbs return: ::Integer
1821
+ # @return [Integer]
1822
+ # @see AttributeSets::Pin::EsyncPulse
937
1823
  def esync_pulse; attributes[:"esync_pulse"]&.value; end
938
- # Gets the value of `reference-sync` attribute in the message.
939
- #--
940
- # @rbs return: AttributeSets::ReferenceSync
941
- def reference_sync; attributes[:"reference_sync"]&.value; end
942
- # Gets the value of `phase-adjust-gran` attribute in the message.
943
- #--
944
- # @rbs return: ::Integer
1824
+ # Capable pin provides list of pins that can be bound to create a
1825
+ # reference-sync pin pair.
1826
+ # @rbs return: ::Array[AttributeSets::ReferenceSync]
1827
+ # @return [Array<AttributeSets::ReferenceSync>]
1828
+ # @see AttributeSets::Pin::ReferenceSync
1829
+ def reference_sync; attributes[:"reference_sync"].map(&:value); end
1830
+ # Granularity of phase adjustment, in picoseconds. The value of
1831
+ # phase adjustment must be a multiple of this granularity.
1832
+ # @rbs return: ::Integer
1833
+ # @return [Integer]
1834
+ # @see AttributeSets::Pin::PhaseAdjustGran
945
1835
  def phase_adjust_gran; attributes[:"phase_adjust_gran"]&.value; end
946
- # Gets the value of `fractional-frequency-offset-ppt` attribute in the message.
947
- #--
948
- # @rbs return: ::Integer
1836
+ # The FFO (Fractional Frequency Offset) of the pin.
1837
+ # At top level this represents the RX vs TX symbol rate
1838
+ # offset on the media associated with the pin. Inside
1839
+ # the pin-parent-device nest it represents the frequency
1840
+ # offset between the pin and its parent DPLL device.
1841
+ # Value is in PPT (parts per trillion, 10^-12).
1842
+ # This is a higher-precision version of
1843
+ # fractional-frequency-offset.
1844
+ # @rbs return: ::Integer
1845
+ # @return [Integer]
1846
+ # @see AttributeSets::Pin::FractionalFrequencyOffsetPpt
949
1847
  def fractional_frequency_offset_ppt; attributes[:"fractional_frequency_offset_ppt"]&.value; end
950
- # Gets the value of `measured-frequency` attribute in the message.
951
- #--
952
- # @rbs return: ::Integer
1848
+ # The measured frequency of the input pin in millihertz (mHz).
1849
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
1850
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part (Hz)
1851
+ # of a measured frequency value.
1852
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
1853
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part
1854
+ # of a measured frequency value.
1855
+ # @rbs return: ::Integer
1856
+ # @return [Integer]
1857
+ # @see AttributeSets::Pin::MeasuredFrequency
953
1858
  def measured_frequency; attributes[:"measured_frequency"]&.value; end
954
1859
  end
955
1860
  # Set attributes of a target pin
956
1861
  #
957
1862
  # Requires CAP_NET_ADMIN in the initial user namespace.
958
- class DoPinSetRequest < ::Nl::Protocols::Genl::Message
1863
+ class DoPinSetRequest < ::Nl::Genl::Message
959
1864
  TYPE = 9
960
1865
  FIXED_HEADER = nil
961
1866
  ATTRIBUTE_SET = AttributeSets::Pin
962
1867
  ATTRIBUTES = Ractor.make_shareable(%i[id direction frequency prio state parent_device parent_pin phase_adjust esync_frequency reference_sync])
963
- # Gets the value of `id` attribute in the message.
964
- #--
965
1868
  # @rbs return: ::Integer
1869
+ # @return [Integer]
1870
+ # @see AttributeSets::Pin::Id
966
1871
  def id; attributes[:"id"]&.value; end
967
- # Gets the value of `direction` attribute in the message.
968
- #--
1872
+ # Known enum values are defined in {Enums::PinDirection}.
969
1873
  # @rbs return: ::Integer
1874
+ # @return [Integer]
1875
+ # @see AttributeSets::Pin::Direction
970
1876
  def direction; attributes[:"direction"]&.value; end
971
- # Gets the value of `frequency` attribute in the message.
972
- #--
973
1877
  # @rbs return: ::Integer
1878
+ # @return [Integer]
1879
+ # @see AttributeSets::Pin::Frequency
974
1880
  def frequency; attributes[:"frequency"]&.value; end
975
- # Gets the value of `prio` attribute in the message.
976
- #--
977
1881
  # @rbs return: ::Integer
1882
+ # @return [Integer]
1883
+ # @see AttributeSets::Pin::Prio
978
1884
  def prio; attributes[:"prio"]&.value; end
979
- # Gets the value of `state` attribute in the message.
980
- #--
1885
+ # Known enum values are defined in {Enums::PinState}.
981
1886
  # @rbs return: ::Integer
1887
+ # @return [Integer]
1888
+ # @see AttributeSets::Pin::State
982
1889
  def state; attributes[:"state"]&.value; end
983
- # Gets the value of `parent-device` attribute in the message.
984
- #--
985
- # @rbs return: AttributeSets::PinParentDevice
986
- def parent_device; attributes[:"parent_device"]&.value; end
987
- # Gets the value of `parent-pin` attribute in the message.
988
- #--
989
- # @rbs return: AttributeSets::PinParentPin
990
- def parent_pin; attributes[:"parent_pin"]&.value; end
991
- # Gets the value of `phase-adjust` attribute in the message.
992
- #--
993
- # @rbs return: ::Integer
1890
+ # @rbs return: ::Array[AttributeSets::PinParentDevice]
1891
+ # @return [Array<AttributeSets::PinParentDevice>]
1892
+ # @see AttributeSets::Pin::ParentDevice
1893
+ def parent_device; attributes[:"parent_device"].map(&:value); end
1894
+ # @rbs return: ::Array[AttributeSets::PinParentPin]
1895
+ # @return [Array<AttributeSets::PinParentPin>]
1896
+ # @see AttributeSets::Pin::ParentPin
1897
+ def parent_pin; attributes[:"parent_pin"].map(&:value); end
1898
+ # @rbs return: ::Integer
1899
+ # @return [Integer]
1900
+ # @see AttributeSets::Pin::PhaseAdjust
994
1901
  def phase_adjust; attributes[:"phase_adjust"]&.value; end
995
- # Gets the value of `esync-frequency` attribute in the message.
996
- #--
1902
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
1903
+ # with a SYNC signal embedded into its base clock frequency.
997
1904
  # @rbs return: ::Integer
1905
+ # @return [Integer]
1906
+ # @see AttributeSets::Pin::EsyncFrequency
998
1907
  def esync_frequency; attributes[:"esync_frequency"]&.value; end
999
- # Gets the value of `reference-sync` attribute in the message.
1000
- #--
1001
- # @rbs return: AttributeSets::ReferenceSync
1002
- def reference_sync; attributes[:"reference_sync"]&.value; end
1908
+ # Capable pin provides list of pins that can be bound to create a
1909
+ # reference-sync pin pair.
1910
+ # @rbs return: ::Array[AttributeSets::ReferenceSync]
1911
+ # @return [Array<AttributeSets::ReferenceSync>]
1912
+ # @see AttributeSets::Pin::ReferenceSync
1913
+ def reference_sync; attributes[:"reference_sync"].map(&:value); end
1003
1914
  end
1004
1915
  end
1005
1916
  module Notifications
1006
1917
  # Notification about device appearing
1007
1918
  #
1008
1919
  # Multicast group: `monitor`.
1009
- class DeviceCreateNtf < ::Nl::Protocols::Genl::Message
1920
+ class DeviceCreateNtf < ::Nl::Genl::Message
1010
1921
  TYPE = 4
1011
1922
  FIXED_HEADER = nil
1012
1923
  ATTRIBUTE_SET = AttributeSets::Dpll
1013
1924
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id mode mode_supported lock_status temp type lock_status_error phase_offset_monitor phase_offset_avg_factor frequency_monitor])
1014
- # Gets the value of `id` attribute in the message.
1015
- #--
1016
1925
  # @rbs return: ::Integer
1926
+ # @return [Integer]
1927
+ # @see AttributeSets::Dpll::Id
1017
1928
  def id; attributes[:"id"]&.value; end
1018
- # Gets the value of `module-name` attribute in the message.
1019
- #--
1020
1929
  # @rbs return: ::String
1930
+ # @return [String]
1931
+ # @see AttributeSets::Dpll::ModuleName
1021
1932
  def module_name; attributes[:"module_name"]&.value; end
1022
- # Gets the value of `clock-id` attribute in the message.
1023
- #--
1024
1933
  # @rbs return: ::Integer
1934
+ # @return [Integer]
1935
+ # @see AttributeSets::Dpll::ClockId
1025
1936
  def clock_id; attributes[:"clock_id"]&.value; end
1026
- # Gets the value of `mode` attribute in the message.
1027
- #--
1937
+ # Known enum values are defined in {Enums::Mode}.
1028
1938
  # @rbs return: ::Integer
1939
+ # @return [Integer]
1940
+ # @see AttributeSets::Dpll::Mode
1029
1941
  def mode; attributes[:"mode"]&.value; end
1030
- # Gets the value of `mode-supported` attribute in the message.
1031
- #--
1032
- # @rbs return: ::Integer
1033
- def mode_supported; attributes[:"mode_supported"]&.value; end
1034
- # Gets the value of `lock-status` attribute in the message.
1035
- #--
1036
- # @rbs return: ::Integer
1942
+ # Known enum values are defined in {Enums::Mode}.
1943
+ # @rbs return: ::Array[::Integer]
1944
+ # @return [Array<Integer>]
1945
+ # @see AttributeSets::Dpll::ModeSupported
1946
+ def mode_supported; attributes[:"mode_supported"].map(&:value); end
1947
+ # Known enum values are defined in {Enums::LockStatus}.
1948
+ # @rbs return: ::Integer
1949
+ # @return [Integer]
1950
+ # @see AttributeSets::Dpll::LockStatus
1037
1951
  def lock_status; attributes[:"lock_status"]&.value; end
1038
- # Gets the value of `temp` attribute in the message.
1039
- #--
1040
1952
  # @rbs return: ::Integer
1953
+ # @return [Integer]
1954
+ # @see AttributeSets::Dpll::Temp
1041
1955
  def temp; attributes[:"temp"]&.value; end
1042
- # Gets the value of `type` attribute in the message.
1043
- #--
1956
+ # Known enum values are defined in {Enums::Type}.
1044
1957
  # @rbs return: ::Integer
1958
+ # @return [Integer]
1959
+ # @see AttributeSets::Dpll::Type
1045
1960
  def type; attributes[:"type"]&.value; end
1046
- # Gets the value of `lock-status-error` attribute in the message.
1047
- #--
1961
+ # Known enum values are defined in {Enums::LockStatusError}.
1048
1962
  # @rbs return: ::Integer
1963
+ # @return [Integer]
1964
+ # @see AttributeSets::Dpll::LockStatusError
1049
1965
  def lock_status_error; attributes[:"lock_status_error"]&.value; end
1050
- # Gets the value of `phase-offset-monitor` attribute in the message.
1051
- #--
1966
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
1967
+ #
1968
+ # Known enum values are defined in {Enums::FeatureState}.
1052
1969
  # @rbs return: ::Integer
1970
+ # @return [Integer]
1971
+ # @see AttributeSets::Dpll::PhaseOffsetMonitor
1053
1972
  def phase_offset_monitor; attributes[:"phase_offset_monitor"]&.value; end
1054
- # Gets the value of `phase-offset-avg-factor` attribute in the message.
1055
- #--
1973
+ # Averaging factor applied to calculation of reported phase offset.
1056
1974
  # @rbs return: ::Integer
1975
+ # @return [Integer]
1976
+ # @see AttributeSets::Dpll::PhaseOffsetAvgFactor
1057
1977
  def phase_offset_avg_factor; attributes[:"phase_offset_avg_factor"]&.value; end
1058
- # Gets the value of `frequency-monitor` attribute in the message.
1059
- #--
1978
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
1979
+ #
1980
+ # Known enum values are defined in {Enums::FeatureState}.
1060
1981
  # @rbs return: ::Integer
1982
+ # @return [Integer]
1983
+ # @see AttributeSets::Dpll::FrequencyMonitor
1061
1984
  def frequency_monitor; attributes[:"frequency_monitor"]&.value; end
1062
1985
  end
1063
1986
  # Notification about device disappearing
1064
1987
  #
1065
1988
  # Multicast group: `monitor`.
1066
- class DeviceDeleteNtf < ::Nl::Protocols::Genl::Message
1989
+ class DeviceDeleteNtf < ::Nl::Genl::Message
1067
1990
  TYPE = 5
1068
1991
  FIXED_HEADER = nil
1069
1992
  ATTRIBUTE_SET = AttributeSets::Dpll
1070
1993
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id mode mode_supported lock_status temp type lock_status_error phase_offset_monitor phase_offset_avg_factor frequency_monitor])
1071
- # Gets the value of `id` attribute in the message.
1072
- #--
1073
1994
  # @rbs return: ::Integer
1995
+ # @return [Integer]
1996
+ # @see AttributeSets::Dpll::Id
1074
1997
  def id; attributes[:"id"]&.value; end
1075
- # Gets the value of `module-name` attribute in the message.
1076
- #--
1077
1998
  # @rbs return: ::String
1999
+ # @return [String]
2000
+ # @see AttributeSets::Dpll::ModuleName
1078
2001
  def module_name; attributes[:"module_name"]&.value; end
1079
- # Gets the value of `clock-id` attribute in the message.
1080
- #--
1081
2002
  # @rbs return: ::Integer
2003
+ # @return [Integer]
2004
+ # @see AttributeSets::Dpll::ClockId
1082
2005
  def clock_id; attributes[:"clock_id"]&.value; end
1083
- # Gets the value of `mode` attribute in the message.
1084
- #--
2006
+ # Known enum values are defined in {Enums::Mode}.
1085
2007
  # @rbs return: ::Integer
2008
+ # @return [Integer]
2009
+ # @see AttributeSets::Dpll::Mode
1086
2010
  def mode; attributes[:"mode"]&.value; end
1087
- # Gets the value of `mode-supported` attribute in the message.
1088
- #--
1089
- # @rbs return: ::Integer
1090
- def mode_supported; attributes[:"mode_supported"]&.value; end
1091
- # Gets the value of `lock-status` attribute in the message.
1092
- #--
1093
- # @rbs return: ::Integer
2011
+ # Known enum values are defined in {Enums::Mode}.
2012
+ # @rbs return: ::Array[::Integer]
2013
+ # @return [Array<Integer>]
2014
+ # @see AttributeSets::Dpll::ModeSupported
2015
+ def mode_supported; attributes[:"mode_supported"].map(&:value); end
2016
+ # Known enum values are defined in {Enums::LockStatus}.
2017
+ # @rbs return: ::Integer
2018
+ # @return [Integer]
2019
+ # @see AttributeSets::Dpll::LockStatus
1094
2020
  def lock_status; attributes[:"lock_status"]&.value; end
1095
- # Gets the value of `temp` attribute in the message.
1096
- #--
1097
2021
  # @rbs return: ::Integer
2022
+ # @return [Integer]
2023
+ # @see AttributeSets::Dpll::Temp
1098
2024
  def temp; attributes[:"temp"]&.value; end
1099
- # Gets the value of `type` attribute in the message.
1100
- #--
2025
+ # Known enum values are defined in {Enums::Type}.
1101
2026
  # @rbs return: ::Integer
2027
+ # @return [Integer]
2028
+ # @see AttributeSets::Dpll::Type
1102
2029
  def type; attributes[:"type"]&.value; end
1103
- # Gets the value of `lock-status-error` attribute in the message.
1104
- #--
2030
+ # Known enum values are defined in {Enums::LockStatusError}.
1105
2031
  # @rbs return: ::Integer
2032
+ # @return [Integer]
2033
+ # @see AttributeSets::Dpll::LockStatusError
1106
2034
  def lock_status_error; attributes[:"lock_status_error"]&.value; end
1107
- # Gets the value of `phase-offset-monitor` attribute in the message.
1108
- #--
2035
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
2036
+ #
2037
+ # Known enum values are defined in {Enums::FeatureState}.
1109
2038
  # @rbs return: ::Integer
2039
+ # @return [Integer]
2040
+ # @see AttributeSets::Dpll::PhaseOffsetMonitor
1110
2041
  def phase_offset_monitor; attributes[:"phase_offset_monitor"]&.value; end
1111
- # Gets the value of `phase-offset-avg-factor` attribute in the message.
1112
- #--
2042
+ # Averaging factor applied to calculation of reported phase offset.
1113
2043
  # @rbs return: ::Integer
2044
+ # @return [Integer]
2045
+ # @see AttributeSets::Dpll::PhaseOffsetAvgFactor
1114
2046
  def phase_offset_avg_factor; attributes[:"phase_offset_avg_factor"]&.value; end
1115
- # Gets the value of `frequency-monitor` attribute in the message.
1116
- #--
2047
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
2048
+ #
2049
+ # Known enum values are defined in {Enums::FeatureState}.
1117
2050
  # @rbs return: ::Integer
2051
+ # @return [Integer]
2052
+ # @see AttributeSets::Dpll::FrequencyMonitor
1118
2053
  def frequency_monitor; attributes[:"frequency_monitor"]&.value; end
1119
2054
  end
1120
2055
  # Notification about device configuration being changed
1121
2056
  #
1122
2057
  # Multicast group: `monitor`.
1123
- class DeviceChangeNtf < ::Nl::Protocols::Genl::Message
2058
+ class DeviceChangeNtf < ::Nl::Genl::Message
1124
2059
  TYPE = 6
1125
2060
  FIXED_HEADER = nil
1126
2061
  ATTRIBUTE_SET = AttributeSets::Dpll
1127
2062
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id mode mode_supported lock_status temp type lock_status_error phase_offset_monitor phase_offset_avg_factor frequency_monitor])
1128
- # Gets the value of `id` attribute in the message.
1129
- #--
1130
2063
  # @rbs return: ::Integer
2064
+ # @return [Integer]
2065
+ # @see AttributeSets::Dpll::Id
1131
2066
  def id; attributes[:"id"]&.value; end
1132
- # Gets the value of `module-name` attribute in the message.
1133
- #--
1134
2067
  # @rbs return: ::String
2068
+ # @return [String]
2069
+ # @see AttributeSets::Dpll::ModuleName
1135
2070
  def module_name; attributes[:"module_name"]&.value; end
1136
- # Gets the value of `clock-id` attribute in the message.
1137
- #--
1138
2071
  # @rbs return: ::Integer
2072
+ # @return [Integer]
2073
+ # @see AttributeSets::Dpll::ClockId
1139
2074
  def clock_id; attributes[:"clock_id"]&.value; end
1140
- # Gets the value of `mode` attribute in the message.
1141
- #--
2075
+ # Known enum values are defined in {Enums::Mode}.
1142
2076
  # @rbs return: ::Integer
2077
+ # @return [Integer]
2078
+ # @see AttributeSets::Dpll::Mode
1143
2079
  def mode; attributes[:"mode"]&.value; end
1144
- # Gets the value of `mode-supported` attribute in the message.
1145
- #--
1146
- # @rbs return: ::Integer
1147
- def mode_supported; attributes[:"mode_supported"]&.value; end
1148
- # Gets the value of `lock-status` attribute in the message.
1149
- #--
1150
- # @rbs return: ::Integer
2080
+ # Known enum values are defined in {Enums::Mode}.
2081
+ # @rbs return: ::Array[::Integer]
2082
+ # @return [Array<Integer>]
2083
+ # @see AttributeSets::Dpll::ModeSupported
2084
+ def mode_supported; attributes[:"mode_supported"].map(&:value); end
2085
+ # Known enum values are defined in {Enums::LockStatus}.
2086
+ # @rbs return: ::Integer
2087
+ # @return [Integer]
2088
+ # @see AttributeSets::Dpll::LockStatus
1151
2089
  def lock_status; attributes[:"lock_status"]&.value; end
1152
- # Gets the value of `temp` attribute in the message.
1153
- #--
1154
2090
  # @rbs return: ::Integer
2091
+ # @return [Integer]
2092
+ # @see AttributeSets::Dpll::Temp
1155
2093
  def temp; attributes[:"temp"]&.value; end
1156
- # Gets the value of `type` attribute in the message.
1157
- #--
2094
+ # Known enum values are defined in {Enums::Type}.
1158
2095
  # @rbs return: ::Integer
2096
+ # @return [Integer]
2097
+ # @see AttributeSets::Dpll::Type
1159
2098
  def type; attributes[:"type"]&.value; end
1160
- # Gets the value of `lock-status-error` attribute in the message.
1161
- #--
2099
+ # Known enum values are defined in {Enums::LockStatusError}.
1162
2100
  # @rbs return: ::Integer
2101
+ # @return [Integer]
2102
+ # @see AttributeSets::Dpll::LockStatusError
1163
2103
  def lock_status_error; attributes[:"lock_status_error"]&.value; end
1164
- # Gets the value of `phase-offset-monitor` attribute in the message.
1165
- #--
2104
+ # Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
2105
+ #
2106
+ # Known enum values are defined in {Enums::FeatureState}.
1166
2107
  # @rbs return: ::Integer
2108
+ # @return [Integer]
2109
+ # @see AttributeSets::Dpll::PhaseOffsetMonitor
1167
2110
  def phase_offset_monitor; attributes[:"phase_offset_monitor"]&.value; end
1168
- # Gets the value of `phase-offset-avg-factor` attribute in the message.
1169
- #--
2111
+ # Averaging factor applied to calculation of reported phase offset.
1170
2112
  # @rbs return: ::Integer
2113
+ # @return [Integer]
2114
+ # @see AttributeSets::Dpll::PhaseOffsetAvgFactor
1171
2115
  def phase_offset_avg_factor; attributes[:"phase_offset_avg_factor"]&.value; end
1172
- # Gets the value of `frequency-monitor` attribute in the message.
1173
- #--
2116
+ # Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
2117
+ #
2118
+ # Known enum values are defined in {Enums::FeatureState}.
1174
2119
  # @rbs return: ::Integer
2120
+ # @return [Integer]
2121
+ # @see AttributeSets::Dpll::FrequencyMonitor
1175
2122
  def frequency_monitor; attributes[:"frequency_monitor"]&.value; end
1176
2123
  end
1177
2124
  # Notification about pin appearing
1178
2125
  #
1179
2126
  # Multicast group: `monitor`.
1180
- class PinCreateNtf < ::Nl::Protocols::Genl::Message
2127
+ class PinCreateNtf < ::Nl::Genl::Message
1181
2128
  TYPE = 10
1182
2129
  FIXED_HEADER = nil
1183
2130
  ATTRIBUTE_SET = AttributeSets::Pin
1184
2131
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id board_label panel_label package_label type frequency frequency_supported capabilities parent_device parent_pin phase_adjust_min phase_adjust_max phase_adjust fractional_frequency_offset esync_frequency esync_frequency_supported esync_pulse reference_sync phase_adjust_gran fractional_frequency_offset_ppt measured_frequency])
1185
- # Gets the value of `id` attribute in the message.
1186
- #--
1187
2132
  # @rbs return: ::Integer
2133
+ # @return [Integer]
2134
+ # @see AttributeSets::Pin::Id
1188
2135
  def id; attributes[:"id"]&.value; end
1189
- # Gets the value of `module-name` attribute in the message.
1190
- #--
1191
2136
  # @rbs return: ::String
2137
+ # @return [String]
2138
+ # @see AttributeSets::Pin::ModuleName
1192
2139
  def module_name; attributes[:"module_name"]&.value; end
1193
- # Gets the value of `clock-id` attribute in the message.
1194
- #--
1195
2140
  # @rbs return: ::Integer
2141
+ # @return [Integer]
2142
+ # @see AttributeSets::Pin::ClockId
1196
2143
  def clock_id; attributes[:"clock_id"]&.value; end
1197
- # Gets the value of `board-label` attribute in the message.
1198
- #--
1199
2144
  # @rbs return: ::String
2145
+ # @return [String]
2146
+ # @see AttributeSets::Pin::BoardLabel
1200
2147
  def board_label; attributes[:"board_label"]&.value; end
1201
- # Gets the value of `panel-label` attribute in the message.
1202
- #--
1203
2148
  # @rbs return: ::String
2149
+ # @return [String]
2150
+ # @see AttributeSets::Pin::PanelLabel
1204
2151
  def panel_label; attributes[:"panel_label"]&.value; end
1205
- # Gets the value of `package-label` attribute in the message.
1206
- #--
1207
2152
  # @rbs return: ::String
2153
+ # @return [String]
2154
+ # @see AttributeSets::Pin::PackageLabel
1208
2155
  def package_label; attributes[:"package_label"]&.value; end
1209
- # Gets the value of `type` attribute in the message.
1210
- #--
2156
+ # Known enum values are defined in {Enums::PinType}.
1211
2157
  # @rbs return: ::Integer
2158
+ # @return [Integer]
2159
+ # @see AttributeSets::Pin::Type
1212
2160
  def type; attributes[:"type"]&.value; end
1213
- # Gets the value of `frequency` attribute in the message.
1214
- #--
1215
2161
  # @rbs return: ::Integer
2162
+ # @return [Integer]
2163
+ # @see AttributeSets::Pin::Frequency
1216
2164
  def frequency; attributes[:"frequency"]&.value; end
1217
- # Gets the value of `frequency-supported` attribute in the message.
1218
- #--
1219
- # @rbs return: AttributeSets::FrequencyRange
1220
- def frequency_supported; attributes[:"frequency_supported"]&.value; end
1221
- # Gets the value of `capabilities` attribute in the message.
1222
- #--
1223
- # @rbs return: ::Integer
2165
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
2166
+ # @return [Array<AttributeSets::FrequencyRange>]
2167
+ # @see AttributeSets::Pin::FrequencySupported
2168
+ def frequency_supported; attributes[:"frequency_supported"].map(&:value); end
2169
+ # Known flags are defined in {Flags::PinCapabilities}.
2170
+ # @rbs return: ::Integer
2171
+ # @return [Integer]
2172
+ # @see AttributeSets::Pin::Capabilities
1224
2173
  def capabilities; attributes[:"capabilities"]&.value; end
1225
- # Gets the value of `parent-device` attribute in the message.
1226
- #--
1227
- # @rbs return: AttributeSets::PinParentDevice
1228
- def parent_device; attributes[:"parent_device"]&.value; end
1229
- # Gets the value of `parent-pin` attribute in the message.
1230
- #--
1231
- # @rbs return: AttributeSets::PinParentPin
1232
- def parent_pin; attributes[:"parent_pin"]&.value; end
1233
- # Gets the value of `phase-adjust-min` attribute in the message.
1234
- #--
1235
- # @rbs return: ::Integer
2174
+ # @rbs return: ::Array[AttributeSets::PinParentDevice]
2175
+ # @return [Array<AttributeSets::PinParentDevice>]
2176
+ # @see AttributeSets::Pin::ParentDevice
2177
+ def parent_device; attributes[:"parent_device"].map(&:value); end
2178
+ # @rbs return: ::Array[AttributeSets::PinParentPin]
2179
+ # @return [Array<AttributeSets::PinParentPin>]
2180
+ # @see AttributeSets::Pin::ParentPin
2181
+ def parent_pin; attributes[:"parent_pin"].map(&:value); end
2182
+ # @rbs return: ::Integer
2183
+ # @return [Integer]
2184
+ # @see AttributeSets::Pin::PhaseAdjustMin
1236
2185
  def phase_adjust_min; attributes[:"phase_adjust_min"]&.value; end
1237
- # Gets the value of `phase-adjust-max` attribute in the message.
1238
- #--
1239
2186
  # @rbs return: ::Integer
2187
+ # @return [Integer]
2188
+ # @see AttributeSets::Pin::PhaseAdjustMax
1240
2189
  def phase_adjust_max; attributes[:"phase_adjust_max"]&.value; end
1241
- # Gets the value of `phase-adjust` attribute in the message.
1242
- #--
1243
2190
  # @rbs return: ::Integer
2191
+ # @return [Integer]
2192
+ # @see AttributeSets::Pin::PhaseAdjust
1244
2193
  def phase_adjust; attributes[:"phase_adjust"]&.value; end
1245
- # Gets the value of `fractional-frequency-offset` attribute in the message.
1246
- #--
1247
- # @rbs return: ::Integer
2194
+ # The FFO (Fractional Frequency Offset) of the pin.
2195
+ # At top level this represents the RX vs TX symbol rate
2196
+ # offset on the media associated with the pin. Inside
2197
+ # the pin-parent-device nest it represents the frequency
2198
+ # offset between the pin and its parent DPLL device.
2199
+ # Value is in PPM (parts per million).
2200
+ # This is a lower-precision version of
2201
+ # fractional-frequency-offset-ppt.
2202
+ # @rbs return: ::Integer
2203
+ # @return [Integer]
2204
+ # @see AttributeSets::Pin::FractionalFrequencyOffset
1248
2205
  def fractional_frequency_offset; attributes[:"fractional_frequency_offset"]&.value; end
1249
- # Gets the value of `esync-frequency` attribute in the message.
1250
- #--
2206
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
2207
+ # with a SYNC signal embedded into its base clock frequency.
1251
2208
  # @rbs return: ::Integer
2209
+ # @return [Integer]
2210
+ # @see AttributeSets::Pin::EsyncFrequency
1252
2211
  def esync_frequency; attributes[:"esync_frequency"]&.value; end
1253
- # Gets the value of `esync-frequency-supported` attribute in the message.
1254
- #--
1255
- # @rbs return: AttributeSets::FrequencyRange
1256
- def esync_frequency_supported; attributes[:"esync_frequency_supported"]&.value; end
1257
- # Gets the value of `esync-pulse` attribute in the message.
1258
- #--
1259
- # @rbs return: ::Integer
2212
+ # If provided a pin is capable of embedding a SYNC signal (within given
2213
+ # range) into its base frequency signal.
2214
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
2215
+ # @return [Array<AttributeSets::FrequencyRange>]
2216
+ # @see AttributeSets::Pin::EsyncFrequencySupported
2217
+ def esync_frequency_supported; attributes[:"esync_frequency_supported"].map(&:value); end
2218
+ # A ratio of high to low state of a SYNC signal pulse embedded
2219
+ # into base clock frequency. Value is in percents.
2220
+ # @rbs return: ::Integer
2221
+ # @return [Integer]
2222
+ # @see AttributeSets::Pin::EsyncPulse
1260
2223
  def esync_pulse; attributes[:"esync_pulse"]&.value; end
1261
- # Gets the value of `reference-sync` attribute in the message.
1262
- #--
1263
- # @rbs return: AttributeSets::ReferenceSync
1264
- def reference_sync; attributes[:"reference_sync"]&.value; end
1265
- # Gets the value of `phase-adjust-gran` attribute in the message.
1266
- #--
1267
- # @rbs return: ::Integer
2224
+ # Capable pin provides list of pins that can be bound to create a
2225
+ # reference-sync pin pair.
2226
+ # @rbs return: ::Array[AttributeSets::ReferenceSync]
2227
+ # @return [Array<AttributeSets::ReferenceSync>]
2228
+ # @see AttributeSets::Pin::ReferenceSync
2229
+ def reference_sync; attributes[:"reference_sync"].map(&:value); end
2230
+ # Granularity of phase adjustment, in picoseconds. The value of
2231
+ # phase adjustment must be a multiple of this granularity.
2232
+ # @rbs return: ::Integer
2233
+ # @return [Integer]
2234
+ # @see AttributeSets::Pin::PhaseAdjustGran
1268
2235
  def phase_adjust_gran; attributes[:"phase_adjust_gran"]&.value; end
1269
- # Gets the value of `fractional-frequency-offset-ppt` attribute in the message.
1270
- #--
1271
- # @rbs return: ::Integer
2236
+ # The FFO (Fractional Frequency Offset) of the pin.
2237
+ # At top level this represents the RX vs TX symbol rate
2238
+ # offset on the media associated with the pin. Inside
2239
+ # the pin-parent-device nest it represents the frequency
2240
+ # offset between the pin and its parent DPLL device.
2241
+ # Value is in PPT (parts per trillion, 10^-12).
2242
+ # This is a higher-precision version of
2243
+ # fractional-frequency-offset.
2244
+ # @rbs return: ::Integer
2245
+ # @return [Integer]
2246
+ # @see AttributeSets::Pin::FractionalFrequencyOffsetPpt
1272
2247
  def fractional_frequency_offset_ppt; attributes[:"fractional_frequency_offset_ppt"]&.value; end
1273
- # Gets the value of `measured-frequency` attribute in the message.
1274
- #--
1275
- # @rbs return: ::Integer
2248
+ # The measured frequency of the input pin in millihertz (mHz).
2249
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
2250
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part (Hz)
2251
+ # of a measured frequency value.
2252
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
2253
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part
2254
+ # of a measured frequency value.
2255
+ # @rbs return: ::Integer
2256
+ # @return [Integer]
2257
+ # @see AttributeSets::Pin::MeasuredFrequency
1276
2258
  def measured_frequency; attributes[:"measured_frequency"]&.value; end
1277
2259
  end
1278
2260
  # Notification about pin disappearing
1279
2261
  #
1280
2262
  # Multicast group: `monitor`.
1281
- class PinDeleteNtf < ::Nl::Protocols::Genl::Message
2263
+ class PinDeleteNtf < ::Nl::Genl::Message
1282
2264
  TYPE = 11
1283
2265
  FIXED_HEADER = nil
1284
2266
  ATTRIBUTE_SET = AttributeSets::Pin
1285
2267
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id board_label panel_label package_label type frequency frequency_supported capabilities parent_device parent_pin phase_adjust_min phase_adjust_max phase_adjust fractional_frequency_offset esync_frequency esync_frequency_supported esync_pulse reference_sync phase_adjust_gran fractional_frequency_offset_ppt measured_frequency])
1286
- # Gets the value of `id` attribute in the message.
1287
- #--
1288
2268
  # @rbs return: ::Integer
2269
+ # @return [Integer]
2270
+ # @see AttributeSets::Pin::Id
1289
2271
  def id; attributes[:"id"]&.value; end
1290
- # Gets the value of `module-name` attribute in the message.
1291
- #--
1292
2272
  # @rbs return: ::String
2273
+ # @return [String]
2274
+ # @see AttributeSets::Pin::ModuleName
1293
2275
  def module_name; attributes[:"module_name"]&.value; end
1294
- # Gets the value of `clock-id` attribute in the message.
1295
- #--
1296
2276
  # @rbs return: ::Integer
2277
+ # @return [Integer]
2278
+ # @see AttributeSets::Pin::ClockId
1297
2279
  def clock_id; attributes[:"clock_id"]&.value; end
1298
- # Gets the value of `board-label` attribute in the message.
1299
- #--
1300
2280
  # @rbs return: ::String
2281
+ # @return [String]
2282
+ # @see AttributeSets::Pin::BoardLabel
1301
2283
  def board_label; attributes[:"board_label"]&.value; end
1302
- # Gets the value of `panel-label` attribute in the message.
1303
- #--
1304
2284
  # @rbs return: ::String
2285
+ # @return [String]
2286
+ # @see AttributeSets::Pin::PanelLabel
1305
2287
  def panel_label; attributes[:"panel_label"]&.value; end
1306
- # Gets the value of `package-label` attribute in the message.
1307
- #--
1308
2288
  # @rbs return: ::String
2289
+ # @return [String]
2290
+ # @see AttributeSets::Pin::PackageLabel
1309
2291
  def package_label; attributes[:"package_label"]&.value; end
1310
- # Gets the value of `type` attribute in the message.
1311
- #--
2292
+ # Known enum values are defined in {Enums::PinType}.
1312
2293
  # @rbs return: ::Integer
2294
+ # @return [Integer]
2295
+ # @see AttributeSets::Pin::Type
1313
2296
  def type; attributes[:"type"]&.value; end
1314
- # Gets the value of `frequency` attribute in the message.
1315
- #--
1316
2297
  # @rbs return: ::Integer
2298
+ # @return [Integer]
2299
+ # @see AttributeSets::Pin::Frequency
1317
2300
  def frequency; attributes[:"frequency"]&.value; end
1318
- # Gets the value of `frequency-supported` attribute in the message.
1319
- #--
1320
- # @rbs return: AttributeSets::FrequencyRange
1321
- def frequency_supported; attributes[:"frequency_supported"]&.value; end
1322
- # Gets the value of `capabilities` attribute in the message.
1323
- #--
1324
- # @rbs return: ::Integer
2301
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
2302
+ # @return [Array<AttributeSets::FrequencyRange>]
2303
+ # @see AttributeSets::Pin::FrequencySupported
2304
+ def frequency_supported; attributes[:"frequency_supported"].map(&:value); end
2305
+ # Known flags are defined in {Flags::PinCapabilities}.
2306
+ # @rbs return: ::Integer
2307
+ # @return [Integer]
2308
+ # @see AttributeSets::Pin::Capabilities
1325
2309
  def capabilities; attributes[:"capabilities"]&.value; end
1326
- # Gets the value of `parent-device` attribute in the message.
1327
- #--
1328
- # @rbs return: AttributeSets::PinParentDevice
1329
- def parent_device; attributes[:"parent_device"]&.value; end
1330
- # Gets the value of `parent-pin` attribute in the message.
1331
- #--
1332
- # @rbs return: AttributeSets::PinParentPin
1333
- def parent_pin; attributes[:"parent_pin"]&.value; end
1334
- # Gets the value of `phase-adjust-min` attribute in the message.
1335
- #--
1336
- # @rbs return: ::Integer
2310
+ # @rbs return: ::Array[AttributeSets::PinParentDevice]
2311
+ # @return [Array<AttributeSets::PinParentDevice>]
2312
+ # @see AttributeSets::Pin::ParentDevice
2313
+ def parent_device; attributes[:"parent_device"].map(&:value); end
2314
+ # @rbs return: ::Array[AttributeSets::PinParentPin]
2315
+ # @return [Array<AttributeSets::PinParentPin>]
2316
+ # @see AttributeSets::Pin::ParentPin
2317
+ def parent_pin; attributes[:"parent_pin"].map(&:value); end
2318
+ # @rbs return: ::Integer
2319
+ # @return [Integer]
2320
+ # @see AttributeSets::Pin::PhaseAdjustMin
1337
2321
  def phase_adjust_min; attributes[:"phase_adjust_min"]&.value; end
1338
- # Gets the value of `phase-adjust-max` attribute in the message.
1339
- #--
1340
2322
  # @rbs return: ::Integer
2323
+ # @return [Integer]
2324
+ # @see AttributeSets::Pin::PhaseAdjustMax
1341
2325
  def phase_adjust_max; attributes[:"phase_adjust_max"]&.value; end
1342
- # Gets the value of `phase-adjust` attribute in the message.
1343
- #--
1344
2326
  # @rbs return: ::Integer
2327
+ # @return [Integer]
2328
+ # @see AttributeSets::Pin::PhaseAdjust
1345
2329
  def phase_adjust; attributes[:"phase_adjust"]&.value; end
1346
- # Gets the value of `fractional-frequency-offset` attribute in the message.
1347
- #--
1348
- # @rbs return: ::Integer
2330
+ # The FFO (Fractional Frequency Offset) of the pin.
2331
+ # At top level this represents the RX vs TX symbol rate
2332
+ # offset on the media associated with the pin. Inside
2333
+ # the pin-parent-device nest it represents the frequency
2334
+ # offset between the pin and its parent DPLL device.
2335
+ # Value is in PPM (parts per million).
2336
+ # This is a lower-precision version of
2337
+ # fractional-frequency-offset-ppt.
2338
+ # @rbs return: ::Integer
2339
+ # @return [Integer]
2340
+ # @see AttributeSets::Pin::FractionalFrequencyOffset
1349
2341
  def fractional_frequency_offset; attributes[:"fractional_frequency_offset"]&.value; end
1350
- # Gets the value of `esync-frequency` attribute in the message.
1351
- #--
2342
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
2343
+ # with a SYNC signal embedded into its base clock frequency.
1352
2344
  # @rbs return: ::Integer
2345
+ # @return [Integer]
2346
+ # @see AttributeSets::Pin::EsyncFrequency
1353
2347
  def esync_frequency; attributes[:"esync_frequency"]&.value; end
1354
- # Gets the value of `esync-frequency-supported` attribute in the message.
1355
- #--
1356
- # @rbs return: AttributeSets::FrequencyRange
1357
- def esync_frequency_supported; attributes[:"esync_frequency_supported"]&.value; end
1358
- # Gets the value of `esync-pulse` attribute in the message.
1359
- #--
1360
- # @rbs return: ::Integer
2348
+ # If provided a pin is capable of embedding a SYNC signal (within given
2349
+ # range) into its base frequency signal.
2350
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
2351
+ # @return [Array<AttributeSets::FrequencyRange>]
2352
+ # @see AttributeSets::Pin::EsyncFrequencySupported
2353
+ def esync_frequency_supported; attributes[:"esync_frequency_supported"].map(&:value); end
2354
+ # A ratio of high to low state of a SYNC signal pulse embedded
2355
+ # into base clock frequency. Value is in percents.
2356
+ # @rbs return: ::Integer
2357
+ # @return [Integer]
2358
+ # @see AttributeSets::Pin::EsyncPulse
1361
2359
  def esync_pulse; attributes[:"esync_pulse"]&.value; end
1362
- # Gets the value of `reference-sync` attribute in the message.
1363
- #--
1364
- # @rbs return: AttributeSets::ReferenceSync
1365
- def reference_sync; attributes[:"reference_sync"]&.value; end
1366
- # Gets the value of `phase-adjust-gran` attribute in the message.
1367
- #--
1368
- # @rbs return: ::Integer
2360
+ # Capable pin provides list of pins that can be bound to create a
2361
+ # reference-sync pin pair.
2362
+ # @rbs return: ::Array[AttributeSets::ReferenceSync]
2363
+ # @return [Array<AttributeSets::ReferenceSync>]
2364
+ # @see AttributeSets::Pin::ReferenceSync
2365
+ def reference_sync; attributes[:"reference_sync"].map(&:value); end
2366
+ # Granularity of phase adjustment, in picoseconds. The value of
2367
+ # phase adjustment must be a multiple of this granularity.
2368
+ # @rbs return: ::Integer
2369
+ # @return [Integer]
2370
+ # @see AttributeSets::Pin::PhaseAdjustGran
1369
2371
  def phase_adjust_gran; attributes[:"phase_adjust_gran"]&.value; end
1370
- # Gets the value of `fractional-frequency-offset-ppt` attribute in the message.
1371
- #--
1372
- # @rbs return: ::Integer
2372
+ # The FFO (Fractional Frequency Offset) of the pin.
2373
+ # At top level this represents the RX vs TX symbol rate
2374
+ # offset on the media associated with the pin. Inside
2375
+ # the pin-parent-device nest it represents the frequency
2376
+ # offset between the pin and its parent DPLL device.
2377
+ # Value is in PPT (parts per trillion, 10^-12).
2378
+ # This is a higher-precision version of
2379
+ # fractional-frequency-offset.
2380
+ # @rbs return: ::Integer
2381
+ # @return [Integer]
2382
+ # @see AttributeSets::Pin::FractionalFrequencyOffsetPpt
1373
2383
  def fractional_frequency_offset_ppt; attributes[:"fractional_frequency_offset_ppt"]&.value; end
1374
- # Gets the value of `measured-frequency` attribute in the message.
1375
- #--
1376
- # @rbs return: ::Integer
2384
+ # The measured frequency of the input pin in millihertz (mHz).
2385
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
2386
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part (Hz)
2387
+ # of a measured frequency value.
2388
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
2389
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part
2390
+ # of a measured frequency value.
2391
+ # @rbs return: ::Integer
2392
+ # @return [Integer]
2393
+ # @see AttributeSets::Pin::MeasuredFrequency
1377
2394
  def measured_frequency; attributes[:"measured_frequency"]&.value; end
1378
2395
  end
1379
2396
  # Notification about pin configuration being changed
1380
2397
  #
1381
2398
  # Multicast group: `monitor`.
1382
- class PinChangeNtf < ::Nl::Protocols::Genl::Message
2399
+ class PinChangeNtf < ::Nl::Genl::Message
1383
2400
  TYPE = 12
1384
2401
  FIXED_HEADER = nil
1385
2402
  ATTRIBUTE_SET = AttributeSets::Pin
1386
2403
  ATTRIBUTES = Ractor.make_shareable(%i[id module_name clock_id board_label panel_label package_label type frequency frequency_supported capabilities parent_device parent_pin phase_adjust_min phase_adjust_max phase_adjust fractional_frequency_offset esync_frequency esync_frequency_supported esync_pulse reference_sync phase_adjust_gran fractional_frequency_offset_ppt measured_frequency])
1387
- # Gets the value of `id` attribute in the message.
1388
- #--
1389
2404
  # @rbs return: ::Integer
2405
+ # @return [Integer]
2406
+ # @see AttributeSets::Pin::Id
1390
2407
  def id; attributes[:"id"]&.value; end
1391
- # Gets the value of `module-name` attribute in the message.
1392
- #--
1393
2408
  # @rbs return: ::String
2409
+ # @return [String]
2410
+ # @see AttributeSets::Pin::ModuleName
1394
2411
  def module_name; attributes[:"module_name"]&.value; end
1395
- # Gets the value of `clock-id` attribute in the message.
1396
- #--
1397
2412
  # @rbs return: ::Integer
2413
+ # @return [Integer]
2414
+ # @see AttributeSets::Pin::ClockId
1398
2415
  def clock_id; attributes[:"clock_id"]&.value; end
1399
- # Gets the value of `board-label` attribute in the message.
1400
- #--
1401
2416
  # @rbs return: ::String
2417
+ # @return [String]
2418
+ # @see AttributeSets::Pin::BoardLabel
1402
2419
  def board_label; attributes[:"board_label"]&.value; end
1403
- # Gets the value of `panel-label` attribute in the message.
1404
- #--
1405
2420
  # @rbs return: ::String
2421
+ # @return [String]
2422
+ # @see AttributeSets::Pin::PanelLabel
1406
2423
  def panel_label; attributes[:"panel_label"]&.value; end
1407
- # Gets the value of `package-label` attribute in the message.
1408
- #--
1409
2424
  # @rbs return: ::String
2425
+ # @return [String]
2426
+ # @see AttributeSets::Pin::PackageLabel
1410
2427
  def package_label; attributes[:"package_label"]&.value; end
1411
- # Gets the value of `type` attribute in the message.
1412
- #--
2428
+ # Known enum values are defined in {Enums::PinType}.
1413
2429
  # @rbs return: ::Integer
2430
+ # @return [Integer]
2431
+ # @see AttributeSets::Pin::Type
1414
2432
  def type; attributes[:"type"]&.value; end
1415
- # Gets the value of `frequency` attribute in the message.
1416
- #--
1417
2433
  # @rbs return: ::Integer
2434
+ # @return [Integer]
2435
+ # @see AttributeSets::Pin::Frequency
1418
2436
  def frequency; attributes[:"frequency"]&.value; end
1419
- # Gets the value of `frequency-supported` attribute in the message.
1420
- #--
1421
- # @rbs return: AttributeSets::FrequencyRange
1422
- def frequency_supported; attributes[:"frequency_supported"]&.value; end
1423
- # Gets the value of `capabilities` attribute in the message.
1424
- #--
1425
- # @rbs return: ::Integer
2437
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
2438
+ # @return [Array<AttributeSets::FrequencyRange>]
2439
+ # @see AttributeSets::Pin::FrequencySupported
2440
+ def frequency_supported; attributes[:"frequency_supported"].map(&:value); end
2441
+ # Known flags are defined in {Flags::PinCapabilities}.
2442
+ # @rbs return: ::Integer
2443
+ # @return [Integer]
2444
+ # @see AttributeSets::Pin::Capabilities
1426
2445
  def capabilities; attributes[:"capabilities"]&.value; end
1427
- # Gets the value of `parent-device` attribute in the message.
1428
- #--
1429
- # @rbs return: AttributeSets::PinParentDevice
1430
- def parent_device; attributes[:"parent_device"]&.value; end
1431
- # Gets the value of `parent-pin` attribute in the message.
1432
- #--
1433
- # @rbs return: AttributeSets::PinParentPin
1434
- def parent_pin; attributes[:"parent_pin"]&.value; end
1435
- # Gets the value of `phase-adjust-min` attribute in the message.
1436
- #--
1437
- # @rbs return: ::Integer
2446
+ # @rbs return: ::Array[AttributeSets::PinParentDevice]
2447
+ # @return [Array<AttributeSets::PinParentDevice>]
2448
+ # @see AttributeSets::Pin::ParentDevice
2449
+ def parent_device; attributes[:"parent_device"].map(&:value); end
2450
+ # @rbs return: ::Array[AttributeSets::PinParentPin]
2451
+ # @return [Array<AttributeSets::PinParentPin>]
2452
+ # @see AttributeSets::Pin::ParentPin
2453
+ def parent_pin; attributes[:"parent_pin"].map(&:value); end
2454
+ # @rbs return: ::Integer
2455
+ # @return [Integer]
2456
+ # @see AttributeSets::Pin::PhaseAdjustMin
1438
2457
  def phase_adjust_min; attributes[:"phase_adjust_min"]&.value; end
1439
- # Gets the value of `phase-adjust-max` attribute in the message.
1440
- #--
1441
2458
  # @rbs return: ::Integer
2459
+ # @return [Integer]
2460
+ # @see AttributeSets::Pin::PhaseAdjustMax
1442
2461
  def phase_adjust_max; attributes[:"phase_adjust_max"]&.value; end
1443
- # Gets the value of `phase-adjust` attribute in the message.
1444
- #--
1445
2462
  # @rbs return: ::Integer
2463
+ # @return [Integer]
2464
+ # @see AttributeSets::Pin::PhaseAdjust
1446
2465
  def phase_adjust; attributes[:"phase_adjust"]&.value; end
1447
- # Gets the value of `fractional-frequency-offset` attribute in the message.
1448
- #--
1449
- # @rbs return: ::Integer
2466
+ # The FFO (Fractional Frequency Offset) of the pin.
2467
+ # At top level this represents the RX vs TX symbol rate
2468
+ # offset on the media associated with the pin. Inside
2469
+ # the pin-parent-device nest it represents the frequency
2470
+ # offset between the pin and its parent DPLL device.
2471
+ # Value is in PPM (parts per million).
2472
+ # This is a lower-precision version of
2473
+ # fractional-frequency-offset-ppt.
2474
+ # @rbs return: ::Integer
2475
+ # @return [Integer]
2476
+ # @see AttributeSets::Pin::FractionalFrequencyOffset
1450
2477
  def fractional_frequency_offset; attributes[:"fractional_frequency_offset"]&.value; end
1451
- # Gets the value of `esync-frequency` attribute in the message.
1452
- #--
2478
+ # Frequency of Embedded SYNC signal. If provided, the pin is configured
2479
+ # with a SYNC signal embedded into its base clock frequency.
1453
2480
  # @rbs return: ::Integer
2481
+ # @return [Integer]
2482
+ # @see AttributeSets::Pin::EsyncFrequency
1454
2483
  def esync_frequency; attributes[:"esync_frequency"]&.value; end
1455
- # Gets the value of `esync-frequency-supported` attribute in the message.
1456
- #--
1457
- # @rbs return: AttributeSets::FrequencyRange
1458
- def esync_frequency_supported; attributes[:"esync_frequency_supported"]&.value; end
1459
- # Gets the value of `esync-pulse` attribute in the message.
1460
- #--
1461
- # @rbs return: ::Integer
2484
+ # If provided a pin is capable of embedding a SYNC signal (within given
2485
+ # range) into its base frequency signal.
2486
+ # @rbs return: ::Array[AttributeSets::FrequencyRange]
2487
+ # @return [Array<AttributeSets::FrequencyRange>]
2488
+ # @see AttributeSets::Pin::EsyncFrequencySupported
2489
+ def esync_frequency_supported; attributes[:"esync_frequency_supported"].map(&:value); end
2490
+ # A ratio of high to low state of a SYNC signal pulse embedded
2491
+ # into base clock frequency. Value is in percents.
2492
+ # @rbs return: ::Integer
2493
+ # @return [Integer]
2494
+ # @see AttributeSets::Pin::EsyncPulse
1462
2495
  def esync_pulse; attributes[:"esync_pulse"]&.value; end
1463
- # Gets the value of `reference-sync` attribute in the message.
1464
- #--
1465
- # @rbs return: AttributeSets::ReferenceSync
1466
- def reference_sync; attributes[:"reference_sync"]&.value; end
1467
- # Gets the value of `phase-adjust-gran` attribute in the message.
1468
- #--
1469
- # @rbs return: ::Integer
2496
+ # Capable pin provides list of pins that can be bound to create a
2497
+ # reference-sync pin pair.
2498
+ # @rbs return: ::Array[AttributeSets::ReferenceSync]
2499
+ # @return [Array<AttributeSets::ReferenceSync>]
2500
+ # @see AttributeSets::Pin::ReferenceSync
2501
+ def reference_sync; attributes[:"reference_sync"].map(&:value); end
2502
+ # Granularity of phase adjustment, in picoseconds. The value of
2503
+ # phase adjustment must be a multiple of this granularity.
2504
+ # @rbs return: ::Integer
2505
+ # @return [Integer]
2506
+ # @see AttributeSets::Pin::PhaseAdjustGran
1470
2507
  def phase_adjust_gran; attributes[:"phase_adjust_gran"]&.value; end
1471
- # Gets the value of `fractional-frequency-offset-ppt` attribute in the message.
1472
- #--
1473
- # @rbs return: ::Integer
2508
+ # The FFO (Fractional Frequency Offset) of the pin.
2509
+ # At top level this represents the RX vs TX symbol rate
2510
+ # offset on the media associated with the pin. Inside
2511
+ # the pin-parent-device nest it represents the frequency
2512
+ # offset between the pin and its parent DPLL device.
2513
+ # Value is in PPT (parts per trillion, 10^-12).
2514
+ # This is a higher-precision version of
2515
+ # fractional-frequency-offset.
2516
+ # @rbs return: ::Integer
2517
+ # @return [Integer]
2518
+ # @see AttributeSets::Pin::FractionalFrequencyOffsetPpt
1474
2519
  def fractional_frequency_offset_ppt; attributes[:"fractional_frequency_offset_ppt"]&.value; end
1475
- # Gets the value of `measured-frequency` attribute in the message.
1476
- #--
1477
- # @rbs return: ::Integer
2520
+ # The measured frequency of the input pin in millihertz (mHz).
2521
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY /
2522
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is an integer part (Hz)
2523
+ # of a measured frequency value.
2524
+ # Value of (DPLL_A_PIN_MEASURED_FREQUENCY %
2525
+ # DPLL_PIN_MEASURED_FREQUENCY_DIVIDER) is a fractional part
2526
+ # of a measured frequency value.
2527
+ # @rbs return: ::Integer
2528
+ # @return [Integer]
2529
+ # @see AttributeSets::Pin::MeasuredFrequency
1478
2530
  def measured_frequency; attributes[:"measured_frequency"]&.value; end
1479
2531
  end
1480
2532
  end
2533
+ # @private
1481
2534
  NOTIFICATIONS = Ractor.make_shareable({4 => Notifications::DeviceCreateNtf, 5 => Notifications::DeviceDeleteNtf, 6 => Notifications::DeviceChangeNtf, 10 => Notifications::PinCreateNtf, 11 => Notifications::PinDeleteNtf, 12 => Notifications::PinChangeNtf}) #: Hash[::Integer, ::Class]
1482
2535
  # Get id of dpll device that matches given attributes
1483
2536
  #
1484
2537
  #
1485
2538
  # Requires CAP_NET_ADMIN in the initial user namespace.
1486
- #--
1487
2539
  # @rbs (?module_name: ::String, ?clock_id: ::Integer, ?type: ::Integer) -> Messages::DoDeviceIdGetReply
2540
+ # @param [Hash] args
2541
+ # @option args [String] module_name
2542
+ # @option args [Integer] clock_id
2543
+ # @option args [Integer] type Known enum values are defined in {Enums::Type}.
2544
+ # @return [Messages::DoDeviceIdGetReply]
2545
+ # @see Messages::DoDeviceIdGetRequest
1488
2546
  def do_device_id_get(**args)
1489
2547
  exchange_message(:"do", Messages::DoDeviceIdGetRequest, Messages::DoDeviceIdGetReply, args)
1490
2548
  end
@@ -1492,8 +2550,11 @@ class Dpll < ::Nl::Family
1492
2550
  #
1493
2551
  #
1494
2552
  # Requires CAP_NET_ADMIN in the initial user namespace.
1495
- #--
1496
2553
  # @rbs (?id: ::Integer) -> Messages::DoDeviceGetReply
2554
+ # @param [Hash] args
2555
+ # @option args [Integer] id
2556
+ # @return [Messages::DoDeviceGetReply]
2557
+ # @see Messages::DoDeviceGetRequest
1497
2558
  def do_device_get(**args)
1498
2559
  exchange_message(:"do", Messages::DoDeviceGetRequest, Messages::DoDeviceGetReply, args)
1499
2560
  end
@@ -1501,17 +2562,37 @@ class Dpll < ::Nl::Family
1501
2562
  #
1502
2563
  #
1503
2564
  # Requires CAP_NET_ADMIN in the initial user namespace.
1504
- #--
1505
- # @rbs () -> Enumerable[Messages::DumpDeviceGetReply]
2565
+ # @rbs () -> Array[Messages::DumpDeviceGetReply]
1506
2566
  # | () { (Messages::DumpDeviceGetReply) -> void } -> void
2567
+ # @overload dump_device_get(**args)
2568
+ # Returns an array when no block is given.
2569
+ # @param [Hash] args
2570
+ # @return [Array<Messages::DumpDeviceGetReply>]
2571
+ # @overload dump_device_get(**args, &block)
2572
+ # Yields each reply when a block is given.
2573
+ # @param [Hash] args
2574
+ # @yieldparam [Messages::DumpDeviceGetReply] reply
2575
+ # @return [void]
2576
+ # @see Messages::DumpDeviceGetRequest
1507
2577
  def dump_device_get(**args, &block)
1508
2578
  exchange_message(:"dump", Messages::DumpDeviceGetRequest, Messages::DumpDeviceGetReply, args, &block)
1509
2579
  end
1510
2580
  # Set attributes for a DPLL device
1511
2581
  #
1512
2582
  # Requires CAP_NET_ADMIN in the initial user namespace.
1513
- #--
1514
2583
  # @rbs (?id: ::Integer, ?mode: ::Integer, ?phase_offset_monitor: ::Integer, ?phase_offset_avg_factor: ::Integer, ?frequency_monitor: ::Integer) -> void
2584
+ # @param [Hash] args
2585
+ # @option args [Integer] id
2586
+ # @option args [Integer] mode Known enum values are defined in {Enums::Mode}.
2587
+ # @option args [Integer] phase_offset_monitor Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
2588
+ #
2589
+ # Known enum values are defined in {Enums::FeatureState}.
2590
+ # @option args [Integer] phase_offset_avg_factor Averaging factor applied to calculation of reported phase offset.
2591
+ # @option args [Integer] frequency_monitor Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
2592
+ #
2593
+ # Known enum values are defined in {Enums::FeatureState}.
2594
+ # @return [void]
2595
+ # @see Messages::DoDeviceSetRequest
1515
2596
  def do_device_set(**args)
1516
2597
  exchange_message(:"do", Messages::DoDeviceSetRequest, nil, args)
1517
2598
  end
@@ -1519,8 +2600,16 @@ class Dpll < ::Nl::Family
1519
2600
  #
1520
2601
  #
1521
2602
  # Requires CAP_NET_ADMIN in the initial user namespace.
1522
- #--
1523
2603
  # @rbs (?module_name: ::String, ?clock_id: ::Integer, ?board_label: ::String, ?panel_label: ::String, ?package_label: ::String, ?type: ::Integer) -> Messages::DoPinIdGetReply
2604
+ # @param [Hash] args
2605
+ # @option args [String] module_name
2606
+ # @option args [Integer] clock_id
2607
+ # @option args [String] board_label
2608
+ # @option args [String] panel_label
2609
+ # @option args [String] package_label
2610
+ # @option args [Integer] type Known enum values are defined in {Enums::PinType}.
2611
+ # @return [Messages::DoPinIdGetReply]
2612
+ # @see Messages::DoPinIdGetRequest
1524
2613
  def do_pin_id_get(**args)
1525
2614
  exchange_message(:"do", Messages::DoPinIdGetRequest, Messages::DoPinIdGetReply, args)
1526
2615
  end
@@ -1534,8 +2623,11 @@ class Dpll < ::Nl::Family
1534
2623
  #
1535
2624
  #
1536
2625
  # Requires CAP_NET_ADMIN in the initial user namespace.
1537
- #--
1538
2626
  # @rbs (?id: ::Integer) -> Messages::DoPinGetReply
2627
+ # @param [Hash] args
2628
+ # @option args [Integer] id
2629
+ # @return [Messages::DoPinGetReply]
2630
+ # @see Messages::DoPinGetRequest
1539
2631
  def do_pin_get(**args)
1540
2632
  exchange_message(:"do", Messages::DoPinGetRequest, Messages::DoPinGetReply, args)
1541
2633
  end
@@ -1549,22 +2641,47 @@ class Dpll < ::Nl::Family
1549
2641
  #
1550
2642
  #
1551
2643
  # Requires CAP_NET_ADMIN in the initial user namespace.
1552
- #--
1553
- # @rbs (?id: ::Integer) -> Enumerable[Messages::DumpPinGetReply]
2644
+ # @rbs (?id: ::Integer) -> Array[Messages::DumpPinGetReply]
1554
2645
  # | (?id: ::Integer) { (Messages::DumpPinGetReply) -> void } -> void
2646
+ # @overload dump_pin_get(**args)
2647
+ # Returns an array when no block is given.
2648
+ # @param [Hash] args
2649
+ # @option args [Integer] id
2650
+ # @return [Array<Messages::DumpPinGetReply>]
2651
+ # @overload dump_pin_get(**args, &block)
2652
+ # Yields each reply when a block is given.
2653
+ # @param [Hash] args
2654
+ # @option args [Integer] id
2655
+ # @yieldparam [Messages::DumpPinGetReply] reply
2656
+ # @return [void]
2657
+ # @see Messages::DumpPinGetRequest
1555
2658
  def dump_pin_get(**args, &block)
1556
2659
  exchange_message(:"dump", Messages::DumpPinGetRequest, Messages::DumpPinGetReply, args, &block)
1557
2660
  end
1558
2661
  # Set attributes of a target pin
1559
2662
  #
1560
2663
  # Requires CAP_NET_ADMIN in the initial user namespace.
1561
- #--
1562
- # @rbs (?id: ::Integer, ?direction: ::Integer, ?frequency: ::Integer, ?prio: ::Integer, ?state: ::Integer, ?parent_device: AttributeSets::PinParentDevice, ?parent_pin: AttributeSets::PinParentPin, ?phase_adjust: ::Integer, ?esync_frequency: ::Integer, ?reference_sync: AttributeSets::ReferenceSync) -> void
2664
+ # @rbs (?id: ::Integer, ?direction: ::Integer, ?frequency: ::Integer, ?prio: ::Integer, ?state: ::Integer, ?parent_device: ::Array[(AttributeSets::PinParentDevice | ::Hash[::Symbol, untyped])], ?parent_pin: ::Array[(AttributeSets::PinParentPin | ::Hash[::Symbol, untyped])], ?phase_adjust: ::Integer, ?esync_frequency: ::Integer, ?reference_sync: ::Array[(AttributeSets::ReferenceSync | ::Hash[::Symbol, untyped])]) -> void
2665
+ # @param [Hash] args
2666
+ # @option args [Integer] id
2667
+ # @option args [Integer] direction Known enum values are defined in {Enums::PinDirection}.
2668
+ # @option args [Integer] frequency
2669
+ # @option args [Integer] prio
2670
+ # @option args [Integer] state Known enum values are defined in {Enums::PinState}.
2671
+ # @option args [Array<AttributeSets::PinParentDevice, Hash<Symbol, Object>>] parent_device
2672
+ # @option args [Array<AttributeSets::PinParentPin, Hash<Symbol, Object>>] parent_pin
2673
+ # @option args [Integer] phase_adjust
2674
+ # @option args [Integer] esync_frequency Frequency of Embedded SYNC signal. If provided, the pin is configured
2675
+ # with a SYNC signal embedded into its base clock frequency.
2676
+ # @option args [Array<AttributeSets::ReferenceSync, Hash<Symbol, Object>>] reference_sync Capable pin provides list of pins that can be bound to create a
2677
+ # reference-sync pin pair.
2678
+ # @return [void]
2679
+ # @see Messages::DoPinSetRequest
1563
2680
  def do_pin_set(**args)
1564
2681
  exchange_message(:"do", Messages::DoPinSetRequest, nil, args)
1565
2682
  end
1566
2683
  class AsyncOperations
1567
- # :nodoc:
2684
+ # @private
1568
2685
  def initialize(&exchange)
1569
2686
  @exchange = exchange
1570
2687
  end
@@ -1572,8 +2689,13 @@ class Dpll < ::Nl::Family
1572
2689
  #
1573
2690
  #
1574
2691
  # Requires CAP_NET_ADMIN in the initial user namespace.
1575
- #--
1576
2692
  # @rbs (?module_name: ::String, ?clock_id: ::Integer, ?type: ::Integer) -> ::Nl::Async::Future[Messages::DoDeviceIdGetReply]
2693
+ # @param [Hash] args
2694
+ # @option args [String] module_name
2695
+ # @option args [Integer] clock_id
2696
+ # @option args [Integer] type Known enum values are defined in {Enums::Type}.
2697
+ # @return [Nl::Async::Future<Messages::DoDeviceIdGetReply>]
2698
+ # @see Messages::DoDeviceIdGetRequest
1577
2699
  def do_device_id_get(**args)
1578
2700
  @exchange.call(:"do", Messages::DoDeviceIdGetRequest, Messages::DoDeviceIdGetReply, args)
1579
2701
  end
@@ -1581,8 +2703,11 @@ class Dpll < ::Nl::Family
1581
2703
  #
1582
2704
  #
1583
2705
  # Requires CAP_NET_ADMIN in the initial user namespace.
1584
- #--
1585
2706
  # @rbs (?id: ::Integer) -> ::Nl::Async::Future[Messages::DoDeviceGetReply]
2707
+ # @param [Hash] args
2708
+ # @option args [Integer] id
2709
+ # @return [Nl::Async::Future<Messages::DoDeviceGetReply>]
2710
+ # @see Messages::DoDeviceGetRequest
1586
2711
  def do_device_get(**args)
1587
2712
  @exchange.call(:"do", Messages::DoDeviceGetRequest, Messages::DoDeviceGetReply, args)
1588
2713
  end
@@ -1590,16 +2715,29 @@ class Dpll < ::Nl::Family
1590
2715
  #
1591
2716
  #
1592
2717
  # Requires CAP_NET_ADMIN in the initial user namespace.
1593
- #--
1594
2718
  # @rbs () -> ::Nl::Async::Stream[Messages::DumpDeviceGetReply]
2719
+ # @param [Hash] args
2720
+ # @return [Nl::Async::Stream<Messages::DumpDeviceGetReply>]
2721
+ # @see Messages::DumpDeviceGetRequest
1595
2722
  def dump_device_get(**args)
1596
2723
  @exchange.call(:"dump", Messages::DumpDeviceGetRequest, Messages::DumpDeviceGetReply, args)
1597
2724
  end
1598
2725
  # Set attributes for a DPLL device
1599
2726
  #
1600
2727
  # Requires CAP_NET_ADMIN in the initial user namespace.
1601
- #--
1602
2728
  # @rbs (?id: ::Integer, ?mode: ::Integer, ?phase_offset_monitor: ::Integer, ?phase_offset_avg_factor: ::Integer, ?frequency_monitor: ::Integer) -> ::Nl::Async::Future[void]
2729
+ # @param [Hash] args
2730
+ # @option args [Integer] id
2731
+ # @option args [Integer] mode Known enum values are defined in {Enums::Mode}.
2732
+ # @option args [Integer] phase_offset_monitor Receive or request state of phase offset monitor feature. If enabled, dpll device shall monitor and notify all currently available inputs for changes of their phase offset against the dpll device.
2733
+ #
2734
+ # Known enum values are defined in {Enums::FeatureState}.
2735
+ # @option args [Integer] phase_offset_avg_factor Averaging factor applied to calculation of reported phase offset.
2736
+ # @option args [Integer] frequency_monitor Current or desired state of the frequency monitor feature. If enabled, dpll device shall measure all currently available inputs for their actual input frequency.
2737
+ #
2738
+ # Known enum values are defined in {Enums::FeatureState}.
2739
+ # @return [Nl::Async::Future<void>]
2740
+ # @see Messages::DoDeviceSetRequest
1603
2741
  def do_device_set(**args)
1604
2742
  @exchange.call(:"do", Messages::DoDeviceSetRequest, nil, args)
1605
2743
  end
@@ -1607,8 +2745,16 @@ class Dpll < ::Nl::Family
1607
2745
  #
1608
2746
  #
1609
2747
  # Requires CAP_NET_ADMIN in the initial user namespace.
1610
- #--
1611
2748
  # @rbs (?module_name: ::String, ?clock_id: ::Integer, ?board_label: ::String, ?panel_label: ::String, ?package_label: ::String, ?type: ::Integer) -> ::Nl::Async::Future[Messages::DoPinIdGetReply]
2749
+ # @param [Hash] args
2750
+ # @option args [String] module_name
2751
+ # @option args [Integer] clock_id
2752
+ # @option args [String] board_label
2753
+ # @option args [String] panel_label
2754
+ # @option args [String] package_label
2755
+ # @option args [Integer] type Known enum values are defined in {Enums::PinType}.
2756
+ # @return [Nl::Async::Future<Messages::DoPinIdGetReply>]
2757
+ # @see Messages::DoPinIdGetRequest
1612
2758
  def do_pin_id_get(**args)
1613
2759
  @exchange.call(:"do", Messages::DoPinIdGetRequest, Messages::DoPinIdGetReply, args)
1614
2760
  end
@@ -1622,8 +2768,11 @@ class Dpll < ::Nl::Family
1622
2768
  #
1623
2769
  #
1624
2770
  # Requires CAP_NET_ADMIN in the initial user namespace.
1625
- #--
1626
2771
  # @rbs (?id: ::Integer) -> ::Nl::Async::Future[Messages::DoPinGetReply]
2772
+ # @param [Hash] args
2773
+ # @option args [Integer] id
2774
+ # @return [Nl::Async::Future<Messages::DoPinGetReply>]
2775
+ # @see Messages::DoPinGetRequest
1627
2776
  def do_pin_get(**args)
1628
2777
  @exchange.call(:"do", Messages::DoPinGetRequest, Messages::DoPinGetReply, args)
1629
2778
  end
@@ -1637,32 +2786,52 @@ class Dpll < ::Nl::Family
1637
2786
  #
1638
2787
  #
1639
2788
  # Requires CAP_NET_ADMIN in the initial user namespace.
1640
- #--
1641
2789
  # @rbs (?id: ::Integer) -> ::Nl::Async::Stream[Messages::DumpPinGetReply]
2790
+ # @param [Hash] args
2791
+ # @option args [Integer] id
2792
+ # @return [Nl::Async::Stream<Messages::DumpPinGetReply>]
2793
+ # @see Messages::DumpPinGetRequest
1642
2794
  def dump_pin_get(**args)
1643
2795
  @exchange.call(:"dump", Messages::DumpPinGetRequest, Messages::DumpPinGetReply, args)
1644
2796
  end
1645
2797
  # Set attributes of a target pin
1646
2798
  #
1647
2799
  # Requires CAP_NET_ADMIN in the initial user namespace.
1648
- #--
1649
- # @rbs (?id: ::Integer, ?direction: ::Integer, ?frequency: ::Integer, ?prio: ::Integer, ?state: ::Integer, ?parent_device: AttributeSets::PinParentDevice, ?parent_pin: AttributeSets::PinParentPin, ?phase_adjust: ::Integer, ?esync_frequency: ::Integer, ?reference_sync: AttributeSets::ReferenceSync) -> ::Nl::Async::Future[void]
2800
+ # @rbs (?id: ::Integer, ?direction: ::Integer, ?frequency: ::Integer, ?prio: ::Integer, ?state: ::Integer, ?parent_device: ::Array[(AttributeSets::PinParentDevice | ::Hash[::Symbol, untyped])], ?parent_pin: ::Array[(AttributeSets::PinParentPin | ::Hash[::Symbol, untyped])], ?phase_adjust: ::Integer, ?esync_frequency: ::Integer, ?reference_sync: ::Array[(AttributeSets::ReferenceSync | ::Hash[::Symbol, untyped])]) -> ::Nl::Async::Future[void]
2801
+ # @param [Hash] args
2802
+ # @option args [Integer] id
2803
+ # @option args [Integer] direction Known enum values are defined in {Enums::PinDirection}.
2804
+ # @option args [Integer] frequency
2805
+ # @option args [Integer] prio
2806
+ # @option args [Integer] state Known enum values are defined in {Enums::PinState}.
2807
+ # @option args [Array<AttributeSets::PinParentDevice, Hash<Symbol, Object>>] parent_device
2808
+ # @option args [Array<AttributeSets::PinParentPin, Hash<Symbol, Object>>] parent_pin
2809
+ # @option args [Integer] phase_adjust
2810
+ # @option args [Integer] esync_frequency Frequency of Embedded SYNC signal. If provided, the pin is configured
2811
+ # with a SYNC signal embedded into its base clock frequency.
2812
+ # @option args [Array<AttributeSets::ReferenceSync, Hash<Symbol, Object>>] reference_sync Capable pin provides list of pins that can be bound to create a
2813
+ # reference-sync pin pair.
2814
+ # @return [Nl::Async::Future<void>]
2815
+ # @see Messages::DoPinSetRequest
1650
2816
  def do_pin_set(**args)
1651
2817
  @exchange.call(:"do", Messages::DoPinSetRequest, nil, args)
1652
2818
  end
1653
2819
  end
1654
2820
  # Returns the asynchronous operation facade for this family.
1655
- #--
1656
2821
  # @rbs (?stream_capacity: ::Integer?) -> AsyncOperations
2822
+ # @param [::Integer, nil] stream_capacity
2823
+ # @return [AsyncOperations]
1657
2824
  def async(stream_capacity: nil)
1658
2825
  return @async_operations ||= build_async_facade(AsyncOperations) if stream_capacity.nil?
1659
2826
  build_async_facade(AsyncOperations, stream_capacity:)
1660
2827
  end
1661
- #--
1662
2828
  # @rbs (*(:monitor) groups) -> self
2829
+ # @param [Array<:monitor>] groups
2830
+ # @return [self]
1663
2831
  def subscribe(*groups) = super
1664
- #--
1665
2832
  # @rbs (*(:monitor) groups) -> self
2833
+ # @param [Array<:monitor>] groups
2834
+ # @return [self]
1666
2835
  def unsubscribe(*groups) = super
1667
2836
  end
1668
2837
  end; end