GithubHelp home page GithubHelp logo

antmicro-labs / renode Goto Github PK

View Code? Open in Web Editor NEW

This project forked from renode/renode

4.0 4.0 0.0 2.79 MB

Renode - Antmicro's virtual development framework for complex embedded systems

Home Page: https://renode.io

License: Other

Shell 3.68% C# 41.97% RobotFramework 37.58% Python 9.79% PowerShell 0.06% C++ 5.76% C 1.00% Batchfile 0.16% CMake 0.01%

renode's People

Contributors

ajelinski avatar andresr8 avatar jakubjatczak avatar jan-malek avatar janolencki avatar joannabrozek avatar kamilgalik avatar karlp avatar kartben avatar koluckirafal avatar mars-low avatar marwit avatar mateusz-holenko avatar mateuszkarlic avatar mgielda avatar mgorzkowski avatar michalsieron avatar mmurach avatar msobkowski avatar mszprejda avatar p-woj avatar pagten avatar pgielda avatar piotrzierhoffer avatar pkoscik avatar robertszczepanski avatar tgorochowik avatar wkkuna avatar wojciechowskidawid avatar wojmel avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

renode's Issues

Find an implementation of DHCP that could be used in Renode

To implement the DHCP support, we need the to have the DHCP server.

We can

a) implement it ourselves
b) find an implementation and use it

Both options are fine. Our own implementation has to be simple though, and I'm not very familiar with the protocol itself to judge how much work it would be.

External library has to have a permissive license (Apache, MIT etc).

It needs to compile well on Mono and .NET Framework and should not rely on external software.
It should also be configurable from code, not config files.

Please note all candidates you're investigating in this issue (along with the decision and its justification).

Can't find login and password for Buildroot in "hifive-unleashed.resc" example

I wanted to run hifive-unleashed.resc script (renode/scripts/single-node/hifive_unleashed.resc), after successful boot of Linux, I was asked for login and password for Buildroot, but I couldn't find any information about login data.

Here is my terminal output of the whole session:

bbl loader
                SIFIVE, INC.
         5555555555555555555555555
        5555                   5555
       5555                     5555
      5555                       5555
     5555       5555555555555555555555
    5555       555555555555555555555555
   5555                             5555
  5555                               5555
 5555                                 5555
5555555555555555555555555555          55555
 55555           555555555           55555
   55555           55555           55555
     55555           5           55555
       55555                   55555
         55555               55555
           55555           55555
             55555       55555
               55555   55555
                 555555555
                   55555
                     5
           SiFive RISC-V Coreplex
[    0.000000] OF: fdt: Ignoring memory range 0x80000000 - 0x80200000
[    0.000000] Linux version 4.15.0-00044-g2b0aa1de45f6 (houen@bakura) (gcc version
 7.2.0 (GCC)) #5 SMP Wed Jul 11 14:54:22 CEST 2018
[    0.000000] bootconsole [early0] enabled
[    0.000000] Initial ramdisk at: 0x        (ptrval) (9593856 bytes)
[    0.000000] Zone ranges:
[    0.000000]   DMA32    [mem 0x0000000080200000-0x000000008fffffff]
[    0.000000]   Normal   [mem 0x0000000090000000-0x000008ffffffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080200000-0x000000008fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080200000-0x000000008fffffff]
[    0.000000] software IO TLB [mem 0x8bc73000-0x8fc73000] (64MB) mapped at [      
  (ptrval)-        (ptrval)]
[    0.000000] CPU with hartid=0 has a non-okay status of "masked"
[    0.000000] elf_hwcap is 0x1105
[    0.000000] percpu: Embedded 14 pages/cpu @        (ptrval) s28632 r0 d28712 u57
344
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 64135
[    0.000000] Kernel command line: earlyconsole mem=256M@0x80000000
[    0.000000] Dentry cache hash table entries: 32768 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 16384 (order: 5, 131072 bytes)
[    0.000000] Sorting __ex_table...
[    0.000000] Memory: 175124K/260096K available (3193K kernel code, 263K rwdata, 9
70K rodata, 9535K init, 782K bss, 84972K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=5, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  RCU event tracing is enabled.
[    0.000000]  RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=5.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=5
[    0.000000] NR_IRQS: 0, nr_irqs: 0, preallocated irqs: 0
[    0.000000] CPU with hartid=0 has a non-okay status of "masked"
[    0.000000] riscv,cpu_intc,1: 64 local interrupts mapped
[    0.000000] riscv,cpu_intc,2: 64 local interrupts mapped
[    0.000000] riscv,cpu_intc,3: 64 local interrupts mapped
[    0.000000] riscv,cpu_intc,4: 64 local interrupts mapped
[    0.000000] OF: /soc/interrupt-controller@c000000: could not find phandle
[    0.000000] ------------[ cut here ]------------
[    0.000000] WARNING: CPU: 2 PID: 0 at /home/houen/antmicro/microsemi/mfus2/linux
/drivers/irqchip/irq-riscv-intc.c:158 riscv_irq_enable+0x92/0x94
[    0.000000] CPU: 2 PID: 0 Comm: swapper/2 Not tainted 4.15.0-00044-g2b0aa1de45f6
 #5
[    0.000000] Call Trace:
[    0.000000] [<        (ptrval)>] walk_stackframe+0x0/0xa2
[    0.000000] [<        (ptrval)>] show_stack+0x26/0x34
[    0.000000] [<        (ptrval)>] dump_stack+0x5e/0x7c
[    0.000000] [<        (ptrval)>] __warn+0xc6/0xdc
[    0.000000] [<        (ptrval)>] warn_slowpath_null+0x2c/0x3e
[    0.000000] [<        (ptrval)>] riscv_irq_enable+0x8e/0x94
[    0.000000] [<        (ptrval)>] irq_enable+0x3a/0x6a
[    0.000000] [<        (ptrval)>] __irq_startup+0x80/0x88
[    0.000000] [<        (ptrval)>] irq_startup+0x4e/0xe2
[    0.000000] [<        (ptrval)>] irq_activate_and_startup+0x1c/0x28
[    0.000000] [<        (ptrval)>] __irq_do_set_handler+0x6e/0x134
[    0.000000] [<        (ptrval)>] irq_set_chained_handler_and_data+0x2c/0x4a
[    0.000000] [<        (ptrval)>] plic_init+0x1fe/0x32a
[    0.000000] [<        (ptrval)>] of_irq_init+0x182/0x2a6
[    0.000000] [<        (ptrval)>] irqchip_init+0x10/0x1c
[    0.000000] [<        (ptrval)>] init_IRQ+0x8/0x14
[    0.000000] [<        (ptrval)>] start_kernel+0x20a/0x350
[    0.000000] [<        (ptrval)>] _sinittext+0x4e/0x56
[    0.000000] random: get_random_bytes called from print_oops_end_marker+0x3a/0x52
 with crng_init=0
[    0.000000] ---[ end trace b065de4394c98b2c ]---
[    0.000000] riscv,plic0,c000000: mapped 53 interrupts to 4/9 handlers
[    0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles:
 0x1d854df40, max_idle_ns: 3526361616960 ns
[    0.000034] sched_clock: 64 bits at 1000kHz, resolution 1000ns, wraps every 2199
023255500ns
[    0.000547] Calibrating delay loop (skipped), value calculated using timer frequ
ency.. 2.00 BogoMIPS (lpj=10000)
[    0.000781] pid_max: default: 32768 minimum: 301
[    0.001513] Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
[    0.001679] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes)
[    0.005709] Hierarchical SRCU implementation.
[    0.013938] smp: Bringing up secondary CPUs ...
[    0.015272] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles:
 0x1d854df40, max_idle_ns: 3526361616960 ns
[    0.015514] sched_clock: 64 bits at 1000kHz, resolution 1000ns, wraps every 2199
023255500ns
[    0.017919] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles:
 0x1d854df40, max_idle_ns: 3526361616960 ns
[    0.018161] sched_clock: 64 bits at 1000kHz, resolution 1000ns, wraps every 2199
023255500ns
[    0.020543] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles:
 0x1d854df40, max_idle_ns: 3526361616960 ns
[    0.020783] sched_clock: 64 bits at 1000kHz, resolution 1000ns, wraps every 2199
023255500ns
[    0.021583] smp: Brought up 1 node, 4 CPUs
[    0.024083] devtmpfs: initialized
[    0.038583] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_i
dle_ns: 19112604462750000 ns
[    0.038883] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.041015] NET: Registered protocol family 16
[    0.044483] sifive-u54-prci 10000000.prci: Registered U54 core clocks
[    0.045671] sifive-gemgxl-mgmt 100a0000.cadence-gemgxl-mgmt: Registered clock sw
itch 'cadence-gemgxl-mgmt'
[    0.089883] vgaarb: loaded
[    0.091283] SCSI subsystem initialized
[    0.092683] usbcore: registered new interface driver usbfs
[    0.092983] usbcore: registered new interface driver hub
[    0.093283] usbcore: registered new device driver usb
[    0.093683] pps_core: LinuxPPS API ver. 1 registered
[    0.093783] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti
 <[email protected]>
