| using Antmicro.Renode.Core; |
| using Antmicro.Renode.Logging; |
| using Antmicro.Renode.Time; |
| using Antmicro.Renode.Peripherals.Bus; |
| |
| namespace Antmicro.Renode.Peripherals.Test |
| { |
| class ExecuteInLockPeripheral : IBytePeripheral, IKnownSize |
| { |
| public ExecuteInLockPeripheral(Machine machine) |
| { |
| this.machine = machine; |
| } |
| |
| public void Reset() |
| { |
| } |
| |
| public byte ReadByte(long offset) |
| { |
| return 0; |
| } |
| |
| public void WriteByte(long offset, byte value) |
| { |
| machine.ClockSource.ExecuteInLock(() => |
| { |
| this.Log(LogLevel.Info, $"Got write request with value 0x{value:X}"); |
| }); |
| } |
| |
| public long Size |
| { |
| get |
| { |
| return 1; |
| } |
| } |
| |
| private Machine machine; |
| } |
| } |