1 //
2 // Copyright (c) 2010-2025 Antmicro
3 // Copyright (c) 2022-2025 Silicon Labs
4 //
5 // This file is licensed under the MIT License.
6 // Full license text is available in 'licenses/MIT.txt'.
7 //
8 
9 /*  WARNING: Auto-Generated Peripheral  -  DO NOT EDIT
10     LFRCO, Generated on : 2023-07-20 14:24:01.841604
11     LFRCO, ID Version : c5b974e8e30f414db1344f6c7175dc21.2 */
12 
13 /* Here is the template for your defined by hand class. Don't forget to add your eventual constructor with extra parameter.
14 
15 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
16 using System;
17 using System.IO;
18 using System.Collections.Generic;
19 using Antmicro.Renode.Core;
20 using Antmicro.Renode.Core.Structure.Registers;
21 using Antmicro.Renode.Logging;
22 using Antmicro.Renode.Exceptions;
23 using Antmicro.Renode.Peripherals.CPU;
24 using Antmicro.Renode.Peripherals.Bus;
25 
26 namespace Antmicro.Renode.Peripherals.Miscellaneous.SiLabs
27 {
28     public partial class EFR32xG2_LFRCO_2
29     {
30         public EFR32xG2_LFRCO_2(Machine machine) : base(machine)
31         {
32             EFR32xG2_LFRCO_2_constructor();
33         }
34     }
35 }
36 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
37 
38 using System;
39 using System.IO;
40 using System.Collections.Generic;
41 using Antmicro.Renode.Core;
42 using Antmicro.Renode.Core.Structure.Registers;
43 using Antmicro.Renode.Logging;
44 using Antmicro.Renode.Exceptions;
45 using Antmicro.Renode.Peripherals.Bus;
46 
47 
48 namespace Antmicro.Renode.Peripherals.Miscellaneous.SiLabs
49 {
50     public partial class EFR32xG2_LFRCO_2 : BasicDoubleWordPeripheral, IKnownSize
51     {
EFR32xG2_LFRCO_2(Machine machine)52         public EFR32xG2_LFRCO_2(Machine machine) : base(machine)
53         {
54             Define_Registers();
55             EFR32xG2_LFRCO_2_Constructor();
56         }
57 
Define_Registers()58         private void Define_Registers()
59         {
60             var registersMap = new Dictionary<long, DoubleWordRegister>
61             {
62                 {(long)Registers.Ipversion, GenerateIpversionRegister()},
63                 {(long)Registers.Ctrl, GenerateCtrlRegister()},
64                 {(long)Registers.Status, GenerateStatusRegister()},
65                 {(long)Registers.If, GenerateIfRegister()},
66                 {(long)Registers.Ien, GenerateIenRegister()},
67                 {(long)Registers.Lock, GenerateLockRegister()},
68                 {(long)Registers.Cfg, GenerateCfgRegister()},
69                 {(long)Registers.Hiprecision, GenerateHiprecisionRegister()},
70                 {(long)Registers.Nomcal, GenerateNomcalRegister()},
71                 {(long)Registers.Nomcalinv, GenerateNomcalinvRegister()},
72                 {(long)Registers.Cmd, GenerateCmdRegister()},
73                 {(long)Registers.Trim, GenerateTrimRegister()},
74                 {(long)Registers.Trimhiprec, GenerateTrimhiprecRegister()},
75                 {(long)Registers.Stepsize, GenerateStepsizeRegister()},
76                 {(long)Registers.Testctrl, GenerateTestctrlRegister()},
77                 {(long)Registers.Testcalstatus, GenerateTestcalstatusRegister()},
78                 {(long)Registers.Testtcstatus, GenerateTesttcstatusRegister()},
79                 {(long)Registers.Testtclatest, GenerateTesttclatestRegister()},
80                 {(long)Registers.Testcalres, GenerateTestcalresRegister()},
81                 {(long)Registers.Testcmd, GenerateTestcmdRegister()},
82                 {(long)Registers.Defeat, GenerateDefeatRegister()},
83             };
84             registers = new DoubleWordRegisterCollection(this, registersMap);
85         }
86 
Reset()87         public override void Reset()
88         {
89             base.Reset();
90             LFRCO_Reset();
91         }
92 
93         protected enum STATUS_LOCK
94         {
95             UNLOCKED = 0, // Access to configuration registers not locked
96             LOCKED = 1, // Access to configuration registers locked
97         }
98 
99         // Ipversion - Offset : 0x0
GenerateIpversionRegister()100         protected DoubleWordRegister  GenerateIpversionRegister() => new DoubleWordRegister(this, 0x2)
101             .WithValueField(0, 32, out ipversion_ipversion_field, FieldMode.Read,
102                     valueProviderCallback: (_) => {
103                         Ipversion_Ipversion_ValueProvider(_);
104                         return ipversion_ipversion_field.Value;
105                     },
106                     readCallback: (_, __) => Ipversion_Ipversion_Read(_, __),
107                     name: "Ipversion")
108             .WithReadCallback((_, __) => Ipversion_Read(_, __))
109             .WithWriteCallback((_, __) => Ipversion_Write(_, __));
110 
111         // Ctrl - Offset : 0x4
GenerateCtrlRegister()112         protected DoubleWordRegister  GenerateCtrlRegister() => new DoubleWordRegister(this, 0x0)
113             .WithFlag(0, out ctrl_forceen_bit,
114                     valueProviderCallback: (_) => {
115                         Ctrl_Forceen_ValueProvider(_);
116                         return ctrl_forceen_bit.Value;
117                     },
118                     writeCallback: (_, __) => Ctrl_Forceen_Write(_, __),
119                     readCallback: (_, __) => Ctrl_Forceen_Read(_, __),
120                     name: "Forceen")
121             .WithFlag(1, out ctrl_disondemand_bit,
122                     valueProviderCallback: (_) => {
123                         Ctrl_Disondemand_ValueProvider(_);
124                         return ctrl_disondemand_bit.Value;
125                     },
126                     writeCallback: (_, __) => Ctrl_Disondemand_Write(_, __),
127                     readCallback: (_, __) => Ctrl_Disondemand_Read(_, __),
128                     name: "Disondemand")
129             .WithReservedBits(2, 30)
130             .WithReadCallback((_, __) => Ctrl_Read(_, __))
131             .WithWriteCallback((_, __) => Ctrl_Write(_, __));
132 
133         // Status - Offset : 0x8
GenerateStatusRegister()134         protected DoubleWordRegister  GenerateStatusRegister() => new DoubleWordRegister(this, 0x0)
135             .WithFlag(0, out status_rdy_bit, FieldMode.Read,
136                     valueProviderCallback: (_) => {
137                         Status_Rdy_ValueProvider(_);
138                         return status_rdy_bit.Value;
139                     },
140                     readCallback: (_, __) => Status_Rdy_Read(_, __),
141                     name: "Rdy")
142             .WithReservedBits(1, 15)
143             .WithFlag(16, out status_ens_bit, FieldMode.Read,
144                     valueProviderCallback: (_) => {
145                         Status_Ens_ValueProvider(_);
146                         return status_ens_bit.Value;
147                     },
148                     readCallback: (_, __) => Status_Ens_Read(_, __),
149                     name: "Ens")
150             .WithReservedBits(17, 14)
151             .WithEnumField<DoubleWordRegister, STATUS_LOCK>(31, 1, out status_lock_bit, FieldMode.Read,
152                     valueProviderCallback: (_) => {
153                         Status_Lock_ValueProvider(_);
154                         return status_lock_bit.Value;
155                     },
156                     readCallback: (_, __) => Status_Lock_Read(_, __),
157                     name: "Lock")
158             .WithReadCallback((_, __) => Status_Read(_, __))
159             .WithWriteCallback((_, __) => Status_Write(_, __));
160 
161         // If - Offset : 0x14
GenerateIfRegister()162         protected DoubleWordRegister  GenerateIfRegister() => new DoubleWordRegister(this, 0x0)
163             .WithFlag(0, out if_rdy_bit,
164                     valueProviderCallback: (_) => {
165                         If_Rdy_ValueProvider(_);
166                         return if_rdy_bit.Value;
167                     },
168                     writeCallback: (_, __) => If_Rdy_Write(_, __),
169                     readCallback: (_, __) => If_Rdy_Read(_, __),
170                     name: "Rdy")
171             .WithFlag(1, out if_posedge_bit,
172                     valueProviderCallback: (_) => {
173                         If_Posedge_ValueProvider(_);
174                         return if_posedge_bit.Value;
175                     },
176                     writeCallback: (_, __) => If_Posedge_Write(_, __),
177                     readCallback: (_, __) => If_Posedge_Read(_, __),
178                     name: "Posedge")
179             .WithFlag(2, out if_negedge_bit,
180                     valueProviderCallback: (_) => {
181                         If_Negedge_ValueProvider(_);
182                         return if_negedge_bit.Value;
183                     },
184                     writeCallback: (_, __) => If_Negedge_Write(_, __),
185                     readCallback: (_, __) => If_Negedge_Read(_, __),
186                     name: "Negedge")
187             .WithReservedBits(3, 5)
188             .WithFlag(8, out if_tcdone_bit,
189                     valueProviderCallback: (_) => {
190                         If_Tcdone_ValueProvider(_);
191                         return if_tcdone_bit.Value;
192                     },
193                     writeCallback: (_, __) => If_Tcdone_Write(_, __),
194                     readCallback: (_, __) => If_Tcdone_Read(_, __),
195                     name: "Tcdone")
196             .WithFlag(9, out if_caldone_bit,
197                     valueProviderCallback: (_) => {
198                         If_Caldone_ValueProvider(_);
199                         return if_caldone_bit.Value;
200                     },
201                     writeCallback: (_, __) => If_Caldone_Write(_, __),
202                     readCallback: (_, __) => If_Caldone_Read(_, __),
203                     name: "Caldone")
204             .WithFlag(10, out if_tempchange_bit,
205                     valueProviderCallback: (_) => {
206                         If_Tempchange_ValueProvider(_);
207                         return if_tempchange_bit.Value;
208                     },
209                     writeCallback: (_, __) => If_Tempchange_Write(_, __),
210                     readCallback: (_, __) => If_Tempchange_Read(_, __),
211                     name: "Tempchange")
212             .WithReservedBits(11, 5)
213             .WithFlag(16, out if_schederr_bit,
214                     valueProviderCallback: (_) => {
215                         If_Schederr_ValueProvider(_);
216                         return if_schederr_bit.Value;
217                     },
218                     writeCallback: (_, __) => If_Schederr_Write(_, __),
219                     readCallback: (_, __) => If_Schederr_Read(_, __),
220                     name: "Schederr")
221             .WithFlag(17, out if_tcoor_bit,
222                     valueProviderCallback: (_) => {
223                         If_Tcoor_ValueProvider(_);
224                         return if_tcoor_bit.Value;
225                     },
226                     writeCallback: (_, __) => If_Tcoor_Write(_, __),
227                     readCallback: (_, __) => If_Tcoor_Read(_, __),
228                     name: "Tcoor")
229             .WithFlag(18, out if_caloor_bit,
230                     valueProviderCallback: (_) => {
231                         If_Caloor_ValueProvider(_);
232                         return if_caloor_bit.Value;
233                     },
234                     writeCallback: (_, __) => If_Caloor_Write(_, __),
235                     readCallback: (_, __) => If_Caloor_Read(_, __),
236                     name: "Caloor")
237             .WithReservedBits(19, 13)
238             .WithReadCallback((_, __) => If_Read(_, __))
239             .WithWriteCallback((_, __) => If_Write(_, __));
240 
241         // Ien - Offset : 0x18
GenerateIenRegister()242         protected DoubleWordRegister  GenerateIenRegister() => new DoubleWordRegister(this, 0x0)
243             .WithFlag(0, out ien_rdy_bit,
244                     valueProviderCallback: (_) => {
245                         Ien_Rdy_ValueProvider(_);
246                         return ien_rdy_bit.Value;
247                     },
248                     writeCallback: (_, __) => Ien_Rdy_Write(_, __),
249                     readCallback: (_, __) => Ien_Rdy_Read(_, __),
250                     name: "Rdy")
251             .WithFlag(1, out ien_posedge_bit,
252                     valueProviderCallback: (_) => {
253                         Ien_Posedge_ValueProvider(_);
254                         return ien_posedge_bit.Value;
255                     },
256                     writeCallback: (_, __) => Ien_Posedge_Write(_, __),
257                     readCallback: (_, __) => Ien_Posedge_Read(_, __),
258                     name: "Posedge")
259             .WithFlag(2, out ien_negedge_bit,
260                     valueProviderCallback: (_) => {
261                         Ien_Negedge_ValueProvider(_);
262                         return ien_negedge_bit.Value;
263                     },
264                     writeCallback: (_, __) => Ien_Negedge_Write(_, __),
265                     readCallback: (_, __) => Ien_Negedge_Read(_, __),
266                     name: "Negedge")
267             .WithReservedBits(3, 5)
268             .WithFlag(8, out ien_tcdone_bit,
269                     valueProviderCallback: (_) => {
270                         Ien_Tcdone_ValueProvider(_);
271                         return ien_tcdone_bit.Value;
272                     },
273                     writeCallback: (_, __) => Ien_Tcdone_Write(_, __),
274                     readCallback: (_, __) => Ien_Tcdone_Read(_, __),
275                     name: "Tcdone")
276             .WithFlag(9, out ien_caldone_bit,
277                     valueProviderCallback: (_) => {
278                         Ien_Caldone_ValueProvider(_);
279                         return ien_caldone_bit.Value;
280                     },
281                     writeCallback: (_, __) => Ien_Caldone_Write(_, __),
282                     readCallback: (_, __) => Ien_Caldone_Read(_, __),
283                     name: "Caldone")
284             .WithFlag(10, out ien_tempchange_bit,
285                     valueProviderCallback: (_) => {
286                         Ien_Tempchange_ValueProvider(_);
287                         return ien_tempchange_bit.Value;
288                     },
289                     writeCallback: (_, __) => Ien_Tempchange_Write(_, __),
290                     readCallback: (_, __) => Ien_Tempchange_Read(_, __),
291                     name: "Tempchange")
292             .WithReservedBits(11, 5)
293             .WithFlag(16, out ien_schederr_bit,
294                     valueProviderCallback: (_) => {
295                         Ien_Schederr_ValueProvider(_);
296                         return ien_schederr_bit.Value;
297                     },
298                     writeCallback: (_, __) => Ien_Schederr_Write(_, __),
299                     readCallback: (_, __) => Ien_Schederr_Read(_, __),
300                     name: "Schederr")
301             .WithFlag(17, out ien_tcoor_bit,
302                     valueProviderCallback: (_) => {
303                         Ien_Tcoor_ValueProvider(_);
304                         return ien_tcoor_bit.Value;
305                     },
306                     writeCallback: (_, __) => Ien_Tcoor_Write(_, __),
307                     readCallback: (_, __) => Ien_Tcoor_Read(_, __),
308                     name: "Tcoor")
309             .WithFlag(18, out ien_caloor_bit,
310                     valueProviderCallback: (_) => {
311                         Ien_Caloor_ValueProvider(_);
312                         return ien_caloor_bit.Value;
313                     },
314                     writeCallback: (_, __) => Ien_Caloor_Write(_, __),
315                     readCallback: (_, __) => Ien_Caloor_Read(_, __),
316                     name: "Caloor")
317             .WithReservedBits(19, 13)
318             .WithReadCallback((_, __) => Ien_Read(_, __))
319             .WithWriteCallback((_, __) => Ien_Write(_, __));
320 
321         // Lock - Offset : 0x20
GenerateLockRegister()322         protected DoubleWordRegister  GenerateLockRegister() => new DoubleWordRegister(this, 0x0)
323             .WithValueField(0, 16, out lock_lockkey_field, FieldMode.Write,
324                     writeCallback: (_, __) => Lock_Lockkey_Write(_, __),
325                     name: "Lockkey")
326             .WithReservedBits(16, 16)
327             .WithReadCallback((_, __) => Lock_Read(_, __))
328             .WithWriteCallback((_, __) => Lock_Write(_, __));
329 
330         // Cfg - Offset : 0x24
GenerateCfgRegister()331         protected DoubleWordRegister  GenerateCfgRegister() => new DoubleWordRegister(this, 0x0)
332             .WithFlag(0, out cfg_highprecen_bit,
333                     valueProviderCallback: (_) => {
334                         Cfg_Highprecen_ValueProvider(_);
335                         return cfg_highprecen_bit.Value;
336                     },
337                     writeCallback: (_, __) => {
338                         WriteWSTATIC();
339                         Cfg_Highprecen_Write(_, __);
340                     },
341                     readCallback: (_, __) => Cfg_Highprecen_Read(_, __),
342                     name: "Highprecen")
343             .WithReservedBits(1, 31)
344             .WithReadCallback((_, __) => Cfg_Read(_, __))
345             .WithWriteCallback((_, __) => Cfg_Write(_, __));
346 
347         // Hiprecision - Offset : 0x28
GenerateHiprecisionRegister()348         protected DoubleWordRegister  GenerateHiprecisionRegister() => new DoubleWordRegister(this, 0x10E22645)
349             .WithValueField(0, 4, out hiprecision_calwnd_field,
350                     valueProviderCallback: (_) => {
351                         Hiprecision_Calwnd_ValueProvider(_);
352                         return hiprecision_calwnd_field.Value;
353                     },
354                     writeCallback: (_, __) => Hiprecision_Calwnd_Write(_, __),
355                     readCallback: (_, __) => Hiprecision_Calwnd_Read(_, __),
356                     name: "Calwnd")
357             .WithValueField(4, 4, out hiprecision_tcwnd_field,
358                     valueProviderCallback: (_) => {
359                         Hiprecision_Tcwnd_ValueProvider(_);
360                         return hiprecision_tcwnd_field.Value;
361                     },
362                     writeCallback: (_, __) => Hiprecision_Tcwnd_Write(_, __),
363                     readCallback: (_, __) => Hiprecision_Tcwnd_Read(_, __),
364                     name: "Tcwnd")
365             .WithValueField(8, 8, out hiprecision_tcthresh_field,
366                     valueProviderCallback: (_) => {
367                         Hiprecision_Tcthresh_ValueProvider(_);
368                         return hiprecision_tcthresh_field.Value;
369                     },
370                     writeCallback: (_, __) => Hiprecision_Tcthresh_Write(_, __),
371                     readCallback: (_, __) => Hiprecision_Tcthresh_Read(_, __),
372                     name: "Tcthresh")
373             .WithValueField(16, 3, out hiprecision_tcintshort_field,
374                     valueProviderCallback: (_) => {
375                         Hiprecision_Tcintshort_ValueProvider(_);
376                         return hiprecision_tcintshort_field.Value;
377                     },
378                     writeCallback: (_, __) => Hiprecision_Tcintshort_Write(_, __),
379                     readCallback: (_, __) => Hiprecision_Tcintshort_Read(_, __),
380                     name: "Tcintshort")
381             .WithValueField(19, 3, out hiprecision_tcintlong_field,
382                     valueProviderCallback: (_) => {
383                         Hiprecision_Tcintlong_ValueProvider(_);
384                         return hiprecision_tcintlong_field.Value;
385                     },
386                     writeCallback: (_, __) => Hiprecision_Tcintlong_Write(_, __),
387                     readCallback: (_, __) => Hiprecision_Tcintlong_Read(_, __),
388                     name: "Tcintlong")
389             .WithValueField(22, 3, out hiprecision_calint_field,
390                     valueProviderCallback: (_) => {
391                         Hiprecision_Calint_ValueProvider(_);
392                         return hiprecision_calint_field.Value;
393                     },
394                     writeCallback: (_, __) => Hiprecision_Calint_Write(_, __),
395                     readCallback: (_, __) => Hiprecision_Calint_Read(_, __),
396                     name: "Calint")
397             .WithValueField(25, 7, out hiprecision_tcintthresh_field,
398                     valueProviderCallback: (_) => {
399                         Hiprecision_Tcintthresh_ValueProvider(_);
400                         return hiprecision_tcintthresh_field.Value;
401                     },
402                     writeCallback: (_, __) => Hiprecision_Tcintthresh_Write(_, __),
403                     readCallback: (_, __) => Hiprecision_Tcintthresh_Read(_, __),
404                     name: "Tcintthresh")
405             .WithReadCallback((_, __) => Hiprecision_Read(_, __))
406             .WithWriteCallback((_, __) => Hiprecision_Write(_, __));
407 
408         // Nomcal - Offset : 0x2C
GenerateNomcalRegister()409         protected DoubleWordRegister  GenerateNomcalRegister() => new DoubleWordRegister(this, 0x5B8D8)
410             .WithValueField(0, 21, out nomcal_nomcalcnt_field,
411                     valueProviderCallback: (_) => {
412                         Nomcal_Nomcalcnt_ValueProvider(_);
413                         return nomcal_nomcalcnt_field.Value;
414                     },
415                     writeCallback: (_, __) => {
416                         WriteWSTATIC();
417                         Nomcal_Nomcalcnt_Write(_, __);
418                     },
419                     readCallback: (_, __) => Nomcal_Nomcalcnt_Read(_, __),
420                     name: "Nomcalcnt")
421             .WithReservedBits(21, 11)
422             .WithReadCallback((_, __) => Nomcal_Read(_, __))
423             .WithWriteCallback((_, __) => Nomcal_Write(_, __));
424 
425         // Nomcalinv - Offset : 0x30
GenerateNomcalinvRegister()426         protected DoubleWordRegister  GenerateNomcalinvRegister() => new DoubleWordRegister(this, 0x597A)
427             .WithValueField(0, 17, out nomcalinv_nomcalcntinv_field,
428                     valueProviderCallback: (_) => {
429                         Nomcalinv_Nomcalcntinv_ValueProvider(_);
430                         return nomcalinv_nomcalcntinv_field.Value;
431                     },
432                     writeCallback: (_, __) => {
433                         WriteWSTATIC();
434                         Nomcalinv_Nomcalcntinv_Write(_, __);
435                     },
436                     readCallback: (_, __) => Nomcalinv_Nomcalcntinv_Read(_, __),
437                     name: "Nomcalcntinv")
438             .WithReservedBits(17, 15)
439             .WithReadCallback((_, __) => Nomcalinv_Read(_, __))
440             .WithWriteCallback((_, __) => Nomcalinv_Write(_, __));
441 
442         // Cmd - Offset : 0x34
GenerateCmdRegister()443         protected DoubleWordRegister  GenerateCmdRegister() => new DoubleWordRegister(this, 0x0)
444             .WithFlag(0, out cmd_reducetcint_bit, FieldMode.Write,
445                     writeCallback: (_, __) => Cmd_Reducetcint_Write(_, __),
446                     name: "Reducetcint")
447             .WithReservedBits(1, 31)
448             .WithReadCallback((_, __) => Cmd_Read(_, __))
449             .WithWriteCallback((_, __) => Cmd_Write(_, __));
450 
451         // Trim - Offset : 0x38
GenerateTrimRegister()452         protected DoubleWordRegister  GenerateTrimRegister() => new DoubleWordRegister(this, 0x44002020)
453             .WithValueField(0, 6, out trim_trimfine_field,
454                     valueProviderCallback: (_) => {
455                         Trim_Trimfine_ValueProvider(_);
456                         return trim_trimfine_field.Value;
457                     },
458                     writeCallback: (_, __) => Trim_Trimfine_Write(_, __),
459                     readCallback: (_, __) => Trim_Trimfine_Read(_, __),
460                     name: "Trimfine")
461             .WithReservedBits(6, 2)
462             .WithValueField(8, 6, out trim_trim_field,
463                     valueProviderCallback: (_) => {
464                         Trim_Trim_ValueProvider(_);
465                         return trim_trim_field.Value;
466                     },
467                     writeCallback: (_, __) => Trim_Trim_Write(_, __),
468                     readCallback: (_, __) => Trim_Trim_Read(_, __),
469                     name: "Trim")
470             .WithReservedBits(14, 2)
471             .WithValueField(16, 3, out trim_trimcoarse_field,
472                     valueProviderCallback: (_) => {
473                         Trim_Trimcoarse_ValueProvider(_);
474                         return trim_trimcoarse_field.Value;
475                     },
476                     writeCallback: (_, __) => Trim_Trimcoarse_Write(_, __),
477                     readCallback: (_, __) => Trim_Trimcoarse_Read(_, __),
478                     name: "Trimcoarse")
479             .WithReservedBits(19, 1)
480             .WithValueField(20, 3, out trim_bias_field,
481                     valueProviderCallback: (_) => {
482                         Trim_Bias_ValueProvider(_);
483                         return trim_bias_field.Value;
484                     },
485                     writeCallback: (_, __) => Trim_Bias_Write(_, __),
486                     readCallback: (_, __) => Trim_Bias_Read(_, __),
487                     name: "Bias")
488             .WithReservedBits(23, 1)
489             .WithFlag(24, out trim_tempcob_bit,
490                     valueProviderCallback: (_) => {
491                         Trim_Tempcob_ValueProvider(_);
492                         return trim_tempcob_bit.Value;
493                     },
494                     writeCallback: (_, __) => Trim_Tempcob_Write(_, __),
495                     readCallback: (_, __) => Trim_Tempcob_Read(_, __),
496                     name: "Tempcob")
497             .WithReservedBits(25, 1)
498             .WithFlag(26, out trim_tempcoc_bit,
499                     valueProviderCallback: (_) => {
500                         Trim_Tempcoc_ValueProvider(_);
501                         return trim_tempcoc_bit.Value;
502                     },
503                     writeCallback: (_, __) => Trim_Tempcoc_Write(_, __),
504                     readCallback: (_, __) => Trim_Tempcoc_Read(_, __),
505                     name: "Tempcoc")
506             .WithValueField(27, 3, out trim_roten_field,
507                     valueProviderCallback: (_) => {
508                         Trim_Roten_ValueProvider(_);
509                         return trim_roten_field.Value;
510                     },
511                     writeCallback: (_, __) => Trim_Roten_Write(_, __),
512                     readCallback: (_, __) => Trim_Roten_Read(_, __),
513                     name: "Roten")
514             .WithValueField(30, 2, out trim_timeout_field,
515                     valueProviderCallback: (_) => {
516                         Trim_Timeout_ValueProvider(_);
517                         return trim_timeout_field.Value;
518                     },
519                     writeCallback: (_, __) => Trim_Timeout_Write(_, __),
520                     readCallback: (_, __) => Trim_Timeout_Read(_, __),
521                     name: "Timeout")
522             .WithReadCallback((_, __) => Trim_Read(_, __))
523             .WithWriteCallback((_, __) => Trim_Write(_, __));
524 
525         // Trimhiprec - Offset : 0x3C
GenerateTrimhiprecRegister()526         protected DoubleWordRegister  GenerateTrimhiprecRegister() => new DoubleWordRegister(this, 0x3C602820)
527             .WithValueField(0, 6, out trimhiprec_trimtemp_field,
528                     valueProviderCallback: (_) => {
529                         Trimhiprec_Trimtemp_ValueProvider(_);
530                         return trimhiprec_trimtemp_field.Value;
531                     },
532                     writeCallback: (_, __) => Trimhiprec_Trimtemp_Write(_, __),
533                     readCallback: (_, __) => Trimhiprec_Trimtemp_Read(_, __),
534                     name: "Trimtemp")
535             .WithReservedBits(6, 2)
536             .WithValueField(8, 6, out trimhiprec_trimhiprec_field,
537                     valueProviderCallback: (_) => {
538                         Trimhiprec_Trimhiprec_ValueProvider(_);
539                         return trimhiprec_trimhiprec_field.Value;
540                     },
541                     writeCallback: (_, __) => Trimhiprec_Trimhiprec_Write(_, __),
542                     readCallback: (_, __) => Trimhiprec_Trimhiprec_Read(_, __),
543                     name: "Trimhiprec")
544             .WithReservedBits(14, 6)
545             .WithValueField(20, 3, out trimhiprec_biashiprec_field,
546                     valueProviderCallback: (_) => {
547                         Trimhiprec_Biashiprec_ValueProvider(_);
548                         return trimhiprec_biashiprec_field.Value;
549                     },
550                     writeCallback: (_, __) => Trimhiprec_Biashiprec_Write(_, __),
551                     readCallback: (_, __) => Trimhiprec_Biashiprec_Read(_, __),
552                     name: "Biashiprec")
553             .WithReservedBits(23, 1)
554             .WithFlag(24, out trimhiprec_tempcobhiprec_bit,
555                     valueProviderCallback: (_) => {
556                         Trimhiprec_Tempcobhiprec_ValueProvider(_);
557                         return trimhiprec_tempcobhiprec_bit.Value;
558                     },
559                     writeCallback: (_, __) => Trimhiprec_Tempcobhiprec_Write(_, __),
560                     readCallback: (_, __) => Trimhiprec_Tempcobhiprec_Read(_, __),
561                     name: "Tempcobhiprec")
562             .WithReservedBits(25, 1)
563             .WithFlag(26, out trimhiprec_tempcochiprec_bit,
564                     valueProviderCallback: (_) => {
565                         Trimhiprec_Tempcochiprec_ValueProvider(_);
566                         return trimhiprec_tempcochiprec_bit.Value;
567                     },
568                     writeCallback: (_, __) => Trimhiprec_Tempcochiprec_Write(_, __),
569                     readCallback: (_, __) => Trimhiprec_Tempcochiprec_Read(_, __),
570                     name: "Tempcochiprec")
571             .WithValueField(27, 3, out trimhiprec_rotenhiprec_field,
572                     valueProviderCallback: (_) => {
573                         Trimhiprec_Rotenhiprec_ValueProvider(_);
574                         return trimhiprec_rotenhiprec_field.Value;
575                     },
576                     writeCallback: (_, __) => Trimhiprec_Rotenhiprec_Write(_, __),
577                     readCallback: (_, __) => Trimhiprec_Rotenhiprec_Read(_, __),
578                     name: "Rotenhiprec")
579             .WithReservedBits(30, 2)
580             .WithReadCallback((_, __) => Trimhiprec_Read(_, __))
581             .WithWriteCallback((_, __) => Trimhiprec_Write(_, __));
582 
583         // Stepsize - Offset : 0x40
GenerateStepsizeRegister()584         protected DoubleWordRegister  GenerateStepsizeRegister() => new DoubleWordRegister(this, 0x2039C3)
585             .WithValueField(0, 15, out stepsize_stepoffset_field,
586                     valueProviderCallback: (_) => {
587                         Stepsize_Stepoffset_ValueProvider(_);
588                         return stepsize_stepoffset_field.Value;
589                     },
590                     writeCallback: (_, __) => Stepsize_Stepoffset_Write(_, __),
591                     readCallback: (_, __) => Stepsize_Stepoffset_Read(_, __),
592                     name: "Stepoffset")
593             .WithReservedBits(15, 1)
594             .WithValueField(16, 8, out stepsize_stepgain_field,
595                     valueProviderCallback: (_) => {
596                         Stepsize_Stepgain_ValueProvider(_);
597                         return stepsize_stepgain_field.Value;
598                     },
599                     writeCallback: (_, __) => Stepsize_Stepgain_Write(_, __),
600                     readCallback: (_, __) => Stepsize_Stepgain_Read(_, __),
601                     name: "Stepgain")
602             .WithReservedBits(24, 8)
603             .WithReadCallback((_, __) => Stepsize_Read(_, __))
604             .WithWriteCallback((_, __) => Stepsize_Write(_, __));
605 
606         // Testctrl - Offset : 0x44
GenerateTestctrlRegister()607         protected DoubleWordRegister  GenerateTestctrlRegister() => new DoubleWordRegister(this, 0x0)
608             .WithFlag(0, out testctrl_autodis_bit,
609                     valueProviderCallback: (_) => {
610                         Testctrl_Autodis_ValueProvider(_);
611                         return testctrl_autodis_bit.Value;
612                     },
613                     writeCallback: (_, __) => Testctrl_Autodis_Write(_, __),
614                     readCallback: (_, __) => Testctrl_Autodis_Read(_, __),
615                     name: "Autodis")
616             .WithFlag(1, out testctrl_tempbasedcaldis_bit,
617                     valueProviderCallback: (_) => {
618                         Testctrl_Tempbasedcaldis_ValueProvider(_);
619                         return testctrl_tempbasedcaldis_bit.Value;
620                     },
621                     writeCallback: (_, __) => Testctrl_Tempbasedcaldis_Write(_, __),
622                     readCallback: (_, __) => Testctrl_Tempbasedcaldis_Read(_, __),
623                     name: "Tempbasedcaldis")
624             .WithFlag(2, out testctrl_calovren_bit,
625                     valueProviderCallback: (_) => {
626                         Testctrl_Calovren_ValueProvider(_);
627                         return testctrl_calovren_bit.Value;
628                     },
629                     writeCallback: (_, __) => Testctrl_Calovren_Write(_, __),
630                     readCallback: (_, __) => Testctrl_Calovren_Read(_, __),
631                     name: "Calovren")
632             .WithFlag(3, out testctrl_temposcovren_bit,
633                     valueProviderCallback: (_) => {
634                         Testctrl_Temposcovren_ValueProvider(_);
635                         return testctrl_temposcovren_bit.Value;
636                     },
637                     writeCallback: (_, __) => Testctrl_Temposcovren_Write(_, __),
638                     readCallback: (_, __) => Testctrl_Temposcovren_Read(_, __),
639                     name: "Temposcovren")
640             .WithReservedBits(4, 4)
641             .WithValueField(8, 8, out testctrl_calsdminovr_field,
642                     valueProviderCallback: (_) => {
643                         Testctrl_Calsdminovr_ValueProvider(_);
644                         return testctrl_calsdminovr_field.Value;
645                     },
646                     writeCallback: (_, __) => Testctrl_Calsdminovr_Write(_, __),
647                     readCallback: (_, __) => Testctrl_Calsdminovr_Read(_, __),
648                     name: "Calsdminovr")
649             .WithValueField(16, 6, out testctrl_calfineovr_field,
650                     valueProviderCallback: (_) => {
651                         Testctrl_Calfineovr_ValueProvider(_);
652                         return testctrl_calfineovr_field.Value;
653                     },
654                     writeCallback: (_, __) => Testctrl_Calfineovr_Write(_, __),
655                     readCallback: (_, __) => Testctrl_Calfineovr_Read(_, __),
656                     name: "Calfineovr")
657             .WithFlag(22, out testctrl_calsdmoutovr_bit,
658                     valueProviderCallback: (_) => {
659                         Testctrl_Calsdmoutovr_ValueProvider(_);
660                         return testctrl_calsdmoutovr_bit.Value;
661                     },
662                     writeCallback: (_, __) => Testctrl_Calsdmoutovr_Write(_, __),
663                     readCallback: (_, __) => Testctrl_Calsdmoutovr_Read(_, __),
664                     name: "Calsdmoutovr")
665             .WithValueField(23, 2, out testctrl_temposcctrlovr_field,
666                     valueProviderCallback: (_) => {
667                         Testctrl_Temposcctrlovr_ValueProvider(_);
668                         return testctrl_temposcctrlovr_field.Value;
669                     },
670                     writeCallback: (_, __) => Testctrl_Temposcctrlovr_Write(_, __),
671                     readCallback: (_, __) => Testctrl_Temposcctrlovr_Read(_, __),
672                     name: "Temposcctrlovr")
673             .WithReservedBits(25, 7)
674             .WithReadCallback((_, __) => Testctrl_Read(_, __))
675             .WithWriteCallback((_, __) => Testctrl_Write(_, __));
676 
677         // Testcalstatus - Offset : 0x48
GenerateTestcalstatusRegister()678         protected DoubleWordRegister  GenerateTestcalstatusRegister() => new DoubleWordRegister(this, 0x0)
679             .WithValueField(0, 21, out testcalstatus_calcnt_field, FieldMode.Read,
680                     valueProviderCallback: (_) => {
681                         Testcalstatus_Calcnt_ValueProvider(_);
682                         return testcalstatus_calcnt_field.Value;
683                     },
684                     readCallback: (_, __) => Testcalstatus_Calcnt_Read(_, __),
685                     name: "Calcnt")
686             .WithReservedBits(21, 8)
687             .WithFlag(29, out testcalstatus_sleep_bit, FieldMode.Read,
688                     valueProviderCallback: (_) => {
689                         Testcalstatus_Sleep_ValueProvider(_);
690                         return testcalstatus_sleep_bit.Value;
691                     },
692                     readCallback: (_, __) => Testcalstatus_Sleep_Read(_, __),
693                     name: "Sleep")
694             .WithFlag(30, out testcalstatus_calactive_bit, FieldMode.Read,
695                     valueProviderCallback: (_) => {
696                         Testcalstatus_Calactive_ValueProvider(_);
697                         return testcalstatus_calactive_bit.Value;
698                     },
699                     readCallback: (_, __) => Testcalstatus_Calactive_Read(_, __),
700                     name: "Calactive")
701             .WithFlag(31, out testcalstatus_tcactive_bit, FieldMode.Read,
702                     valueProviderCallback: (_) => {
703                         Testcalstatus_Tcactive_ValueProvider(_);
704                         return testcalstatus_tcactive_bit.Value;
705                     },
706                     readCallback: (_, __) => Testcalstatus_Tcactive_Read(_, __),
707                     name: "Tcactive")
708             .WithReadCallback((_, __) => Testcalstatus_Read(_, __))
709             .WithWriteCallback((_, __) => Testcalstatus_Write(_, __));
710 
711         // Testtcstatus - Offset : 0x4C
GenerateTesttcstatusRegister()712         protected DoubleWordRegister  GenerateTesttcstatusRegister() => new DoubleWordRegister(this, 0x0)
713             .WithValueField(0, 16, out testtcstatus_tccntcal_field, FieldMode.Read,
714                     valueProviderCallback: (_) => {
715                         Testtcstatus_Tccntcal_ValueProvider(_);
716                         return testtcstatus_tccntcal_field.Value;
717                     },
718                     readCallback: (_, __) => Testtcstatus_Tccntcal_Read(_, __),
719                     name: "Tccntcal")
720             .WithReservedBits(16, 16)
721             .WithReadCallback((_, __) => Testtcstatus_Read(_, __))
722             .WithWriteCallback((_, __) => Testtcstatus_Write(_, __));
723 
724         // Testtclatest - Offset : 0x50
GenerateTesttclatestRegister()725         protected DoubleWordRegister  GenerateTesttclatestRegister() => new DoubleWordRegister(this, 0x0)
726             .WithValueField(0, 16, out testtclatest_tccntlatest_field, FieldMode.Read,
727                     valueProviderCallback: (_) => {
728                         Testtclatest_Tccntlatest_ValueProvider(_);
729                         return testtclatest_tccntlatest_field.Value;
730                     },
731                     readCallback: (_, __) => Testtclatest_Tccntlatest_Read(_, __),
732                     name: "Tccntlatest")
733             .WithReservedBits(16, 16)
734             .WithReadCallback((_, __) => Testtclatest_Read(_, __))
735             .WithWriteCallback((_, __) => Testtclatest_Write(_, __));
736 
737         // Testcalres - Offset : 0x54
GenerateTestcalresRegister()738         protected DoubleWordRegister  GenerateTestcalresRegister() => new DoubleWordRegister(this, 0x0)
739             .WithValueField(0, 8, out testcalres_calressdm_field, FieldMode.Read,
740                     valueProviderCallback: (_) => {
741                         Testcalres_Calressdm_ValueProvider(_);
742                         return testcalres_calressdm_field.Value;
743                     },
744                     readCallback: (_, __) => Testcalres_Calressdm_Read(_, __),
745                     name: "Calressdm")
746             .WithValueField(8, 6, out testcalres_calresfine_field, FieldMode.Read,
747                     valueProviderCallback: (_) => {
748                         Testcalres_Calresfine_ValueProvider(_);
749                         return testcalres_calresfine_field.Value;
750                     },
751                     readCallback: (_, __) => Testcalres_Calresfine_Read(_, __),
752                     name: "Calresfine")
753             .WithReservedBits(14, 18)
754             .WithReadCallback((_, __) => Testcalres_Read(_, __))
755             .WithWriteCallback((_, __) => Testcalres_Write(_, __));
756 
757         // Testcmd - Offset : 0x58
GenerateTestcmdRegister()758         protected DoubleWordRegister  GenerateTestcmdRegister() => new DoubleWordRegister(this, 0x0)
759             .WithFlag(0, out testcmd_starttc_bit, FieldMode.Write,
760                     writeCallback: (_, __) => Testcmd_Starttc_Write(_, __),
761                     name: "Starttc")
762             .WithFlag(1, out testcmd_startcal_bit, FieldMode.Write,
763                     writeCallback: (_, __) => Testcmd_Startcal_Write(_, __),
764                     name: "Startcal")
765             .WithReservedBits(2, 30)
766             .WithReadCallback((_, __) => Testcmd_Read(_, __))
767             .WithWriteCallback((_, __) => Testcmd_Write(_, __));
768 
769         // Defeat - Offset : 0x5C
GenerateDefeatRegister()770         protected DoubleWordRegister  GenerateDefeatRegister() => new DoubleWordRegister(this, 0x0)
771             .WithFlag(0, out defeat_highprec_bit,
772                     valueProviderCallback: (_) => {
773                         Defeat_Highprec_ValueProvider(_);
774                         return defeat_highprec_bit.Value;
775                     },
776                     writeCallback: (_, __) => Defeat_Highprec_Write(_, __),
777                     readCallback: (_, __) => Defeat_Highprec_Read(_, __),
778                     name: "Highprec")
779             .WithReservedBits(1, 31)
780             .WithReadCallback((_, __) => Defeat_Read(_, __))
781             .WithWriteCallback((_, __) => Defeat_Write(_, __));
782 
783 
ReadWFIFO()784         private uint ReadWFIFO()
785         {
786             this.Log(LogLevel.Warning, "Reading from a WFIFO Field, value returned will always be 0");
787             return 0x0;
788         }
789 
ReadLFWSYNC()790         private uint ReadLFWSYNC()
791         {
792             this.Log(LogLevel.Warning, "Reading from a LFWSYNC/HVLFWSYNC Field, value returned will always be 0");
793             return 0x0;
794         }
795 
ReadRFIFO()796         private uint ReadRFIFO()
797         {
798             this.Log(LogLevel.Warning, "Reading from a RFIFO Field, value returned will always be 0");
799             return 0x0;
800         }
801 
802 
WriteWSTATIC()803         private void WriteWSTATIC()
804         {
805             if(Enabled)
806             {
807                 this.Log(LogLevel.Error, "Trying to write to a WSTATIC register while peripheral is enabled EN = {0}", Enabled);
808             }
809         }
810 
811 
812 
813         // Ipversion - Offset : 0x0
814         protected IValueRegisterField ipversion_ipversion_field;
Ipversion_Ipversion_Read(ulong a, ulong b)815         partial void Ipversion_Ipversion_Read(ulong a, ulong b);
Ipversion_Ipversion_ValueProvider(ulong a)816         partial void Ipversion_Ipversion_ValueProvider(ulong a);
817 
Ipversion_Write(uint a, uint b)818         partial void Ipversion_Write(uint a, uint b);
Ipversion_Read(uint a, uint b)819         partial void Ipversion_Read(uint a, uint b);
820 
821         // Ctrl - Offset : 0x4
822         protected IFlagRegisterField ctrl_forceen_bit;
Ctrl_Forceen_Write(bool a, bool b)823         partial void Ctrl_Forceen_Write(bool a, bool b);
Ctrl_Forceen_Read(bool a, bool b)824         partial void Ctrl_Forceen_Read(bool a, bool b);
Ctrl_Forceen_ValueProvider(bool a)825         partial void Ctrl_Forceen_ValueProvider(bool a);
826         protected IFlagRegisterField ctrl_disondemand_bit;
Ctrl_Disondemand_Write(bool a, bool b)827         partial void Ctrl_Disondemand_Write(bool a, bool b);
Ctrl_Disondemand_Read(bool a, bool b)828         partial void Ctrl_Disondemand_Read(bool a, bool b);
Ctrl_Disondemand_ValueProvider(bool a)829         partial void Ctrl_Disondemand_ValueProvider(bool a);
830 
Ctrl_Write(uint a, uint b)831         partial void Ctrl_Write(uint a, uint b);
Ctrl_Read(uint a, uint b)832         partial void Ctrl_Read(uint a, uint b);
833 
834         // Status - Offset : 0x8
835         protected IFlagRegisterField status_rdy_bit;
Status_Rdy_Read(bool a, bool b)836         partial void Status_Rdy_Read(bool a, bool b);
Status_Rdy_ValueProvider(bool a)837         partial void Status_Rdy_ValueProvider(bool a);
838         protected IFlagRegisterField status_ens_bit;
Status_Ens_Read(bool a, bool b)839         partial void Status_Ens_Read(bool a, bool b);
Status_Ens_ValueProvider(bool a)840         partial void Status_Ens_ValueProvider(bool a);
841         protected IEnumRegisterField<STATUS_LOCK> status_lock_bit;
Status_Lock_Read(STATUS_LOCK a, STATUS_LOCK b)842         partial void Status_Lock_Read(STATUS_LOCK a, STATUS_LOCK b);
Status_Lock_ValueProvider(STATUS_LOCK a)843         partial void Status_Lock_ValueProvider(STATUS_LOCK a);
844 
Status_Write(uint a, uint b)845         partial void Status_Write(uint a, uint b);
Status_Read(uint a, uint b)846         partial void Status_Read(uint a, uint b);
847 
848         // If - Offset : 0x14
849         protected IFlagRegisterField if_rdy_bit;
If_Rdy_Write(bool a, bool b)850         partial void If_Rdy_Write(bool a, bool b);
If_Rdy_Read(bool a, bool b)851         partial void If_Rdy_Read(bool a, bool b);
If_Rdy_ValueProvider(bool a)852         partial void If_Rdy_ValueProvider(bool a);
853         protected IFlagRegisterField if_posedge_bit;
If_Posedge_Write(bool a, bool b)854         partial void If_Posedge_Write(bool a, bool b);
If_Posedge_Read(bool a, bool b)855         partial void If_Posedge_Read(bool a, bool b);
If_Posedge_ValueProvider(bool a)856         partial void If_Posedge_ValueProvider(bool a);
857         protected IFlagRegisterField if_negedge_bit;
If_Negedge_Write(bool a, bool b)858         partial void If_Negedge_Write(bool a, bool b);
If_Negedge_Read(bool a, bool b)859         partial void If_Negedge_Read(bool a, bool b);
If_Negedge_ValueProvider(bool a)860         partial void If_Negedge_ValueProvider(bool a);
861         protected IFlagRegisterField if_tcdone_bit;
If_Tcdone_Write(bool a, bool b)862         partial void If_Tcdone_Write(bool a, bool b);
If_Tcdone_Read(bool a, bool b)863         partial void If_Tcdone_Read(bool a, bool b);
If_Tcdone_ValueProvider(bool a)864         partial void If_Tcdone_ValueProvider(bool a);
865         protected IFlagRegisterField if_caldone_bit;
If_Caldone_Write(bool a, bool b)866         partial void If_Caldone_Write(bool a, bool b);
If_Caldone_Read(bool a, bool b)867         partial void If_Caldone_Read(bool a, bool b);
If_Caldone_ValueProvider(bool a)868         partial void If_Caldone_ValueProvider(bool a);
869         protected IFlagRegisterField if_tempchange_bit;
If_Tempchange_Write(bool a, bool b)870         partial void If_Tempchange_Write(bool a, bool b);
If_Tempchange_Read(bool a, bool b)871         partial void If_Tempchange_Read(bool a, bool b);
If_Tempchange_ValueProvider(bool a)872         partial void If_Tempchange_ValueProvider(bool a);
873         protected IFlagRegisterField if_schederr_bit;
If_Schederr_Write(bool a, bool b)874         partial void If_Schederr_Write(bool a, bool b);
If_Schederr_Read(bool a, bool b)875         partial void If_Schederr_Read(bool a, bool b);
If_Schederr_ValueProvider(bool a)876         partial void If_Schederr_ValueProvider(bool a);
877         protected IFlagRegisterField if_tcoor_bit;
If_Tcoor_Write(bool a, bool b)878         partial void If_Tcoor_Write(bool a, bool b);
If_Tcoor_Read(bool a, bool b)879         partial void If_Tcoor_Read(bool a, bool b);
If_Tcoor_ValueProvider(bool a)880         partial void If_Tcoor_ValueProvider(bool a);
881         protected IFlagRegisterField if_caloor_bit;
If_Caloor_Write(bool a, bool b)882         partial void If_Caloor_Write(bool a, bool b);
If_Caloor_Read(bool a, bool b)883         partial void If_Caloor_Read(bool a, bool b);
If_Caloor_ValueProvider(bool a)884         partial void If_Caloor_ValueProvider(bool a);
885 
If_Write(uint a, uint b)886         partial void If_Write(uint a, uint b);
If_Read(uint a, uint b)887         partial void If_Read(uint a, uint b);
888 
889         // Ien - Offset : 0x18
890         protected IFlagRegisterField ien_rdy_bit;
Ien_Rdy_Write(bool a, bool b)891         partial void Ien_Rdy_Write(bool a, bool b);
Ien_Rdy_Read(bool a, bool b)892         partial void Ien_Rdy_Read(bool a, bool b);
Ien_Rdy_ValueProvider(bool a)893         partial void Ien_Rdy_ValueProvider(bool a);
894         protected IFlagRegisterField ien_posedge_bit;
Ien_Posedge_Write(bool a, bool b)895         partial void Ien_Posedge_Write(bool a, bool b);
Ien_Posedge_Read(bool a, bool b)896         partial void Ien_Posedge_Read(bool a, bool b);
Ien_Posedge_ValueProvider(bool a)897         partial void Ien_Posedge_ValueProvider(bool a);
898         protected IFlagRegisterField ien_negedge_bit;
Ien_Negedge_Write(bool a, bool b)899         partial void Ien_Negedge_Write(bool a, bool b);
Ien_Negedge_Read(bool a, bool b)900         partial void Ien_Negedge_Read(bool a, bool b);
Ien_Negedge_ValueProvider(bool a)901         partial void Ien_Negedge_ValueProvider(bool a);
902         protected IFlagRegisterField ien_tcdone_bit;
Ien_Tcdone_Write(bool a, bool b)903         partial void Ien_Tcdone_Write(bool a, bool b);
Ien_Tcdone_Read(bool a, bool b)904         partial void Ien_Tcdone_Read(bool a, bool b);
Ien_Tcdone_ValueProvider(bool a)905         partial void Ien_Tcdone_ValueProvider(bool a);
906         protected IFlagRegisterField ien_caldone_bit;
Ien_Caldone_Write(bool a, bool b)907         partial void Ien_Caldone_Write(bool a, bool b);
Ien_Caldone_Read(bool a, bool b)908         partial void Ien_Caldone_Read(bool a, bool b);
Ien_Caldone_ValueProvider(bool a)909         partial void Ien_Caldone_ValueProvider(bool a);
910         protected IFlagRegisterField ien_tempchange_bit;
Ien_Tempchange_Write(bool a, bool b)911         partial void Ien_Tempchange_Write(bool a, bool b);
Ien_Tempchange_Read(bool a, bool b)912         partial void Ien_Tempchange_Read(bool a, bool b);
Ien_Tempchange_ValueProvider(bool a)913         partial void Ien_Tempchange_ValueProvider(bool a);
914         protected IFlagRegisterField ien_schederr_bit;
Ien_Schederr_Write(bool a, bool b)915         partial void Ien_Schederr_Write(bool a, bool b);
Ien_Schederr_Read(bool a, bool b)916         partial void Ien_Schederr_Read(bool a, bool b);
Ien_Schederr_ValueProvider(bool a)917         partial void Ien_Schederr_ValueProvider(bool a);
918         protected IFlagRegisterField ien_tcoor_bit;
Ien_Tcoor_Write(bool a, bool b)919         partial void Ien_Tcoor_Write(bool a, bool b);
Ien_Tcoor_Read(bool a, bool b)920         partial void Ien_Tcoor_Read(bool a, bool b);
Ien_Tcoor_ValueProvider(bool a)921         partial void Ien_Tcoor_ValueProvider(bool a);
922         protected IFlagRegisterField ien_caloor_bit;
Ien_Caloor_Write(bool a, bool b)923         partial void Ien_Caloor_Write(bool a, bool b);
Ien_Caloor_Read(bool a, bool b)924         partial void Ien_Caloor_Read(bool a, bool b);
Ien_Caloor_ValueProvider(bool a)925         partial void Ien_Caloor_ValueProvider(bool a);
926 
Ien_Write(uint a, uint b)927         partial void Ien_Write(uint a, uint b);
Ien_Read(uint a, uint b)928         partial void Ien_Read(uint a, uint b);
929 
930         // Lock - Offset : 0x20
931         protected IValueRegisterField lock_lockkey_field;
Lock_Lockkey_Write(ulong a, ulong b)932         partial void Lock_Lockkey_Write(ulong a, ulong b);
Lock_Lockkey_ValueProvider(ulong a)933         partial void Lock_Lockkey_ValueProvider(ulong a);
934 
Lock_Write(uint a, uint b)935         partial void Lock_Write(uint a, uint b);
Lock_Read(uint a, uint b)936         partial void Lock_Read(uint a, uint b);
937 
938         // Cfg - Offset : 0x24
939         protected IFlagRegisterField cfg_highprecen_bit;
Cfg_Highprecen_Write(bool a, bool b)940         partial void Cfg_Highprecen_Write(bool a, bool b);
Cfg_Highprecen_Read(bool a, bool b)941         partial void Cfg_Highprecen_Read(bool a, bool b);
Cfg_Highprecen_ValueProvider(bool a)942         partial void Cfg_Highprecen_ValueProvider(bool a);
943 
Cfg_Write(uint a, uint b)944         partial void Cfg_Write(uint a, uint b);
Cfg_Read(uint a, uint b)945         partial void Cfg_Read(uint a, uint b);
946 
947         // Hiprecision - Offset : 0x28
948         protected IValueRegisterField hiprecision_calwnd_field;
Hiprecision_Calwnd_Write(ulong a, ulong b)949         partial void Hiprecision_Calwnd_Write(ulong a, ulong b);
Hiprecision_Calwnd_Read(ulong a, ulong b)950         partial void Hiprecision_Calwnd_Read(ulong a, ulong b);
Hiprecision_Calwnd_ValueProvider(ulong a)951         partial void Hiprecision_Calwnd_ValueProvider(ulong a);
952         protected IValueRegisterField hiprecision_tcwnd_field;
Hiprecision_Tcwnd_Write(ulong a, ulong b)953         partial void Hiprecision_Tcwnd_Write(ulong a, ulong b);
Hiprecision_Tcwnd_Read(ulong a, ulong b)954         partial void Hiprecision_Tcwnd_Read(ulong a, ulong b);
Hiprecision_Tcwnd_ValueProvider(ulong a)955         partial void Hiprecision_Tcwnd_ValueProvider(ulong a);
956         protected IValueRegisterField hiprecision_tcthresh_field;
Hiprecision_Tcthresh_Write(ulong a, ulong b)957         partial void Hiprecision_Tcthresh_Write(ulong a, ulong b);
Hiprecision_Tcthresh_Read(ulong a, ulong b)958         partial void Hiprecision_Tcthresh_Read(ulong a, ulong b);
Hiprecision_Tcthresh_ValueProvider(ulong a)959         partial void Hiprecision_Tcthresh_ValueProvider(ulong a);
960         protected IValueRegisterField hiprecision_tcintshort_field;
Hiprecision_Tcintshort_Write(ulong a, ulong b)961         partial void Hiprecision_Tcintshort_Write(ulong a, ulong b);
Hiprecision_Tcintshort_Read(ulong a, ulong b)962         partial void Hiprecision_Tcintshort_Read(ulong a, ulong b);
Hiprecision_Tcintshort_ValueProvider(ulong a)963         partial void Hiprecision_Tcintshort_ValueProvider(ulong a);
964         protected IValueRegisterField hiprecision_tcintlong_field;
Hiprecision_Tcintlong_Write(ulong a, ulong b)965         partial void Hiprecision_Tcintlong_Write(ulong a, ulong b);
Hiprecision_Tcintlong_Read(ulong a, ulong b)966         partial void Hiprecision_Tcintlong_Read(ulong a, ulong b);
Hiprecision_Tcintlong_ValueProvider(ulong a)967         partial void Hiprecision_Tcintlong_ValueProvider(ulong a);
968         protected IValueRegisterField hiprecision_calint_field;
Hiprecision_Calint_Write(ulong a, ulong b)969         partial void Hiprecision_Calint_Write(ulong a, ulong b);
Hiprecision_Calint_Read(ulong a, ulong b)970         partial void Hiprecision_Calint_Read(ulong a, ulong b);
Hiprecision_Calint_ValueProvider(ulong a)971         partial void Hiprecision_Calint_ValueProvider(ulong a);
972         protected IValueRegisterField hiprecision_tcintthresh_field;
Hiprecision_Tcintthresh_Write(ulong a, ulong b)973         partial void Hiprecision_Tcintthresh_Write(ulong a, ulong b);
Hiprecision_Tcintthresh_Read(ulong a, ulong b)974         partial void Hiprecision_Tcintthresh_Read(ulong a, ulong b);
Hiprecision_Tcintthresh_ValueProvider(ulong a)975         partial void Hiprecision_Tcintthresh_ValueProvider(ulong a);
976 
Hiprecision_Write(uint a, uint b)977         partial void Hiprecision_Write(uint a, uint b);
Hiprecision_Read(uint a, uint b)978         partial void Hiprecision_Read(uint a, uint b);
979 
980         // Nomcal - Offset : 0x2C
981         protected IValueRegisterField nomcal_nomcalcnt_field;
Nomcal_Nomcalcnt_Write(ulong a, ulong b)982         partial void Nomcal_Nomcalcnt_Write(ulong a, ulong b);
Nomcal_Nomcalcnt_Read(ulong a, ulong b)983         partial void Nomcal_Nomcalcnt_Read(ulong a, ulong b);
Nomcal_Nomcalcnt_ValueProvider(ulong a)984         partial void Nomcal_Nomcalcnt_ValueProvider(ulong a);
985 
Nomcal_Write(uint a, uint b)986         partial void Nomcal_Write(uint a, uint b);
Nomcal_Read(uint a, uint b)987         partial void Nomcal_Read(uint a, uint b);
988 
989         // Nomcalinv - Offset : 0x30
990         protected IValueRegisterField nomcalinv_nomcalcntinv_field;
Nomcalinv_Nomcalcntinv_Write(ulong a, ulong b)991         partial void Nomcalinv_Nomcalcntinv_Write(ulong a, ulong b);
Nomcalinv_Nomcalcntinv_Read(ulong a, ulong b)992         partial void Nomcalinv_Nomcalcntinv_Read(ulong a, ulong b);
Nomcalinv_Nomcalcntinv_ValueProvider(ulong a)993         partial void Nomcalinv_Nomcalcntinv_ValueProvider(ulong a);
994 
Nomcalinv_Write(uint a, uint b)995         partial void Nomcalinv_Write(uint a, uint b);
Nomcalinv_Read(uint a, uint b)996         partial void Nomcalinv_Read(uint a, uint b);
997 
998         // Cmd - Offset : 0x34
999         protected IFlagRegisterField cmd_reducetcint_bit;
Cmd_Reducetcint_Write(bool a, bool b)1000         partial void Cmd_Reducetcint_Write(bool a, bool b);
Cmd_Reducetcint_ValueProvider(bool a)1001         partial void Cmd_Reducetcint_ValueProvider(bool a);
1002 
Cmd_Write(uint a, uint b)1003         partial void Cmd_Write(uint a, uint b);
Cmd_Read(uint a, uint b)1004         partial void Cmd_Read(uint a, uint b);
1005 
1006         // Trim - Offset : 0x38
1007         protected IValueRegisterField trim_trimfine_field;
Trim_Trimfine_Write(ulong a, ulong b)1008         partial void Trim_Trimfine_Write(ulong a, ulong b);
Trim_Trimfine_Read(ulong a, ulong b)1009         partial void Trim_Trimfine_Read(ulong a, ulong b);
Trim_Trimfine_ValueProvider(ulong a)1010         partial void Trim_Trimfine_ValueProvider(ulong a);
1011         protected IValueRegisterField trim_trim_field;
Trim_Trim_Write(ulong a, ulong b)1012         partial void Trim_Trim_Write(ulong a, ulong b);
Trim_Trim_Read(ulong a, ulong b)1013         partial void Trim_Trim_Read(ulong a, ulong b);
Trim_Trim_ValueProvider(ulong a)1014         partial void Trim_Trim_ValueProvider(ulong a);
1015         protected IValueRegisterField trim_trimcoarse_field;
Trim_Trimcoarse_Write(ulong a, ulong b)1016         partial void Trim_Trimcoarse_Write(ulong a, ulong b);
Trim_Trimcoarse_Read(ulong a, ulong b)1017         partial void Trim_Trimcoarse_Read(ulong a, ulong b);
Trim_Trimcoarse_ValueProvider(ulong a)1018         partial void Trim_Trimcoarse_ValueProvider(ulong a);
1019         protected IValueRegisterField trim_bias_field;
Trim_Bias_Write(ulong a, ulong b)1020         partial void Trim_Bias_Write(ulong a, ulong b);
Trim_Bias_Read(ulong a, ulong b)1021         partial void Trim_Bias_Read(ulong a, ulong b);
Trim_Bias_ValueProvider(ulong a)1022         partial void Trim_Bias_ValueProvider(ulong a);
1023         protected IFlagRegisterField trim_tempcob_bit;
Trim_Tempcob_Write(bool a, bool b)1024         partial void Trim_Tempcob_Write(bool a, bool b);
Trim_Tempcob_Read(bool a, bool b)1025         partial void Trim_Tempcob_Read(bool a, bool b);
Trim_Tempcob_ValueProvider(bool a)1026         partial void Trim_Tempcob_ValueProvider(bool a);
1027         protected IFlagRegisterField trim_tempcoc_bit;
Trim_Tempcoc_Write(bool a, bool b)1028         partial void Trim_Tempcoc_Write(bool a, bool b);
Trim_Tempcoc_Read(bool a, bool b)1029         partial void Trim_Tempcoc_Read(bool a, bool b);
Trim_Tempcoc_ValueProvider(bool a)1030         partial void Trim_Tempcoc_ValueProvider(bool a);
1031         protected IValueRegisterField trim_roten_field;
Trim_Roten_Write(ulong a, ulong b)1032         partial void Trim_Roten_Write(ulong a, ulong b);
Trim_Roten_Read(ulong a, ulong b)1033         partial void Trim_Roten_Read(ulong a, ulong b);
Trim_Roten_ValueProvider(ulong a)1034         partial void Trim_Roten_ValueProvider(ulong a);
1035         protected IValueRegisterField trim_timeout_field;
Trim_Timeout_Write(ulong a, ulong b)1036         partial void Trim_Timeout_Write(ulong a, ulong b);
Trim_Timeout_Read(ulong a, ulong b)1037         partial void Trim_Timeout_Read(ulong a, ulong b);
Trim_Timeout_ValueProvider(ulong a)1038         partial void Trim_Timeout_ValueProvider(ulong a);
1039 
Trim_Write(uint a, uint b)1040         partial void Trim_Write(uint a, uint b);
Trim_Read(uint a, uint b)1041         partial void Trim_Read(uint a, uint b);
1042 
1043         // Trimhiprec - Offset : 0x3C
1044         protected IValueRegisterField trimhiprec_trimtemp_field;
Trimhiprec_Trimtemp_Write(ulong a, ulong b)1045         partial void Trimhiprec_Trimtemp_Write(ulong a, ulong b);
Trimhiprec_Trimtemp_Read(ulong a, ulong b)1046         partial void Trimhiprec_Trimtemp_Read(ulong a, ulong b);
Trimhiprec_Trimtemp_ValueProvider(ulong a)1047         partial void Trimhiprec_Trimtemp_ValueProvider(ulong a);
1048         protected IValueRegisterField trimhiprec_trimhiprec_field;
Trimhiprec_Trimhiprec_Write(ulong a, ulong b)1049         partial void Trimhiprec_Trimhiprec_Write(ulong a, ulong b);
Trimhiprec_Trimhiprec_Read(ulong a, ulong b)1050         partial void Trimhiprec_Trimhiprec_Read(ulong a, ulong b);
Trimhiprec_Trimhiprec_ValueProvider(ulong a)1051         partial void Trimhiprec_Trimhiprec_ValueProvider(ulong a);
1052         protected IValueRegisterField trimhiprec_biashiprec_field;
Trimhiprec_Biashiprec_Write(ulong a, ulong b)1053         partial void Trimhiprec_Biashiprec_Write(ulong a, ulong b);
Trimhiprec_Biashiprec_Read(ulong a, ulong b)1054         partial void Trimhiprec_Biashiprec_Read(ulong a, ulong b);
Trimhiprec_Biashiprec_ValueProvider(ulong a)1055         partial void Trimhiprec_Biashiprec_ValueProvider(ulong a);
1056         protected IFlagRegisterField trimhiprec_tempcobhiprec_bit;
Trimhiprec_Tempcobhiprec_Write(bool a, bool b)1057         partial void Trimhiprec_Tempcobhiprec_Write(bool a, bool b);
Trimhiprec_Tempcobhiprec_Read(bool a, bool b)1058         partial void Trimhiprec_Tempcobhiprec_Read(bool a, bool b);
Trimhiprec_Tempcobhiprec_ValueProvider(bool a)1059         partial void Trimhiprec_Tempcobhiprec_ValueProvider(bool a);
1060         protected IFlagRegisterField trimhiprec_tempcochiprec_bit;
Trimhiprec_Tempcochiprec_Write(bool a, bool b)1061         partial void Trimhiprec_Tempcochiprec_Write(bool a, bool b);
Trimhiprec_Tempcochiprec_Read(bool a, bool b)1062         partial void Trimhiprec_Tempcochiprec_Read(bool a, bool b);
Trimhiprec_Tempcochiprec_ValueProvider(bool a)1063         partial void Trimhiprec_Tempcochiprec_ValueProvider(bool a);
1064         protected IValueRegisterField trimhiprec_rotenhiprec_field;
Trimhiprec_Rotenhiprec_Write(ulong a, ulong b)1065         partial void Trimhiprec_Rotenhiprec_Write(ulong a, ulong b);
Trimhiprec_Rotenhiprec_Read(ulong a, ulong b)1066         partial void Trimhiprec_Rotenhiprec_Read(ulong a, ulong b);
Trimhiprec_Rotenhiprec_ValueProvider(ulong a)1067         partial void Trimhiprec_Rotenhiprec_ValueProvider(ulong a);
1068 
Trimhiprec_Write(uint a, uint b)1069         partial void Trimhiprec_Write(uint a, uint b);
Trimhiprec_Read(uint a, uint b)1070         partial void Trimhiprec_Read(uint a, uint b);
1071 
1072         // Stepsize - Offset : 0x40
1073         protected IValueRegisterField stepsize_stepoffset_field;
Stepsize_Stepoffset_Write(ulong a, ulong b)1074         partial void Stepsize_Stepoffset_Write(ulong a, ulong b);
Stepsize_Stepoffset_Read(ulong a, ulong b)1075         partial void Stepsize_Stepoffset_Read(ulong a, ulong b);
Stepsize_Stepoffset_ValueProvider(ulong a)1076         partial void Stepsize_Stepoffset_ValueProvider(ulong a);
1077         protected IValueRegisterField stepsize_stepgain_field;
Stepsize_Stepgain_Write(ulong a, ulong b)1078         partial void Stepsize_Stepgain_Write(ulong a, ulong b);
Stepsize_Stepgain_Read(ulong a, ulong b)1079         partial void Stepsize_Stepgain_Read(ulong a, ulong b);
Stepsize_Stepgain_ValueProvider(ulong a)1080         partial void Stepsize_Stepgain_ValueProvider(ulong a);
1081 
Stepsize_Write(uint a, uint b)1082         partial void Stepsize_Write(uint a, uint b);
Stepsize_Read(uint a, uint b)1083         partial void Stepsize_Read(uint a, uint b);
1084 
1085         // Testctrl - Offset : 0x44
1086         protected IFlagRegisterField testctrl_autodis_bit;
Testctrl_Autodis_Write(bool a, bool b)1087         partial void Testctrl_Autodis_Write(bool a, bool b);
Testctrl_Autodis_Read(bool a, bool b)1088         partial void Testctrl_Autodis_Read(bool a, bool b);
Testctrl_Autodis_ValueProvider(bool a)1089         partial void Testctrl_Autodis_ValueProvider(bool a);
1090         protected IFlagRegisterField testctrl_tempbasedcaldis_bit;
Testctrl_Tempbasedcaldis_Write(bool a, bool b)1091         partial void Testctrl_Tempbasedcaldis_Write(bool a, bool b);
Testctrl_Tempbasedcaldis_Read(bool a, bool b)1092         partial void Testctrl_Tempbasedcaldis_Read(bool a, bool b);
Testctrl_Tempbasedcaldis_ValueProvider(bool a)1093         partial void Testctrl_Tempbasedcaldis_ValueProvider(bool a);
1094         protected IFlagRegisterField testctrl_calovren_bit;
Testctrl_Calovren_Write(bool a, bool b)1095         partial void Testctrl_Calovren_Write(bool a, bool b);
Testctrl_Calovren_Read(bool a, bool b)1096         partial void Testctrl_Calovren_Read(bool a, bool b);
Testctrl_Calovren_ValueProvider(bool a)1097         partial void Testctrl_Calovren_ValueProvider(bool a);
1098         protected IFlagRegisterField testctrl_temposcovren_bit;
Testctrl_Temposcovren_Write(bool a, bool b)1099         partial void Testctrl_Temposcovren_Write(bool a, bool b);
Testctrl_Temposcovren_Read(bool a, bool b)1100         partial void Testctrl_Temposcovren_Read(bool a, bool b);
Testctrl_Temposcovren_ValueProvider(bool a)1101         partial void Testctrl_Temposcovren_ValueProvider(bool a);
1102         protected IValueRegisterField testctrl_calsdminovr_field;
Testctrl_Calsdminovr_Write(ulong a, ulong b)1103         partial void Testctrl_Calsdminovr_Write(ulong a, ulong b);
Testctrl_Calsdminovr_Read(ulong a, ulong b)1104         partial void Testctrl_Calsdminovr_Read(ulong a, ulong b);
Testctrl_Calsdminovr_ValueProvider(ulong a)1105         partial void Testctrl_Calsdminovr_ValueProvider(ulong a);
1106         protected IValueRegisterField testctrl_calfineovr_field;
Testctrl_Calfineovr_Write(ulong a, ulong b)1107         partial void Testctrl_Calfineovr_Write(ulong a, ulong b);
Testctrl_Calfineovr_Read(ulong a, ulong b)1108         partial void Testctrl_Calfineovr_Read(ulong a, ulong b);
Testctrl_Calfineovr_ValueProvider(ulong a)1109         partial void Testctrl_Calfineovr_ValueProvider(ulong a);
1110         protected IFlagRegisterField testctrl_calsdmoutovr_bit;
Testctrl_Calsdmoutovr_Write(bool a, bool b)1111         partial void Testctrl_Calsdmoutovr_Write(bool a, bool b);
Testctrl_Calsdmoutovr_Read(bool a, bool b)1112         partial void Testctrl_Calsdmoutovr_Read(bool a, bool b);
Testctrl_Calsdmoutovr_ValueProvider(bool a)1113         partial void Testctrl_Calsdmoutovr_ValueProvider(bool a);
1114         protected IValueRegisterField testctrl_temposcctrlovr_field;
Testctrl_Temposcctrlovr_Write(ulong a, ulong b)1115         partial void Testctrl_Temposcctrlovr_Write(ulong a, ulong b);
Testctrl_Temposcctrlovr_Read(ulong a, ulong b)1116         partial void Testctrl_Temposcctrlovr_Read(ulong a, ulong b);
Testctrl_Temposcctrlovr_ValueProvider(ulong a)1117         partial void Testctrl_Temposcctrlovr_ValueProvider(ulong a);
1118 
Testctrl_Write(uint a, uint b)1119         partial void Testctrl_Write(uint a, uint b);
Testctrl_Read(uint a, uint b)1120         partial void Testctrl_Read(uint a, uint b);
1121 
1122         // Testcalstatus - Offset : 0x48
1123         protected IValueRegisterField testcalstatus_calcnt_field;
Testcalstatus_Calcnt_Read(ulong a, ulong b)1124         partial void Testcalstatus_Calcnt_Read(ulong a, ulong b);
Testcalstatus_Calcnt_ValueProvider(ulong a)1125         partial void Testcalstatus_Calcnt_ValueProvider(ulong a);
1126         protected IFlagRegisterField testcalstatus_sleep_bit;
Testcalstatus_Sleep_Read(bool a, bool b)1127         partial void Testcalstatus_Sleep_Read(bool a, bool b);
Testcalstatus_Sleep_ValueProvider(bool a)1128         partial void Testcalstatus_Sleep_ValueProvider(bool a);
1129         protected IFlagRegisterField testcalstatus_calactive_bit;
Testcalstatus_Calactive_Read(bool a, bool b)1130         partial void Testcalstatus_Calactive_Read(bool a, bool b);
Testcalstatus_Calactive_ValueProvider(bool a)1131         partial void Testcalstatus_Calactive_ValueProvider(bool a);
1132         protected IFlagRegisterField testcalstatus_tcactive_bit;
Testcalstatus_Tcactive_Read(bool a, bool b)1133         partial void Testcalstatus_Tcactive_Read(bool a, bool b);
Testcalstatus_Tcactive_ValueProvider(bool a)1134         partial void Testcalstatus_Tcactive_ValueProvider(bool a);
1135 
Testcalstatus_Write(uint a, uint b)1136         partial void Testcalstatus_Write(uint a, uint b);
Testcalstatus_Read(uint a, uint b)1137         partial void Testcalstatus_Read(uint a, uint b);
1138 
1139         // Testtcstatus - Offset : 0x4C
1140         protected IValueRegisterField testtcstatus_tccntcal_field;
Testtcstatus_Tccntcal_Read(ulong a, ulong b)1141         partial void Testtcstatus_Tccntcal_Read(ulong a, ulong b);
Testtcstatus_Tccntcal_ValueProvider(ulong a)1142         partial void Testtcstatus_Tccntcal_ValueProvider(ulong a);
1143 
Testtcstatus_Write(uint a, uint b)1144         partial void Testtcstatus_Write(uint a, uint b);
Testtcstatus_Read(uint a, uint b)1145         partial void Testtcstatus_Read(uint a, uint b);
1146 
1147         // Testtclatest - Offset : 0x50
1148         protected IValueRegisterField testtclatest_tccntlatest_field;
Testtclatest_Tccntlatest_Read(ulong a, ulong b)1149         partial void Testtclatest_Tccntlatest_Read(ulong a, ulong b);
Testtclatest_Tccntlatest_ValueProvider(ulong a)1150         partial void Testtclatest_Tccntlatest_ValueProvider(ulong a);
1151 
Testtclatest_Write(uint a, uint b)1152         partial void Testtclatest_Write(uint a, uint b);
Testtclatest_Read(uint a, uint b)1153         partial void Testtclatest_Read(uint a, uint b);
1154 
1155         // Testcalres - Offset : 0x54
1156         protected IValueRegisterField testcalres_calressdm_field;
Testcalres_Calressdm_Read(ulong a, ulong b)1157         partial void Testcalres_Calressdm_Read(ulong a, ulong b);
Testcalres_Calressdm_ValueProvider(ulong a)1158         partial void Testcalres_Calressdm_ValueProvider(ulong a);
1159         protected IValueRegisterField testcalres_calresfine_field;
Testcalres_Calresfine_Read(ulong a, ulong b)1160         partial void Testcalres_Calresfine_Read(ulong a, ulong b);
Testcalres_Calresfine_ValueProvider(ulong a)1161         partial void Testcalres_Calresfine_ValueProvider(ulong a);
1162 
Testcalres_Write(uint a, uint b)1163         partial void Testcalres_Write(uint a, uint b);
Testcalres_Read(uint a, uint b)1164         partial void Testcalres_Read(uint a, uint b);
1165 
1166         // Testcmd - Offset : 0x58
1167         protected IFlagRegisterField testcmd_starttc_bit;
Testcmd_Starttc_Write(bool a, bool b)1168         partial void Testcmd_Starttc_Write(bool a, bool b);
Testcmd_Starttc_ValueProvider(bool a)1169         partial void Testcmd_Starttc_ValueProvider(bool a);
1170         protected IFlagRegisterField testcmd_startcal_bit;
Testcmd_Startcal_Write(bool a, bool b)1171         partial void Testcmd_Startcal_Write(bool a, bool b);
Testcmd_Startcal_ValueProvider(bool a)1172         partial void Testcmd_Startcal_ValueProvider(bool a);
1173 
Testcmd_Write(uint a, uint b)1174         partial void Testcmd_Write(uint a, uint b);
Testcmd_Read(uint a, uint b)1175         partial void Testcmd_Read(uint a, uint b);
1176 
1177         // Defeat - Offset : 0x5C
1178         protected IFlagRegisterField defeat_highprec_bit;
Defeat_Highprec_Write(bool a, bool b)1179         partial void Defeat_Highprec_Write(bool a, bool b);
Defeat_Highprec_Read(bool a, bool b)1180         partial void Defeat_Highprec_Read(bool a, bool b);
Defeat_Highprec_ValueProvider(bool a)1181         partial void Defeat_Highprec_ValueProvider(bool a);
1182 
Defeat_Write(uint a, uint b)1183         partial void Defeat_Write(uint a, uint b);
Defeat_Read(uint a, uint b)1184         partial void Defeat_Read(uint a, uint b);
1185 
LFRCO_Reset()1186         partial void LFRCO_Reset();
1187 
EFR32xG2_LFRCO_2_Constructor()1188         partial void EFR32xG2_LFRCO_2_Constructor();
1189 
1190         public bool Enabled
1191         {
1192             get
1193             {
1194                 // Your boolean which you have to define in your partial class file
1195                 return isEnabled;
1196             }
1197         }
1198 
1199         private ICMU_EFR32xG2 _cmu;
1200         private ICMU_EFR32xG2 cmu
1201         {
1202             get
1203             {
1204                 if (Object.ReferenceEquals(_cmu, null))
1205                 {
1206                     foreach(var cmu in machine.GetPeripheralsOfType<ICMU_EFR32xG2>())
1207                     {
1208                         _cmu = cmu;
1209                     }
1210                 }
1211                 return _cmu;
1212             }
1213             set
1214             {
1215                 _cmu = value;
1216             }
1217         }
1218 
ReadDoubleWord(long offset)1219         public override uint ReadDoubleWord(long offset)
1220         {
1221             long temp = offset & 0x0FFF;
1222             switch(offset & 0x3000){
1223                 case 0x0000:
1224                     return registers.Read(offset);
1225                 default:
1226                     this.Log(LogLevel.Warning, "Reading from Set/Clr/Tgl is not supported.");
1227                     return registers.Read(temp);
1228             }
1229         }
1230 
WriteDoubleWord(long address, uint value)1231         public override void WriteDoubleWord(long address, uint value)
1232         {
1233             long temp = address & 0x0FFF;
1234             switch(address & 0x3000){
1235                 case 0x0000:
1236                     registers.Write(address, value);
1237                     break;
1238                 case 0x1000:
1239                     registers.Write(temp, registers.Read(temp) | value);
1240                     break;
1241                 case 0x2000:
1242                     registers.Write(temp, registers.Read(temp) & ~value);
1243                     break;
1244                 case 0x3000:
1245                     registers.Write(temp, registers.Read(temp) ^ value);
1246                     break;
1247                 default:
1248                     this.Log(LogLevel.Error, "writing doubleWord to non existing offset {0:X}, case : {1:X}", address, address & 0x3000);
1249                     break;
1250             }
1251         }
1252 
1253         protected enum Registers
1254         {
1255             Ipversion = 0x0,
1256             Ctrl = 0x4,
1257             Status = 0x8,
1258             If = 0x14,
1259             Ien = 0x18,
1260             Lock = 0x20,
1261             Cfg = 0x24,
1262             Hiprecision = 0x28,
1263             Nomcal = 0x2C,
1264             Nomcalinv = 0x30,
1265             Cmd = 0x34,
1266             Trim = 0x38,
1267             Trimhiprec = 0x3C,
1268             Stepsize = 0x40,
1269             Testctrl = 0x44,
1270             Testcalstatus = 0x48,
1271             Testtcstatus = 0x4C,
1272             Testtclatest = 0x50,
1273             Testcalres = 0x54,
1274             Testcmd = 0x58,
1275             Defeat = 0x5C,
1276 
1277             Ipversion_SET = 0x1000,
1278             Ctrl_SET = 0x1004,
1279             Status_SET = 0x1008,
1280             If_SET = 0x1014,
1281             Ien_SET = 0x1018,
1282             Lock_SET = 0x1020,
1283             Cfg_SET = 0x1024,
1284             Hiprecision_SET = 0x1028,
1285             Nomcal_SET = 0x102C,
1286             Nomcalinv_SET = 0x1030,
1287             Cmd_SET = 0x1034,
1288             Trim_SET = 0x1038,
1289             Trimhiprec_SET = 0x103C,
1290             Stepsize_SET = 0x1040,
1291             Testctrl_SET = 0x1044,
1292             Testcalstatus_SET = 0x1048,
1293             Testtcstatus_SET = 0x104C,
1294             Testtclatest_SET = 0x1050,
1295             Testcalres_SET = 0x1054,
1296             Testcmd_SET = 0x1058,
1297             Defeat_SET = 0x105C,
1298 
1299             Ipversion_CLR = 0x2000,
1300             Ctrl_CLR = 0x2004,
1301             Status_CLR = 0x2008,
1302             If_CLR = 0x2014,
1303             Ien_CLR = 0x2018,
1304             Lock_CLR = 0x2020,
1305             Cfg_CLR = 0x2024,
1306             Hiprecision_CLR = 0x2028,
1307             Nomcal_CLR = 0x202C,
1308             Nomcalinv_CLR = 0x2030,
1309             Cmd_CLR = 0x2034,
1310             Trim_CLR = 0x2038,
1311             Trimhiprec_CLR = 0x203C,
1312             Stepsize_CLR = 0x2040,
1313             Testctrl_CLR = 0x2044,
1314             Testcalstatus_CLR = 0x2048,
1315             Testtcstatus_CLR = 0x204C,
1316             Testtclatest_CLR = 0x2050,
1317             Testcalres_CLR = 0x2054,
1318             Testcmd_CLR = 0x2058,
1319             Defeat_CLR = 0x205C,
1320 
1321             Ipversion_TGL = 0x3000,
1322             Ctrl_TGL = 0x3004,
1323             Status_TGL = 0x3008,
1324             If_TGL = 0x3014,
1325             Ien_TGL = 0x3018,
1326             Lock_TGL = 0x3020,
1327             Cfg_TGL = 0x3024,
1328             Hiprecision_TGL = 0x3028,
1329             Nomcal_TGL = 0x302C,
1330             Nomcalinv_TGL = 0x3030,
1331             Cmd_TGL = 0x3034,
1332             Trim_TGL = 0x3038,
1333             Trimhiprec_TGL = 0x303C,
1334             Stepsize_TGL = 0x3040,
1335             Testctrl_TGL = 0x3044,
1336             Testcalstatus_TGL = 0x3048,
1337             Testtcstatus_TGL = 0x304C,
1338             Testtclatest_TGL = 0x3050,
1339             Testcalres_TGL = 0x3054,
1340             Testcmd_TGL = 0x3058,
1341             Defeat_TGL = 0x305C,
1342         }
1343 
1344         public long Size => 0x4000;
1345 
1346         protected DoubleWordRegisterCollection registers;
1347     }
1348 }