[    0.094083] PTP clock support registered
[    0.096983] clocksource: Switched to clocksource riscv_clocksource
[    0.101383] NET: Registered protocol family 2
[    0.104183] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[    0.104683] TCP bind hash table entries: 2048 (order: 3, 32768 bytes)
[    0.105083] TCP: Hash tables configured (established 2048 bind 2048)
[    0.105483] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.105683] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.106483] NET: Registered protocol family 1
[    0.340783] Unpacking initramfs...
[    0.614883] Initialise system trusted keyrings
[    0.615383] workingset: timestamp_bits=62 max_order=16 bucket_order=0
[    0.647683] random: fast init done
[    0.654283] jitterentropy: Initialization failed with host not compliant with re
quirements: 2
[    0.654483] Key type asymmetric registered
[    0.654583] Asymmetric key parser 'x509' registered
[    0.654683] io scheduler noop registered
[    0.655883] io scheduler cfq registered (default)
[    0.655983] io scheduler mq-deadline registered
[    0.656083] io scheduler kyber registered
[    0.660983] sifive_gpio 10060000.gpio: SiFive GPIO chip registered 16 GPIOs
[    0.661883] pwm-sifivem 10020000.pwm: Unable to find controller clock
[    0.662183] pwm-sifivem 10021000.pwm: Unable to find controller clock
[    0.837383] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    0.842883] 10010000.serial: ttySI0 at MMIO 0x10010000 (irq = 4, base_baud = 0) 
is a sifive-serial
[    0.844083] 10011000.serial: ttySI1 at MMIO 0x10011000 (irq = 5, base_baud = 0) 
is a sifive-serial
[    0.844283] console [ttySI0] enabled
[    0.844283] console [ttySI0] enabled
[    0.844383] bootconsole [early0] disabled
[    0.844383] bootconsole [early0] disabled
[    0.851483] sifive_spi 10041000.spi: mapped; irq=37, cs=4
[    0.852883] sifive_spi 10040000.spi: mapped; irq=41, cs=1
[    0.854283] sifive_spi 10050000.spi: mapped; irq=42, cs=1
[    0.855983] libphy: Fixed MDIO Bus: probed
[    0.857683] macb: GEM doesn't support hardware ptp.
[    0.858183] libphy: MACB_mii_bus: probed
[    0.860483] Generic PHY 10090000.ethernet-ffffffff:00: attached PHY driver [Gene
ric PHY] (mii_bus:phy_addr=10090000.ethernet-ffffffff:00, irq=POLL)
[    0.860583] macb 10090000.ethernet eth0: Cadence GEM rev 0x00070109 at 0x1009000
0 irq 21 (70:b3:d5:92:f0:4a)
[    0.861883] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.861983] ehci-pci: EHCI PCI platform driver
[    0.862483] usbcore: registered new interface driver usb-storage
[    0.862583] i2c /dev entries driver
[    0.865883] leds_pwm soc:pwmleds: unable to request PWM for mtd: -517
[    0.866483] usbcore: registered new interface driver usbhid
[    0.866639] usbhid: USB HID core driver
[    0.868583] NET: Registered protocol family 17
[    0.870083] Loading compiled-in X.509 certificates
[    0.872083] pwm-sifivem 10020000.pwm: SiFive PWM chip registered 4 PWMs
[    0.872683] pwm-sifivem 10021000.pwm: SiFive PWM chip registered 4 PWMs
[    0.899083] Freeing unused kernel memory: 9532K
[    0.899183] This architecture does not have kernel memory protection.
Starting logging: OK
Starting mdev...
sort: /sys/devices/platform/Fixed: No such file or directory
modprobe: can't change directory to '/lib/modules': No such file or directory
Initializing random number generator... done.
Starting network...
Starting dropbear sshd: OK
Welcome to Buildroot
buildroot login: admin
Password: 
Login incorrect

Zephyr Net Shell on SAM E70 crashes after using any Net command

I've built a Capture sample from Zephyr repository for SAM E70 and tried to use it in Renode. Shell works just fine until I use any command that is related to net functions.
Sample GitHub page:
https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/net/capture
My Zephyr configuration is based on Getting Started Guide from Zephyr Project:
https://docs.zephyrproject.org/latest/getting_started/index.html
I'm using Ubuntu WSL on Windows 10 for building project and lunching Renode simulation
Building project:
west build -b sam_e70b_xplained samples/net/capture/
Renode script:

Renode script

using sysbus
$name?="SAM E70"
mach create $name
machine LoadPlatformDescription @platforms/cpus/sam_e70.repl

