| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Peripherals/Peripherals/Timers/ |
| D | Cadence_TTC.cs | 28 … var timer = new TimerUnit(machine.ClockSource, this, frequency, $"Timer{index + 1}"); in Cadence_TTC() 29 foreach(var register in BuildTimerUnitRegisters(timer)) in Cadence_TTC() 34 timerUnits[index] = timer; in Cadence_TTC() 35 irqs[index] = timer.irq; in Cadence_TTC() 56 foreach(var timer in timerUnits) in Reset() 58 timer.Reset(); in Reset() 80 foreach(var timer in timerUnits) 82 timer.Frequency = value; 87 private Dictionary<long, DoubleWordRegister> BuildTimerUnitRegisters(TimerUnit timer) in BuildTimerUnitRegisters() argument 96 writeCallback: (_, val) => timer.Prescaler = (int)val, in BuildTimerUnitRegisters() [all …]
|
| D | EFR32xG2_TIMER_1.cs | 31 timer.Frequency = timerFrequency; in EFR32xG2_TIMER_1() 32 timer.Limit = timerLimit; in EFR32xG2_TIMER_1() 37 …timer = new LimitTimer(machine.ClockSource, 1, this, "timer", 0xFFFFFFFFUL, direction: Direction.A… in EFR32xG2_TIMER_1_Constructor() 39 timer.LimitReached += OnTimerLimitReached; in EFR32xG2_TIMER_1_Constructor() 47 timer.Enabled = false; in TIMER_Reset() 74 timer.Enabled = false; in Cnt_Cnt_Write() 76 timer.Value = b; in Cnt_Cnt_Write() 77 timer.Enabled = true; in Cnt_Cnt_Write() 117 timer.Enabled = false; in StopCommand() 126 if (timer.Limit == timerLimit) in OnTimerLimitReached() [all …]
|
| D | RenesasRZG_GTM.cs | 21 …timer = new LimitTimer(machine.ClockSource, frequency, this, "timer", FreeRunLimit, Direction.Desc… in RenesasRZG_GTM() 22 timer.LimitReached += HandleLimitReached; in RenesasRZG_GTM() 33 timer.Reset(); in Reset() 60 valueProviderCallback: _ => timer.Enabled) in DefineRegisters() 73 if(timer.Enabled) in DefineRegisters() 78 timer.ResetValue(); in DefineRegisters() 85 timer.ResetValue(); in DefineRegisters() 86 timer.Enabled = true; in DefineRegisters() 98 timer.Enabled = false; in DefineRegisters() 111 timer.Direction = Direction.Descending; in DefineRegisters() [all …]
|
| D | PulseGenerator.cs | 21 …timer = new LimitTimer(machine.ClockSource, frequency, this, nameof(timer), enabled: true, eventEn… in PulseGenerator() 22 timer.LimitReached += () => in PulseGenerator() 24 timer.Limit = state ? offTicks : onTicks; in PulseGenerator() 34 timer.Limit = !startState ? offTicks : onTicks; in Reset() 45 get { return timer.Enabled; } 46 set { timer.Enabled = value; } 51 get { return timer.Frequency; } 52 set { timer.Frequency = value; } 60 private readonly LimitTimer timer; field in Antmicro.Renode.Peripherals.Timers.PulseGenerator
|
| D | RenesasRZG_SYC.cs | 19 …timer = new LimitTimer(machine.ClockSource, frequency, this, "Timestamp generator", ulong.MaxValue… in RenesasRZG_SYC() 27 timer.Reset(); in Reset() 37 valueProviderCallback: _ => timer.Enabled, in DefineRegisters() 38 writeCallback: (_, value) => timer.Enabled = value) in DefineRegisters() 49 valueProviderCallback: _ => timer.Value, in DefineRegisters() 54 valueProviderCallback: _ => timer.Value >> 32, in DefineRegisters() 57 … var newValue = (value << 32) | (timerValueLowerOverride ?? (uint)timer.Value); in DefineRegisters() 60 if(!timer.Enabled) in DefineRegisters() 65 timer.Value = newValue; in DefineRegisters() 70 valueProviderCallback: _ => (uint)timer.Frequency, in DefineRegisters() [all …]
|
| D | Gaisler_GPTimer.cs | 56 foreach(var timer in timers) in Reset() 58 timer.Reset(); in Reset() 153 var timer = timers[index]; in UpdateInterrupt() 154 var state = timer.interruptEnable.Value && timer.interruptPending.Value; in UpdateInterrupt() 179 foreach(var timer in timers) 181 timer.Divider = value; 206 …timer = new LimitTimer(clockSource, frequency, parent, $"timer{index}", limit: uint.MaxValue, even… in TimerUnit() 207 timer.LimitReached += OnLimitReached; in TimerUnit() 212 timer.Reset(); in Reset() 218 get => timer.Value; [all …]
|
| D | NPCX_ITIM.cs | 25 …timer = new LimitTimer(machine.ClockSource, apb2Frequency, this, "timer", direction: Direction.Des… in NPCX_ITIM() 26 timer.LimitReached += () => in NPCX_ITIM() 39 timer.Reset(); in Reset() 54 changeCallback: (_, value) => timer.Divider = (int)value + 1) in DefineRegisters() 65 … changeCallback: (_, value) => timer.Frequency = value ? lfclkFrequency : apb2Frequency) in DefineRegisters() 73 timer.ResetValue(); in DefineRegisters() 76 timer.Enabled = value; in DefineRegisters() 82 valueProviderCallback: _ => timer.Enabled ? GetTimerValue(true) : timerLimitLow, in DefineRegisters() 93 … valueProviderCallback: _ => timer.Enabled ? GetTimerValue(false) >> 32 : timerLimitHigh, in DefineRegisters() 113 return timer.Value; in GetTimerValue() [all …]
|
| D | RenesasRZG_Watchdog.cs | 25 this.timer = new LimitTimer(machine.ClockSource, clockFrequency, this, "Watchdog Timer", in RenesasRZG_Watchdog() 28 this.timer.LimitReached += OnLimitReached; in RenesasRZG_Watchdog() 39 timer.Reset(); in Reset() 118 valueProviderCallback: _ => (timer.Limit >> 20) - 1, in BuildRegisterMap() 121 if(timer.Enabled) in BuildRegisterMap() 126 timer.Limit = (value + 1) << 20; in BuildRegisterMap() 132 valueProviderCallback: _ => timer.Value, in BuildRegisterMap() 135 if(timer.Enabled) in BuildRegisterMap() 140 timer.Value = value; in BuildRegisterMap() 180 timer.Enabled = timerEnabled && !forceStop; in UpdateTimerStatus() [all …]
|
| D | LPC_CTimer.cs | 20 timer = new LimitTimer(machine.ClockSource, frequency, this, nameof(timer), in LPC_CTimer() 22 timer.LimitReached += () => in LPC_CTimer() 58 valueProviderCallback: _ => timer.Enabled, in DefineRegisters() 59 changeCallback: (_, value) => timer.Enabled = value) in DefineRegisters() 65 timer.Value = 0; in DefineRegisters() 68 timer.Enabled = !value; in DefineRegisters() 74 mode: FieldMode.Read, valueProviderCallback: _ => timer.Value); in DefineRegisters() 78 valueProviderCallback: _ => (ulong)timer.Divider - 1, in DefineRegisters() 79 changeCallback: (_, value) => timer.Divider = (int)value + 1); in DefineRegisters() 116 valueProviderCallback: _ => timer.Limit, in DefineRegisters() [all …]
|
| D | NRF52840_Timer.cs | 50 foreach(var timer in innerTimers) in Reset() 52 timer.Reset(); in Reset() 74 foreach(var timer in innerTimers) in DefineRegisters() 76 timer.Enabled = true; in DefineRegisters() 90 foreach(var timer in innerTimers) in DefineRegisters() 92 timer.Enabled = false; in DefineRegisters() 115 foreach(var timer in innerTimers) in DefineRegisters() 117 timer.Value++; in DefineRegisters() 118 if(timer.Compare == timer.Value) in DefineRegisters() 135 foreach(var timer in innerTimers) in DefineRegisters() [all …]
|
| D | SAM_TC.cs | 351 …timer = new LimitTimer(clockSource, masterClockFrequency, owner, $"channel-{channel}", MaxValue, D… in Channel() 353 timer.LimitReached += LimitReached; in Channel() 358 timer.Enabled = false; in Channel() 388 timer.Reset(); in Reset() 434 timer.Value = 0; in SoftwareTrigger() 440 public ulong Value => timer.Value; 442 public bool Enabled => timer.Enabled; 556 timer.Frequency = masterClockFrequency; in UpdateFrequency() 557 timer.Divider = 2; in UpdateFrequency() 560 timer.Frequency = masterClockFrequency; in UpdateFrequency() [all …]
|
| D | MPFS_Timer.cs | 28 timer = new LimitTimer[NumberOfInternalTimers] in MPFS_Timer() 38 timer[i].LimitReached += delegate in MPFS_Timer() 41 lock(timer[j]) in MPFS_Timer() 46 timer[j].Limit = backgroundLoadValue[j]; in MPFS_Timer() 59 …, FieldMode.Read, name: "TIM64VALUEU", valueProviderCallback: _ => (uint)(timer[Timer.Timer64].Val… in MPFS_Timer() 63 …2, FieldMode.Read, name: "TIM64VALUEL", valueProviderCallback: _ => (uint)timer[Timer.Timer64].Val… in MPFS_Timer() 71 …hValueField(0, 32, name: "TIM64LOADVALL", writeCallback: (_, valueLow) => timer[Timer.Timer64].Lim… in MPFS_Timer() 81 lock(timer[Timer.Timer64]) in MPFS_Timer() 104 foreach(var eachTimer in timer) in Reset() 157 …, 32, FieldMode.Read, name: $"{name}VALUE", valueProviderCallback: _ => (uint)timer[timerId].Value) in GenerateRegistersForTimer() [all …]
|
| D | RenesasDA14_GPT.cs | 25 …timer = new LimitTimer(machine.ClockSource, lowPowerFrequency, this, "timer", FreeRunLimit, direct… in RenesasDA14_GPT() 26 timer.LimitReached += () => in RenesasDA14_GPT() 28 var currentValue = timer.Limit; in RenesasDA14_GPT() 31 … if(freeRunEnabled.Value && timer.Direction == Direction.Ascending && currentValue != FreeRunLimit) in RenesasDA14_GPT() 33 timer.Limit = FreeRunLimit; in RenesasDA14_GPT() 34 timer.Value = currentValue; in RenesasDA14_GPT() 39 timer.Limit = timerLimit.Value; in RenesasDA14_GPT() 40 timer.ResetValue(); in RenesasDA14_GPT() 69 timer.Reset(); in Reset() 97 valueProviderCallback: _ => timer.Direction == Direction.Descending, in DefineRegisters() [all …]
|
| D | TexasInstrumentsTimer.cs | 140 public void OnTimerLimitReached(LimitTimer timer) in OnTimerLimitReached() argument 142 if(timer == timer12 && interruptEnable12.Value) in OnTimerLimitReached() 147 else if(timer == timer34 && interruptEnable34.Value) in OnTimerLimitReached() 210 … private void OnEnableModeChanged(OperationMode oldValue, OperationMode newValue, LimitTimer timer) in OnEnableModeChanged() argument 215 timer.Enabled = false; in OnEnableModeChanged() 219 timer.Mode = WorkMode.Periodic; in OnEnableModeChanged() 220 timer.Enabled = true; in OnEnableModeChanged() 221 timer.EventEnabled = true; in OnEnableModeChanged() 224 timer.Mode = WorkMode.OneShot; in OnEnableModeChanged() 225 timer.Enabled = true; in OnEnableModeChanged() [all …]
|
| D | Atmel91SystemTimer.cs | 235 private LimitTimer timer; field in Antmicro.Renode.Peripherals.Timers.Atmel91SystemTimer.AT91_InterruptibleTimer 243 …timer = new LimitTimer(machine.ClockSource, frequency, owner, localName, limit, direction, enabled… in AT91_InterruptibleTimer() 244 timer.LimitReached += () => { if (OnUpdate != null) OnUpdate(); }; in AT91_InterruptibleTimer() 255 prevValue = timer.Value; 271 timer.Value = value; 278 get { return timer.Divider; } 279 set { timer.Divider = value; } 284 timer.Enabled = true; in Enable()
|
| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Main/Tests/UnitTests/ |
| D | ComparingTimerTests.cs | 22 … var timer = new ComparingTimer(new BaseClockSource(), 10, null, String.Empty, 20, compare: 5); in ShouldThrowOnCompareHigherThanLimit() 23 Assert.Throws<InvalidOperationException>(() => timer.Compare = 30); in ShouldThrowOnCompareHigherThanLimit() 31 …var timer = new ComparingTimer(clockSource, 1000000, null, String.Empty, 65535 + 1, enabled: true,… in ShouldHandleCompareValueChangeWhenEnabled() 32 timer.CompareReached += delegate { compareCounter++; }; in ShouldHandleCompareValueChangeWhenEnabled() 35 Assert.AreEqual(65535, timer.Value); in ShouldHandleCompareValueChangeWhenEnabled() 36 Assert.AreEqual(65535, timer.Compare); in ShouldHandleCompareValueChangeWhenEnabled() 40 Assert.AreEqual(0, timer.Value); in ShouldHandleCompareValueChangeWhenEnabled() 41 Assert.AreEqual(65535, timer.Compare); in ShouldHandleCompareValueChangeWhenEnabled() 47 Assert.AreEqual(16304, timer.Value); in ShouldHandleCompareValueChangeWhenEnabled() 48 Assert.AreEqual(65535, timer.Compare); in ShouldHandleCompareValueChangeWhenEnabled() [all …]
|
| D | CoreTimerTest.cs | 26 …var timer = new LimitTimer(manualClockSource, 100, null, String.Empty, 100000, Direction.Ascending… in ShouldBeAscending() 31 var value = timer.Value; in ShouldBeAscending() 41 …var timer = new LimitTimer(manualClockSource, 100, null, String.Empty, 100000, Direction.Descendin… in ShouldBeDescending() 42 var oldValue = timer.Limit; in ShouldBeDescending() 46 var value = timer.Value; in ShouldBeDescending() 57 …var timer = new LimitTimer(manualClockSource, 1, null, String.Empty, limit, Direction.Ascending, t… in ShouldNotExceedLimitAscending() 61 var value = timer.Value; in ShouldNotExceedLimitAscending() 73 …var timer = new LimitTimer(manualClockSource, 1, null, String.Empty, limit, Direction.Descending, … in ShouldNotExceedLimitDescending() 77 var value = timer.Value; in ShouldNotExceedLimitDescending() 91 …var timer = new LimitTimer(manualClockSource, 1000000, null, String.Empty, limit, Direction.Descen… in ShouldHandleMicrosecondPrecisionTimerEvents() [all …]
|
| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Cores/Arm/Timers/ |
| D | ARM_PrivateTimer.cs | 28 timer = new LimitTimer(machine.ClockSource, Frequency, this, "Timer", in ARM_PrivateTimer() 30 timer.LimitReached += UpdateInterrupt; in ARM_PrivateTimer() 36 timer.Reset(); in Reset() 49 writeCallback: (_, val) => timer.Limit = val, in BuildRegisters() 50 valueProviderCallback: (_) => (uint)timer.Limit in BuildRegisters() 60 timer.Value = val; in BuildRegisters() 62 valueProviderCallback: (_) => (uint)timer.Value in BuildRegisters() 67 writeCallback: (_, val) => timer.Divider = (int)val + 1, in BuildRegisters() 68 valueProviderCallback: (_) => (ulong)timer.Divider - 1 in BuildRegisters() 72 writeCallback: (_, val) => timer.EventEnabled = val, in BuildRegisters() [all …]
|
| D | ARM_GenericTimer.cs | 286 …rdRegister BuildTimerControlRegister(QuadWordRegister register, TimerUnit timer, string namePrefix) in BuildTimerControlRegister() argument 288 return BuildTimerControlGenericRegister(register, timer, namePrefix, 64) in BuildTimerControlRegister() 289 .WithWriteCallback((_, __) => timer.UpdateInterrupt()); in BuildTimerControlRegister() 292 …Register BuildTimerControlRegister(DoubleWordRegister register, TimerUnit timer, string namePrefix) in BuildTimerControlRegister() argument 294 return BuildTimerControlGenericRegister(register, timer, namePrefix, 32) in BuildTimerControlRegister() 295 .WithWriteCallback((_, __) => timer.UpdateInterrupt()); in BuildTimerControlRegister() 298 …private T BuildTimerControlGenericRegister<T>(T register, TimerUnit timer, string namePrefix, int … 303 valueProviderCallback: _ => timer.InterruptStatus 306 writeCallback: (_, val) => timer.InterruptMask = val, 307 valueProviderCallback: _ => timer.InterruptMask [all …]
|
| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Peripherals/Peripherals/Miscellaneous/S32K3XX_FlexIO/ |
| D | S32K3XX_FlexIO_SENT.cs | 34 if(!flexIO.TimersManager.Reserve(this, timerId, out timer)) in RegisterInFlexIO() 40 …quency ?? flexIO.Frequency, this, $"SENT Timer{timerId}", TimerLimit, divider: (int)timer.Divider); in RegisterInFlexIO() 41 timer.ConfigurationChanged += ConfigureTimer; in RegisterInFlexIO() 42 timer.ControlChanged += ConfigureTimer; in RegisterInFlexIO() 79 timer.Compare = timerValue; in EdgeHandler() 80 timer.Status.SetFlag(true); in EdgeHandler() 87 timer.TriggerSource == TimerTriggerSource.Internal && in ConfigureTimer() 88 timer.Disable == TimerDisable.OnTriggerFallingEdge && in ConfigureTimer() 89 timer.Mode == TimerMode.SingleInputCapture; in ConfigureTimer() 91 innerTimer.Divider = (int)timer.Divider; in ConfigureTimer() [all …]
|
| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Peripherals/Test/PeripheralsTests/ |
| D | Cadence_TTCTests.cs | 23 timer = new Cadence_TTC(machine, TimerFrequency); in CreatePeripheral() 29 timer.Reset(); in PreparePeripheral() 36 timer.SetCounterValue(0, TicksPerSecond); in ShouldResetCounter() 39 Assert.False(timer.Connections[0].IsSet); in ShouldResetCounter() 43 Assert.False(timer.Connections[0].IsSet); in ShouldResetCounter() 81 timer.SetCounterValue(0, initValue); in ShouldOverflowInOneSecond() 84 Assert.False(timer.Connections[index].IsSet); in ShouldOverflowInOneSecond() 88 Assert.True(timer.Connections[index].IsSet); in ShouldOverflowInOneSecond() 91 Assert.False(timer.Connections[index].IsSet); in ShouldOverflowInOneSecond() 101 timer.WriteDoubleWord(index * RegisterSize + (long)register, value); in WriteTimerRegister() [all …]
|
| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Cores/RiscV/ |
| D | CoreLevelInterruptor.cs | 34 …var timer = new ComparingTimer(machine.ClockSource, timerFrequency, this, hartId.ToString(), enabl… in CoreLevelInterruptor() 35 timer.CompareReached += () => irqs[2 * hartId + 1].Set(true); in CoreLevelInterruptor() 37 mTimers.Add(timer); in CoreLevelInterruptor() 50 foreach(var timer in mTimers) in CoreLevelInterruptor() 52 timer.Value = timerValue; in CoreLevelInterruptor() 65 foreach(var timer in mTimers) in CoreLevelInterruptor() 67 timer.Value = timerValue; in CoreLevelInterruptor() 118 foreach(var timer in mTimers) in Reset() 120 timer.Reset(); in Reset()
|
| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Cores/Arm64/ |
| D | ARMv8R.cs | 93 if(timer != null) in Register() 97 timer = peripheral; in Register() 103 timer = null; in Unregister() 217 if(timer == null) in ReadSystemRegisterGenericTimer64() 223 return timer.ReadQuadWordRegisterAArch32(offset); in ReadSystemRegisterGenericTimer64() 229 if(timer == null) in ReadSystemRegisterGenericTimer32() 235 return timer.ReadDoubleWordRegisterAArch32(offset); in ReadSystemRegisterGenericTimer32() 241 if(timer == null) in WriteSystemRegisterGenericTimer64() 247 timer.WriteQuadWordRegisterAArch32(offset, value); in WriteSystemRegisterGenericTimer64() 253 if(timer == null) in WriteSystemRegisterGenericTimer32() [all …]
|
| /Renode-Infrastructure-v1.15.3-29f510e/src/Emulator/Peripherals/Peripherals/Miscellaneous/SiLabs/ |
| D | EFR32xG2_HFXO_3.cs | 38 …timer = new LimitTimer(machine.ClockSource, 32768, this, "hfxodelay", 0xFFFFFFFFUL, direction: Dir… in EFR32xG2_HFXO_3_Constructor() 40 timer.LimitReached += OnStartUpTimerExpired; in EFR32xG2_HFXO_3_Constructor() 146 timer.Enabled = false; in StartDelayTimer() 147 timer.Value = startValue; in StartDelayTimer() 148 timer.Limit = delayTicks; in StartDelayTimer() 149 timer.Enabled = true; in StartDelayTimer() 216 timer.Enabled = false; in OnStartUpTimerExpired() 245 private LimitTimer timer; field in Antmicro.Renode.Peripherals.Miscellaneous.SiLabs.EFR32xG2_HFXO_3
|
| D | EFR32xG2_SYSRTC_1.cs | 32 …timer = new LimitTimer(machine.ClockSource, timerFrequency, this, "sysrtctimer", 0xFFFFFFFFUL, dir… in EFR32xG2_SYSRTC_1() 34 timer.LimitReached += TimerLimitReached; in EFR32xG2_SYSRTC_1() 43 timer.Enabled = false; in Reset() 266 private LimitTimer timer; field in Antmicro.Renode.Peripherals.Miscellaneous.SiLabs.EFR32xG2_SYSRTC_1 317 if (timer.Enabled) 320 return (uint)timer.Value; 324 return (uint)timer.Limit; 332 timer.Value = value; 346 timer.Enabled = false; in StopCommand() 353 if (timer.Limit == 0xFFFFFFFF) in TimerLimitReached() [all …]
|