cpu PerformanceInMips 125

$bin?=@../../zephyrproject/zephyr/build/zephyr/zephyr.elf

emulation CreateNetworkServer "serwer" "192.168.100.100"
emulation CreateSwitch "switch"
connector Connect serwer switch
connector Connect gem switch

showAnalyzer sysbus.usart1

# we silence the MPU warnings in nvic
logLevel 3 nvic

macro reset
"""
    sysbus LoadELF $bin
"""

runMacro $reset

I set up logging for gem logLevel -1 sysbus.gem
Logs just after starting simulation

Log from renode

12:25:09.8573 [WARNING] sysbus: Write of value 0x4000500 to an unimplemented register EFC:FMR (0x400E0C00) generated from SVD.
12:25:09.8627 [WARNING] sysbus: Read from an unimplemented register PMC:CKGR_MOR (0x400E0620), returning a value from SVD: 0x8.
12:25:09.8644 [WARNING] sysbus: Write of value 0x37FF09 to an unimplemented register PMC:CKGR_MOR (0x400E0620) generated from SVD.
12:25:09.9829 [WARNING] sysbus: Write of value 0x137FF09 to an unimplemented register PMC:CKGR_MOR (0x400E0620) generated from SVD.
12:25:09.9867 [WARNING] sysbus: Write of value 0x137FF01 to an unimplemented register PMC:CKGR_MOR (0x400E0620) generated from SVD.
12:25:09.9893 [WARNING] sysbus: Read from an unimplemented register PMC:PMC_MCKR (0x400E0630), returning a value from SVD: 0x1.
12:25:09.9907 [WARNING] sysbus: Write of value 0x1 to an unimplemented register PMC:PMC_MCKR (0x400E0630) generated from SVD.
12:25:09.9922 [WARNING] sysbus: Write of value 0x20183F01 to an unimplemented register PMC:CKGR_PLLAR (0x400E0628) generated from SVD.
12:25:09.9953 [WARNING] sysbus: Read from an unimplemented register PMC:PMC_MCKR (0x400E0630), returning a value from SVD: 0x1.
12:25:09.9988 [WARNING] sysbus: Write of value 0x1 to an unimplemented register PMC:PMC_MCKR (0x400E0630) generated from SVD.
12:25:10.0001 [WARNING] sysbus: Read from an unimplemented register PMC:PMC_MCKR (0x400E0630), returning a value from SVD: 0x1.
12:25:10.0018 [WARNING] sysbus: Write of value 0x101 to an unimplemented register PMC:PMC_MCKR (0x400E0630) generated from SVD.
12:25:10.0045 [WARNING] sysbus: Read from an unimplemented register PMC:PMC_MCKR (0x400E0630), returning a value from SVD: 0x1.
12:25:10.0084 [WARNING] sysbus: Write of value 0x2 to an unimplemented register PMC:PMC_MCKR (0x400E0630) generated from SVD.
12:25:10.0104 [WARNING] sysbus: [cpu: 0x400F4A] (tag: 'CIDR') ReadDoubleWord from non existing peripheral at 0x400E0940, returning 0xA1020E00.
12:25:10.0122 [WARNING] sysbus: [cpu: 0x400F62] (tag: 'CIDR') ReadDoubleWord from non existing peripheral at 0x400E0940, returning 0xA1020E00.
12:25:10.0152 [WARNING] sysbus: Read from an unimplemented register MATRIX:CCFG_SYSIO (0x40088114), returning a value from SVD: 0x20400000.
12:25:10.0187 [WARNING] sysbus: Write of value 0x20400010 to an unimplemented register MATRIX:CCFG_SYSIO (0x40088114) generated from SVD.
12:25:10.0203 [WARNING] sysbus: Read from an unimplemented register WDT:MR (0x400E1854), returning a value from SVD: 0x3FFF2FFF.
12:25:10.0219 [WARNING] sysbus: Write of value 0x3FFFAFFF to an unimplemented register WDT:MR (0x400E1854) generated from SVD.
12:25:10.0248 [WARNING] sysbus: Write of value 0x4000 to an unimplemented register PMC:PMC_PCER0 (0x400E0610) generated from SVD.
12:25:10.0287 [WARNING] sysbus: Write of value 0x200000 to an unimplemented register PIOA:IDR (0x400E0E44) generated from SVD.
12:25:10.0306 [WARNING] sysbus: Write of value 0x200000 to an unimplemented register PIOA:PUDR (0x400E0E60) generated from SVD.
12:25:10.0321 [WARNING] sysbus: Write of value 0x200000 to an unimplemented register PIOA:PPDDR (0x400E0E90) generated from SVD.
12:25:10.0352 [WARNING] sysbus: Write of value 0x200000 to an unimplemented register PIOA:MDDR (0x400E0E54) generated from SVD.
12:25:10.0393 [WARNING] sysbus: Read from an unimplemented register PIOA:ABCDSR[%s] (0x400E0E70), returning a value from SVD: 0x0.
12:25:10.0411 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOA:ABCDSR[%s] (0x400E0E70) generated from SVD.
12:25:10.0428 [WARNING] sysbus: [cpu: 0x41487C] ReadDoubleWord from non existing peripheral at 0x400E0E74.
12:25:10.0450 [WARNING] sysbus: [cpu: 0x41487C] WriteDoubleWord to non existing peripheral at 0x400E0E74, value 0x0.
12:25:10.0489 [WARNING] sysbus: Write of value 0x200000 to an unimplemented register PIOA:PDR (0x400E0E04) generated from SVD.
12:25:10.0506 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOB:IDR (0x400E1044) generated from SVD.
12:25:10.0523 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOB:PUDR (0x400E1060) generated from SVD.
12:25:10.0553 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOB:PPDDR (0x400E1090) generated from SVD.
12:25:10.0593 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOB:MDDR (0x400E1054) generated from SVD.
12:25:10.0608 [WARNING] sysbus: Read from an unimplemented register PIOB:ABCDSR[%s] (0x400E1070), returning a value from SVD: 0x0.
12:25:10.0622 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOB:ABCDSR[%s] (0x400E1070) generated from SVD.
12:25:10.0650 [WARNING] sysbus: [cpu: 0x41489C] ReadDoubleWord from non existing peripheral at 0x400E1074.
12:25:10.0658 [WARNING] sysbus: [cpu: 0x41488A] WriteDoubleWord to non existing peripheral at 0x400E1074, value 0x10.
12:25:10.0688 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOB:PDR (0x400E1004) generated from SVD.
12:25:10.0708 [WARNING] usart1: Unhandled write to offset 0x0. Unhandled bits: [8] when writing value 0x1AC.
12:25:10.0718 [WARNING] usart1: Unhandled write to offset 0xC. Unhandled bits: [2-31] when writing value 0xFFFFFFFF.
12:25:10.0729 [WARNING] usart1: Unhandled write to offset 0x4. Unhandled bits: [6-7] when writing value 0x8C0. Tags: CHRL (0x3).
12:25:10.0759 [WARNING] usart1: Unhandled write to offset 0x20, value 0x51.
12:25:10.0769 [WARNING] sysbus: Write of value 0x2000000 to an unimplemented register PMC:PMC_PCER1 (0x400E0700) generated from SVD.
12:25:10.0839 [WARNING] sysbus: Write of value 0x10000000 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.0885 [WARNING] sysbus: Write of value 0x10000000 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.0938 [WARNING] sysbus: Write of value 0x10000000 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.0984 [WARNING] sysbus: Write of value 0x10000000 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.1033 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.1052 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.1071 [WARNING] sysbus: [cpu: 0x414896] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.1100 [WARNING] sysbus: [cpu: 0x41488A] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x10000000.
12:25:10.1149 [WARNING] sysbus: Write of value 0x10000000 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.1193 [WARNING] sysbus: Write of value 0x8000000 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.1245 [WARNING] sysbus: Write of value 0x8000000 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.1265 [WARNING] sysbus: Write of value 0x8000000 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.1324 [WARNING] sysbus: Write of value 0x8000000 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.1373 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.1400 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.1439 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.1451 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x8000000.
12:25:10.1560 [WARNING] sysbus: Write of value 0x8000000 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.1610 [WARNING] sysbus: Write of value 0x200 to an unimplemented register PMC:PMC_PCER1 (0x400E0700) generated from SVD.
12:25:10.1635 [WARNING] sysbus: Write of value 0x80 to an unimplemented register TWIHS2:CR (0x40060000) generated from SVD.
12:25:10.1674 [WARNING] sysbus: Write of value 0x2BABA to an unimplemented register TWIHS2:CWGR (0x40060010) generated from SVD.
12:25:10.1726 [WARNING] sysbus: Write of value 0x20 to an unimplemented register TWIHS2:CR (0x40060000) generated from SVD.
12:25:10.1745 [WARNING] sysbus: Write of value 0x4 to an unimplemented register TWIHS2:CR (0x40060000) generated from SVD.
12:25:10.1772 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOA:IDR (0x400E0E44) generated from SVD.
12:25:10.1825 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOA:PUDR (0x400E0E60) generated from SVD.
12:25:10.1845 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOA:PPDDR (0x400E0E90) generated from SVD.
12:25:10.1871 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOA:MDDR (0x400E0E54) generated from SVD.
12:25:10.1911 [WARNING] sysbus: Read from an unimplemented register PIOA:ABCDSR[%s] (0x400E0E70), returning a value from SVD: 0x0.
12:25:10.1925 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOA:ABCDSR[%s] (0x400E0E70) generated from SVD.
12:25:10.1938 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E0E74.
12:25:10.1945 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E0E74, value 0x0.
12:25:10.1973 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOA:PDR (0x400E0E04) generated from SVD.
12:25:10.1991 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOA:IDR (0x400E0E44) generated from SVD.
12:25:10.2004 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOA:PUDR (0x400E0E60) generated from SVD.
12:25:10.2016 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOA:PPDDR (0x400E0E90) generated from SVD.
12:25:10.2030 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOA:MDDR (0x400E0E54) generated from SVD.
12:25:10.2044 [WARNING] sysbus: Read from an unimplemented register PIOA:ABCDSR[%s] (0x400E0E70), returning a value from SVD: 0x0.
12:25:10.2058 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOA:ABCDSR[%s] (0x400E0E70) generated from SVD.
12:25:10.2093 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E0E74.
12:25:10.2102 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E0E74, value 0x0.
12:25:10.2133 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOA:PDR (0x400E0E04) generated from SVD.
12:25:10.2149 [WARNING] sysbus: Write of value 0x80000 to an unimplemented register PMC:PMC_PCER0 (0x400E0610) generated from SVD.
12:25:10.2163 [WARNING] sysbus: Write of value 0x80 to an unimplemented register TWIHS0:CR (0x40018000) generated from SVD.
12:25:10.2189 [WARNING] sysbus: Write of value 0x2BABA to an unimplemented register TWIHS0:CWGR (0x40018010) generated from SVD.
12:25:10.2229 [WARNING] sysbus: Write of value 0x20 to an unimplemented register TWIHS0:CR (0x40018000) generated from SVD.
12:25:10.2244 [WARNING] sysbus: Write of value 0x4 to an unimplemented register TWIHS0:CR (0x40018000) generated from SVD.
12:25:10.2258 [WARNING] sysbus: Write of value 0x80 to an unimplemented register PMC:PMC_PCER1 (0x400E0700) generated from SVD.
12:25:10.2271 [WARNING] sysbus: Write of value 0x1 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.2327 [WARNING] sysbus: Write of value 0x1 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.2340 [WARNING] sysbus: Write of value 0x1 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.2352 [WARNING] sysbus: Write of value 0x1 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.2363 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.2395 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.2433 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.2443 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.2450 [WARNING] sysbus: Write of value 0x1 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.2467 [WARNING] sysbus: Write of value 0x2 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.2495 [WARNING] sysbus: Write of value 0x2 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.2540 [WARNING] sysbus: Write of value 0x2 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.2555 [WARNING] sysbus: Write of value 0x2 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.2572 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.2604 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.2646 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.2655 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.2664 [WARNING] sysbus: Write of value 0x2 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.2677 [WARNING] sysbus: Write of value 0x4 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.2690 [WARNING] sysbus: Write of value 0x4 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.2742 [WARNING] sysbus: Write of value 0x4 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.2756 [WARNING] sysbus: Write of value 0x4 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.2769 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.2781 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.2806 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.2814 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.2844 [WARNING] sysbus: Write of value 0x4 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.2859 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.2875 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.2887 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.2914 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.2956 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.2969 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.2982 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.3002 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.3010 [WARNING] sysbus: Write of value 0x8 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.3051 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.3079 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.3104 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.3144 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.3157 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.3171 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.3185 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.3204 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.3210 [WARNING] sysbus: Write of value 0x10 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.3241 [WARNING] sysbus: Write of value 0x20 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.3252 [WARNING] sysbus: Write of value 0x20 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.3263 [WARNING] sysbus: Write of value 0x20 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.3273 [WARNING] sysbus: Write of value 0x20 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.3283 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.3314 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.3345 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.3352 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.3358 [WARNING] sysbus: Write of value 0x20 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.3368 [WARNING] sysbus: Write of value 0x40 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.3380 [WARNING] sysbus: Write of value 0x40 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.3391 [WARNING] sysbus: Write of value 0x40 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.3414 [WARNING] sysbus: Write of value 0x40 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.3448 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.3462 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.3474 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.3482 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.3489 [WARNING] sysbus: Write of value 0x40 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.3514 [WARNING] sysbus: Write of value 0x80 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.3550 [WARNING] sysbus: Write of value 0x80 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.3563 [WARNING] sysbus: Write of value 0x80 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.3575 [WARNING] sysbus: Write of value 0x80 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.3588 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.3614 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.3651 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.3658 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.3665 [WARNING] sysbus: Write of value 0x80 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.3681 [WARNING] sysbus: Write of value 0x100 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.3716 [WARNING] sysbus: Write of value 0x100 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.3756 [WARNING] sysbus: Write of value 0x100 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.3772 [WARNING] sysbus: Write of value 0x100 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.3787 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.3816 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.3849 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.3856 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.3862 [WARNING] sysbus: Write of value 0x100 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.3873 [WARNING] sysbus: Write of value 0x200 to an unimplemented register PIOD:IDR (0x400E1444) generated from SVD.
12:25:10.3885 [WARNING] sysbus: Write of value 0x200 to an unimplemented register PIOD:PUDR (0x400E1460) generated from SVD.
12:25:10.3912 [WARNING] sysbus: Write of value 0x200 to an unimplemented register PIOD:PPDDR (0x400E1490) generated from SVD.
12:25:10.3951 [WARNING] sysbus: Write of value 0x200 to an unimplemented register PIOD:MDDR (0x400E1454) generated from SVD.
12:25:10.3968 [WARNING] sysbus: Read from an unimplemented register PIOD:ABCDSR[%s] (0x400E1470), returning a value from SVD: 0x0.
12:25:10.3981 [WARNING] sysbus: Write of value 0x0 to an unimplemented register PIOD:ABCDSR[%s] (0x400E1470) generated from SVD.
12:25:10.3993 [WARNING] sysbus: [cpu: 0x414800] ReadDoubleWord from non existing peripheral at 0x400E1474.
12:25:10.4013 [WARNING] sysbus: [cpu: 0x414800] WriteDoubleWord to non existing peripheral at 0x400E1474, value 0x0.
12:25:10.4022 [WARNING] sysbus: Write of value 0x200 to an unimplemented register PIOD:PDR (0x400E1404) generated from SVD.
12:25:10.4065 [WARNING] gem: Unhandled write to offset 0x0. Unhandled bits: [5] when writing value 0x20. Tags: clear_all_stats_regs (0x1).
12:25:10.4108 [NOISY] gem: IRQ set to: False (5)
12:25:10.4112 [WARNING] gem: Unhandled write to offset 0x2C. Unhandled bits: [4-6, 8-31] when writing value 0xFFFFFFFF.
12:25:10.4161 [NOISY] gem: IRQ set to: False (5)
12:25:10.4165 [WARNING] gem: Unhandled write to offset 0x620, value 0xFFFFFFFF.
12:25:10.4172 [WARNING] gem: Unhandled read from offset 0x400.
12:25:10.4182 [WARNING] gem: Unhandled write to offset 0x624, value 0xFFFFFFFF.
12:25:10.4204 [WARNING] gem: Unhandled read from offset 0x404.
12:25:10.4212 [WARNING] gem: Unhandled write to offset 0x628, value 0xFFFFFFFF.
12:25:10.4247 [WARNING] gem: Unhandled read from offset 0x408.
12:25:10.4257 [WARNING] gem: Unhandled write to offset 0x62C, value 0xFFFFFFFF.
12:25:10.4266 [WARNING] gem: Unhandled read from offset 0x40C.
12:25:10.4277 [WARNING] gem: Unhandled write to offset 0x630, value 0xFFFFFFFF.
12:25:10.4285 [WARNING] gem: Unhandled read from offset 0x410.
12:25:10.4309 [WARNING] gem: Unhandled write to offset 0x80, value 0xFFFFFFFF.
12:25:10.4336 [WARNING] gem: Unhandled write to offset 0x84, value 0xFFFFFFFF.
12:25:10.4343 [WARNING] gem: Unhandled write to offset 0x4. Unhandled bits: [6, 16, 19-20, 24] when writing value 0x1130040. Tags: multicast_hash_enable (0x1), length_field_error_frame_discard (0x1), mdc_clock_division (0x6), receive_checksum_offload_enable (0x1).
12:25:10.4352 [WARNING] gem: Unhandled write to offset 0xC, value 0x0.
12:25:10.4359 [WARNING] sysbus: Read from an unimplemented register TWIHS0:SR (0x40018020), returning a value from SVD: 0x300F009.
12:25:10.4369 [WARNING] sysbus: Write of value 0x0 to an unimplemented register TWIHS0:IADR (0x4001800C) generated from SVD.
12:25:10.4379 [WARNING] sysbus: Write of value 0x5F0000 to an unimplemented register TWIHS0:MMR (0x40018004) generated from SVD.
12:25:10.4404 [WARNING] sysbus: Write of value 0x9A to an unimplemented register TWIHS0:THR (0x40018034) generated from SVD.
12:25:10.4436 [WARNING] sysbus: Write of value 0x105 to an unimplemented register TWIHS0:IER (0x40018024) generated from SVD.

Init ethernet on Zephyr

[00:00:00.000,000] <wrn> soc: CIDR mismatch: chip = 0xa1020e00 vs HAL = 0xa1020e01
[00:00:00.000,000] <inf> i2c_sam_twihs: Device I2C_2 initialized
[00:00:00.000,000] <inf> i2c_sam_twihs: Device I2C_0 initialized
uart:~$ 
  clear    device   help     history  i2c      kernel   log      net
  resize   shell
uart:~$ net 
  allocs     arp        capture    conn       dns        events     gptp
  iface      ipv6       mem        nbr        ping       pkt        ppp
  resume     route      stacks     stats      suspend    tcp        udp
  virtual    vlan       websocket
uart:~$ net iface 
  up    down  show
uart:~$ net iface show
Interface 0x20400cc0 (Ethernet) [1]
===================================
Interface is down.
Interface 0x20400d8c (Virtual) [2]
==================================
Interface is down.
uart:~$ net iface up 1

After this SAM E70 freezes and there is nothing in the logger. I have to reset the machine and try again. I've set `sysbus.cpu LogFunctionNames True` to track this problem.
Logger after LogFunctionNames True and executing command iface up 1

12:52:31.1786 [INFO] cpu: Entering function z_shell_find_cmd (entry) at 0x41550C 
12:52:31.1788 [INFO] cpu: Entering function z_shell_cmd_get (entry) at 0x4030B4 
12:52:31.1790 [INFO] cpu: Entering function z_shell_cmd_get at 0x4030D2 
12:52:31.1792 [INFO] cpu: Entering function z_shell_cmd_get at 0x4030D6 
12:52:31.1794 [INFO] cpu: Entering function z_shell_cmd_get at 0x4030DC 
12:52:31.1796 [INFO] cpu: Entering function iface_index_get (entry) at 0x40EF70 
12:52:31.1798 [INFO] cpu: Entering function net_if_get_by_index (entry) at 0x419F24 
12:52:31.1800 [INFO] cpu: Entering function z_impl_net_if_get_by_index (entry) at 0x4070D0 
12:52:31.1802 [INFO] cpu: Entering function z_impl_net_if_get_by_index at 0x4070E8 
12:52:31.1804 [INFO] cpu: Entering function iface_index_get at 0x40EF84 
12:52:31.1806 [INFO] cpu: Entering function iface_index_get at 0x40EFA6 
12:52:31.1825 [INFO] cpu: Entering function net_if_get_by_index (entry) at 0x419F24 
12:52:31.1827 [INFO] cpu: Entering function z_impl_net_if_get_by_index (entry) at 0x4070D0 
12:52:31.1829 [INFO] cpu: Entering function z_impl_net_if_get_by_index at 0x4070E8 
12:52:31.1831 [INFO] cpu: Entering function iface_index_get at 0x40EFB2 
12:52:31.1833 [INFO] cpu: Entering function iface_index_get at 0x40EFC8 
12:52:31.1835 [INFO] cpu: Entering function z_shell_cmd_get at 0x4030E2 
12:52:31.1837 [INFO] cpu: Entering function z_shell_cmd_get at 0x4030E8 
12:52:31.1839 [INFO] cpu: Entering function z_shell_cmd_get at 0x4030CE 
12:52:31.1841 [INFO] cpu: Entering function z_shell_find_cmd at 0x415524 
12:52:31.1843 [INFO] cpu: Entering function z_shell_find_cmd at 0x415534 
12:52:31.1845 [INFO] cpu: Entering function execute at 0x402556 
12:52:31.1847 [INFO] cpu: Entering function execute at 0x4025E4 
12:52:31.1849 [INFO] cpu: Entering function execute at 0x402602 
12:52:31.1851 [INFO] cpu: Entering function execute at 0x4025CE 
12:52:31.1853 [INFO] cpu: Entering function execute at 0x4025DC 
12:52:31.1855 [INFO] cpu: Entering function execute at 0x40249C 
12:52:31.1857 [INFO] cpu: Entering function execute at 0x402652 
12:52:31.1859 [INFO] cpu: Entering function execute at 0x402610 
12:52:31.1861 [INFO] cpu: Entering function execute at 0x402628 
12:52:31.1863 [INFO] cpu: Entering function execute at 0x40265A 
12:52:31.1865 [INFO] cpu: Entering function execute at 0x402690 
12:52:31.1867 [INFO] cpu: Entering function atomic_or (entry) at 0x415038 
12:52:31.1869 [INFO] cpu: Entering function atomic_or at 0x415050 
12:52:31.1871 [INFO] cpu: Entering function execute at 0x40269C 
12:52:31.1873 [INFO] cpu: Entering function k_mutex_unlock.isra.0 (entry) at 0x41515E 
12:52:31.1875 [INFO] cpu: Entering function z_impl_k_mutex_unlock (entry) at 0x412B30 
12:52:31.1877 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B3A 
12:52:31.1879 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B42 
12:52:31.1881 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B5A 
12:52:31.1883 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B66 
12:52:31.1885 [INFO] cpu: Entering function adjust_owner_prio.isra.0 (entry) at 0x41A58A 
12:52:31.1887 [INFO] cpu: Entering function adjust_owner_prio.isra.0 at 0x41A596 
12:52:31.1889 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B72 
12:52:31.1891 [INFO] cpu: Entering function z_unpend_first_thread (entry) at 0x41AA18 
12:52:31.1893 [INFO] cpu: Entering function z_unpend_first_thread at 0x41AA26 
12:52:31.1895 [INFO] cpu: Entering function z_priq_dumb_best (entry) at 0x41A92A 
12:52:31.1897 [INFO] cpu: Entering function z_unpend_first_thread at 0x41AA2E 
12:52:31.1899 [INFO] cpu: Entering function z_unpend_first_thread at 0x41AA3C 
12:52:31.1901 [INFO] cpu: Entering function z_unpend_first_thread at 0x41AA40 
12:52:31.1903 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B78 
12:52:31.1905 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B96 
12:52:31.1940 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B9C 
12:52:31.1943 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B52 
12:52:31.1945 [INFO] cpu: Entering function k_sched_unlock (entry) at 0x413270 
12:52:31.1948 [INFO] cpu: Entering function k_sched_unlock at 0x41327E 
12:52:31.1950 [INFO] cpu: Entering function update_cache (entry) at 0x413128 
12:52:31.1952 [INFO] cpu: Entering function z_priq_dumb_best (entry) at 0x41A92A 
12:52:31.1954 [INFO] cpu: Entering function update_cache at 0x413132 
12:52:31.1957 [INFO] cpu: Entering function update_cache at 0x41313A 
12:52:31.1959 [INFO] cpu: Entering function update_cache at 0x41313E 
12:52:31.1961 [INFO] cpu: Entering function update_cache at 0x413144 
12:52:31.1963 [INFO] cpu: Entering function update_cache at 0x413148 
12:52:31.1965 [INFO] cpu: Entering function update_cache at 0x413152 
12:52:31.1967 [INFO] cpu: Entering function update_cache at 0x41315A 
12:52:31.1969 [INFO] cpu: Entering function update_cache at 0x413150 
12:52:31.1971 [INFO] cpu: Entering function k_sched_unlock at 0x413292 
12:52:31.1973 [INFO] cpu: Entering function k_sched_unlock at 0x413296 
12:52:31.1975 [INFO] cpu: Entering function z_reschedule_unlocked (entry) at 0x41A916 
12:52:31.1977 [INFO] cpu: Entering function z_reschedule_unlocked at 0x41A922 
12:52:31.1979 [INFO] cpu: Entering function z_reschedule_irqlock (entry) at 0x41A8FE 
12:52:31.1982 [INFO] cpu: Entering function z_reschedule_irqlock at 0x41A902 
12:52:31.1984 [INFO] cpu: Entering function z_reschedule_irqlock at 0x41A908 
12:52:31.1986 [INFO] cpu: Entering function arch_swap (entry) at 0x404EB4 
12:52:31.1988 [INFO] cpu: Entering function z_arm_pendsv (entry) at 0x404EEC 
12:52:31.1990 [INFO] cpu: Entering function z_arm_pendsv+0x18 (guessed) at 0x404F04 
12:52:31.1992 [INFO] cpu: Entering function z_arm_pendsv+0x36 (guessed) at 0x404F22 
12:52:31.1994 [INFO] cpu: Entering function z_arm_pendsv+0x42 (guessed) at 0x404F2E 
12:52:31.1997 [INFO] cpu: Entering function arch_swap at 0x404ED4 
12:52:31.1999 [INFO] cpu: Entering function z_impl_k_mutex_unlock at 0x412B56 
12:52:31.2001 [INFO] cpu: Entering function execute at 0x4026A6 
12:52:31.2003 [INFO] cpu: Entering function cmd_net_iface_up (entry) at 0x40FA40 
12:52:31.2005 [INFO] cpu: Entering function get_iface_idx (entry) at 0x40ECE0 
12:52:31.2007 [INFO] cpu: Entering function get_iface_idx at 0x40ECF8 
12:52:31.2009 [INFO] cpu: Entering function strtol (entry) at 0x416680 
12:52:31.2011 [INFO] cpu: Entering function strtol at 0x416694 
12:52:31.2013 [INFO] cpu: Entering function strtol at 0x41669C 
12:52:31.2015 [INFO] cpu: Entering function strtol at 0x4166FC 
12:52:31.2017 [INFO] cpu: Entering function strtol at 0x4166A6 
12:52:31.2019 [INFO] cpu: Entering function strtol at 0x4166AA 
12:52:31.2021 [INFO] cpu: Entering function strtol at 0x4166C2 
12:52:31.2023 [INFO] cpu: Entering function strtol at 0x4166DC 
12:52:31.2025 [INFO] cpu: Entering function strtol at 0x4166E2 
12:52:31.2045 [INFO] cpu: Entering function strtol at 0x4166E6 
12:52:31.2047 [INFO] cpu: Entering function strtol at 0x4166EA 
12:52:31.2049 [INFO] cpu: Entering function strtol at 0x4166F0 
12:52:31.2052 [INFO] cpu: Entering function strtol at 0x4166D4 
12:52:31.2054 [INFO] cpu: Entering function strtol at 0x416708 
12:52:31.2056 [INFO] cpu: Entering function strtol at 0x416728 
12:52:31.2058 [INFO] cpu: Entering function strtol at 0x416740 
12:52:31.2060 [INFO] cpu: Entering function strtol at 0x416744 
12:52:31.2062 [INFO] cpu: Entering function strtol at 0x41674A 
12:52:31.2064 [INFO] cpu: Entering function strtol at 0x41674C 
12:52:31.2066 [INFO] cpu: Entering function strtol at 0x41673C 
12:52:31.2068 [INFO] cpu: Entering function get_iface_idx at 0x40ED02 
12:52:31.2070 [INFO] cpu: Entering function get_iface_idx at 0x40ED1A 
12:52:31.2072 [INFO] cpu: Entering function get_iface_idx at 0x40ECF4 
12:52:31.2074 [INFO] cpu: Entering function cmd_net_iface_up at 0x40FA4A 
12:52:31.2077 [INFO] cpu: Entering function cmd_net_iface_up at 0x40FA4E 
12:52:31.2079 [INFO] cpu: Entering function net_if_get_by_index (entry) at 0x419F24 
12:52:31.2081 [INFO] cpu: Entering function z_impl_net_if_get_by_index (entry) at 0x4070D0 
12:52:31.2083 [INFO] cpu: Entering function z_impl_net_if_get_by_index at 0x4070D4 
12:52:31.2087 [INFO] cpu: Entering function cmd_net_iface_up at 0x40FA52 
12:52:31.2091 [INFO] cpu: Entering function cmd_net_iface_up at 0x40FA68 
12:52:31.2096 [INFO] cpu: Entering function net_if_flag_is_set (entry) at 0x419F6E 
12:52:31.2102 [INFO] cpu: Entering function net_if_flag_is_set at 0x419F70 
12:52:31.2104 [INFO] cpu: Entering function cmd_net_iface_up at 0x40FA6E 
12:52:31.2106 [INFO] cpu: Entering function cmd_net_iface_up at 0x40FA76 
12:52:31.2108 [INFO] cpu: Entering function net_if_up (entry) at 0x408778 
12:52:31.2110 [INFO] cpu: Entering function k_mutex_lock.constprop.0.isra.0 (entry) at 0x406B64 
12:52:31.2113 [INFO] cpu: Entering function z_impl_k_mutex_lock (entry) at 0x412A4C 
12:52:31.2115 [INFO] cpu: Entering function z_impl_k_mutex_lock at 0x412A62 
12:52:31.2117 [INFO] cpu: Entering function z_impl_k_mutex_lock at 0x412A6C 
12:52:31.2119 [INFO] cpu: Entering function z_impl_k_mutex_lock at 0x412A74 
12:52:31.2121 [INFO] cpu: Entering function z_impl_k_mutex_lock at 0x412AAC 
12:52:31.2124 [INFO] cpu: Entering function z_impl_k_mutex_lock at 0x412B1A 
12:52:31.2126 [INFO] cpu: Entering function z_impl_k_mutex_lock at 0x412AC8 
12:52:31.2148 [INFO] cpu: Entering function z_pend_curr (entry) at 0x4131E4 
12:52:31.2150 [INFO] cpu: Entering function pend (entry) at 0x413198 
12:52:31.2153 [INFO] cpu: Entering function pend at 0x4131AE 
12:52:31.2155 [INFO] cpu: Entering function add_to_waitq_locked (entry) at 0x41A936 
12:52:31.2157 [INFO] cpu: Entering function unready_thread (entry) at 0x413168 
12:52:31.2159 [INFO] cpu: Entering function unready_thread at 0x413176 
12:52:31.2161 [INFO] cpu: Entering function sys_dlist_remove (entry) at 0x41A880 
12:52:31.2163 [INFO] cpu: Entering function unready_thread at 0x413180 
12:52:31.2165 [INFO] cpu: Entering function update_cache (entry) at 0x413128 
12:52:31.2167 [INFO] cpu: Entering function z_priq_dumb_best (entry) at 0x41A92A 
12:52:31.2169 [INFO] cpu: Entering function update_cache at 0x413132 
12:52:31.2172 [INFO] cpu: Entering function update_cache at 0x413138 
12:52:31.2174 [INFO] cpu: Entering function update_cache at 0x413152 
12:52:31.2176 [INFO] cpu: Entering function update_cache at 0x413156 
12:52:31.2178 [INFO] cpu: Entering function z_reset_time_slice (entry) at 0x413060 
12:52:31.2180 [INFO] cpu: Entering function z_reset_time_slice at 0x413080 

To be honest, I'm not really sure what's going on. I have looked over Capture sample and it look like very simple implementation of Net Shell for Zephyr.

Find an implementation of ICMP that could be used in Renode

To implement the ICMP support, we need the to have the ICMP server.

We can

a) implement it ourselves
b) find an implementation and use it

Both options are fine.

Our own implementation has to be simple. The ICMP protocol has TONS of options (as per https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol#Control_messages), but honestly speaking - I believe that we want be able to ping.

Please verify what is actually needed. E.g. run Wireshark and see what PING on your machine actually sends. Also look at Zephyr implementation.

External library has to have a permissive license (Apache, MIT etc).

It needs to compile well on Mono and .NET Framework and should not rely on external software.
It should also be configurable from code, not config files.

Please note all candidates you're investigating in this issue (along with the decision and its justification).

"No such command or device: sysbus.ram" when following Basic Usage tutorial

When following the Basic Usage tutorial in the documentation:
Basic Usage

Executed commands from the tutorial:

(monitor) mach create
(machine-0) mach create
(machine-1) mach create "my-machine"
(my-machine) mach set "machine-0"
(machine-0) mach set 0
(machine-0) machine LoadPlatformDescription @platforms/cpus/miv.repl
(machine-0) sysbus.ram Size
No such command or device: sysbus.ram

The error No such command or device: sysbus.ram is given, even though in the documentation it is assumed that this command works. Assuming the Accessing and manipulating peripherals section is a continuation of the previous demo in the documentation.

Here is the peripherals output:

(machine-0) peripherals 
Available peripherals:
  sysbus (SystemBus)
  │   
  ├── clint (CoreLevelInterruptor)
  │       <0x44000000, 0x4400FFFF>
  │       
  ├── cpu (RiscV32)
  │       Slot: 0
  │       
  ├── ddr (MappedMemory)
  │       <0x80000000, 0x83FFFFFF>
  │       
  ├── debugArea (MappedMemory)
  │       <0x00000000, 0x00000FFF>
  │       
  ├── flash (MappedMemory)
  │       <0x60000000, 0x6003FFFF>
  │       
  ├── gpioInputs (MiV_CoreGPIO)
  │       <0x70002000, 0x700020A3>
  │       
  ├── gpioOutputs (MiV_CoreGPIO)
  │       <0x70005000, 0x700050A3>
  │       
  ├── plic (PlatformLevelInterruptController)
  │       <0x40000000, 0x43FFFFFF>
  │       
  ├── smallRom (MappedMemory)
  │       <0x00001000, 0x0000FFFF>
  │       
  ├── timer0 (MiV_CoreTimer)
  │       <0x70003000, 0x7000301B>
  │       
  ├── timer1 (MiV_CoreTimer)
  │       <0x70004000, 0x7000401B>
  │       
  └── uart (MiV_CoreUART)
          <0x70001000, 0x70001017>

Find an implementation of HTTP that could be used in Renode

To implement the HTTP support, we need the to have the HTTP server.

We can

a) implement it ourselves
b) find an implementation and use it
c) use something that's built in the framework

Implementing it ourselves would be, in my opinion, too much work. We don't need fancy features, but the HTTP protocol is big by itself.

We could use something from the framework, but I don't know what's available on both Mono and .NET.

External library has to have a permissive license (Apache, MIT etc).

It needs to compile well on Mono and .NET Framework and should not rely on external software.
It should also be configurable from code, not config files.

Please note all candidates you're investigating in this issue (along with the decision and its justification).

Find an implementation of the [S]NTP protocol that could be used in Renode

To implement the NTP support, we need the to have the NTP server.

As embedded applications usually use SNTP, we should investigate if we could serve both purposes in one go or if we should have the simplified version first.

We can

a) implement it ourselves
b) find an implementation and use it

Both options are fine. Our own implementation has to be simple though, and I'm not very familiar with the protocol itself to judge how much work it would be. I do believe SNTP is relatively easy though and it might be easier to implement the protocol than to integrate something external.

External library has to have a permissive license (Apache, MIT etc).

It needs to compile well on Mono and .NET Framework and should not rely on external software.
It should also be configurable from code, not config files.

We should also be able to time it with virtual time. Renode tracks its time flow independently of the host machine.
In src/Infrastructure/src/Emulator/Main/TimeRealTimeClockMode.cs you will find some options that we use for real time clocks, that is: VirtualTime counting from the epoch time and VirtualTimeWithHostBeginning that takes the moment when the simulation starts and adds the current virtual time to it.

Similar options could be used here.

Please note all options you're investigating in this issue (along with the decision and its justification).

A minor problem with log levels of selected peripherals

I noticed after reading through the documentation that after changing the logging levels of specific peripherals there is no way of making them respond to the globally set level again without restarting the entire machine emulation. This makes it difficult to manage the logs after making too many changes. Is there a way to make the peripherals respond to global setting again?

Here's the output from the terminal:

(monitor) mach create "Maszyna1"
(Maszyna1) machine LoadPlatformDescription @platforms/cpus/sam_e70.repl
(Maszyna1) peripherals
Available peripherals:
  sysbus (SystemBus)
  │   
  ├── cpu (CortexM)
  │       Slot: 0
  │       
  ├── flash (MappedMemory)
  │       <0x00000000, 0x0FFFFFFF>
  │       
  ├── gem (CadenceGEM)
  │   │   <0x40050000, 0x40050FFF>
  │   │   
  │   └── phy (EthernetPhysicalLayer)
  │           Address: 0
  │           
  ├── nvic (NVIC)
  │       <0xE000E000, 0xE000EFFF>
  │       
  ├── PMC_SR (PythonPeripheral)
  │       <0x400E0668, 0x400E066B>
  │       
  ├── rom (MappedMemory)
  │       <0x1FFF0000, 0x1FFFFFFF>
  │       
  ├── sram (MappedMemory)
  │       <0x20000000, 0x2FFFFFFF>
  │       
  ├── trng (SAM_TRNG)
  │       <0x40070000, 0x40073FFF>
  │       
  ├── usart0 (SAM_USART)
  │       <0x40024000, 0x40027FFF>
  │       
  ├── usart1 (SAM_USART)
  │       <0x40028000, 0x4002BFFF>
  │       
  └── usart2 (SAM_USART)
          <0x4002C000, 0x4002FFFF>
          
(Maszyna1) logLevel
Currently set levels:
Backend           | Emulation element                   | Level
=================================================================
memory            :                                     : INFO
-----------------------------------------------------------------
console           :                                     : INFO
-----------------------------------------------------------------
(Maszyna1) logLevel 2 usart1
(Maszyna1) logLevel
Currently set levels:
Backend           | Emulation element                   | Level
=================================================================
memory            :                                     : INFO
                  : Maszyna1:sysbus.usart1              : WARNING
-----------------------------------------------------------------
console           :                                     : INFO
                  : Maszyna1:sysbus.usart1              : WARNING
-----------------------------------------------------------------
(Maszyna1) logLevel 0
(Maszyna1) logLevel
Currently set levels:
Backend           | Emulation element                   | Level
=================================================================
memory            :                                     : DEBUG
                  : Maszyna1:sysbus.usart1              : WARNING
-----------------------------------------------------------------
console           :                                     : DEBUG
                  : Maszyna1:sysbus.usart1              : WARNING
-----------------------------------------------------------------
(Maszyna1)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.