[riot-notifications] [RIOT-OS/RIOT] dist/tools/renode: improve integration + additional boards (#15459)

Bas Stottelaar notifications at github.com
Tue Nov 17 19:54:20 CET 2020


### Contribution description
This PR improves Renode integration within RIOT-OS. It's a reboot of #8153, but improved. At the same time, @Citrullin was working on #15427, but I had some additional idea's as well.

* Now that https://github.com/renode/renode/issues/144 is fixed, its easier to export paths from RIOT-OS. I therefore moved the board scripts to `board/<name>/dist/renode` to contain Renode-related files. Note that some boards are supported by Renode [out-of-the-box](https://github.com/renode/renode/tree/master/platforms), but they might not be fully compatible. For instance, the `stm32f4discovery` uses UART2 instead of UART4 in Renode's version.
* With the intention of #15427 I also added a warning to note that emulation experience depends on many factors, to manage expectations.
* Prepared for version check, which should work if Renode provides a version command. I opened a feature request for that here: https://github.com/renode/renode/issues/154. I also expect that the next release will be V1.12, albeit master is still pointing to V1.11.
* Additional board support. EFM32 CPUs have a UART bug (in Renode) that prevents them from printing more than one line, but they do at least print something.

### Testing procedure
* Compile the latest version of Renode. This was quite easy on macOS, with [Mono](https://www.mono-project.com/) installed.
* Run `make emulate` in a (simple) application. For instance: `BOARD=stm32f4discovery make -C examples/default emulate`

![image](https://user-images.githubusercontent.com/815976/99433849-578be900-290e-11eb-8353-be625da1fc6f.png)

### Issues/PRs references
#8153, #15427
You can view, comment on, or merge this pull request online at:

  https://github.com/RIOT-OS/RIOT/pull/15459

-- Commit Summary --

  * dist/tools/renode: adapt initialization
  * dist/tools/renode: add emulation warning
  * dist/tools/renode: prepare for version check
  * makefile: add all target to emulate
  * boards/cc2538dk: adapt to new renode setup
  * boards/efm32: add support for Renode
  * boards/stm32f4discovery: add support for Renode

-- File Changes --

    M Makefile.include (2)
    D boards/cc2538dk/dist/board.resc (30)
    A boards/cc2538dk/dist/renode/board.resc (37)
    M boards/ikea-tradfri/Makefile.include (3)
    A boards/ikea-tradfri/dist/renode/board.resc (28)
    A boards/ikea-tradfri/dist/renode/ikea-tradfri.repl (6)
    M boards/slstk3401a/Makefile.include (3)
    A boards/slstk3401a/dist/renode/board.resc (28)
    A boards/slstk3401a/dist/renode/slstk3401a.repl (13)
    M boards/slstk3402a/Makefile.include (3)
    A boards/slstk3402a/dist/renode/board.resc (28)
    A boards/slstk3402a/dist/renode/slstk3402a.repl (13)
    M boards/sltb001a/Makefile.include (3)
    A boards/sltb001a/dist/renode/board.resc (28)
    A boards/sltb001a/dist/renode/sltb001a.repl (6)
    M boards/slwstk6220a/Makefile.include (3)
    M boards/stk3200/Makefile.include (3)
    A boards/stk3200/dist/renode/board.resc (25)
    A boards/stk3200/dist/renode/stk3200.repl (10)
    M boards/stk3600/Makefile.include (3)
    A boards/stk3600/dist/renode/board.resc (25)
    A boards/stk3600/dist/renode/stk3600.repl (7)
    M boards/stk3700/Makefile.include (3)
    A boards/stk3700/dist/renode/board.resc (25)
    A boards/stk3700/dist/renode/stk3700.repl (7)
    M boards/stm32f4discovery/Makefile.include (3)
    A boards/stm32f4discovery/dist/renode/board.resc (34)
    A cpu/efm32/families/efm32gg/dist/renode/efm32gg990f1024.repl (116)
    A cpu/efm32/families/efm32lg/dist/renode/efm32lg990f256.repl (116)
    A cpu/efm32/families/efm32pg12b/dist/renode/efm32pg12b500f1024gl125.repl (110)
    A cpu/efm32/families/efm32pg1b/dist/renode/efm32pg1b200f256gm48.repl (87)
    A cpu/efm32/families/efm32zg/dist/renode/efm32zg222f32.repl (77)
    A cpu/efm32/families/efr32mg12p/dist/renode/efr32mg12p332f1024gl125.repl (110)
    A cpu/efm32/families/efr32mg1p/dist/renode/efr32mg1p132f256gm32.repl (87)
    A cpu/efm32/families/efr32mg1p/dist/renode/efr32mg1p132f256gm48.repl (87)
    A cpu/efm32/families/efr32mg1p/dist/renode/efr32mg1p233f256gm48.repl (87)
    A cpu/efm32/families/ezr32wg/dist/renode/ezr32wg330f256r60.repl (112)
    M dist/tools/renode/README.md (48)
    M dist/tools/renode/run-renode.sh (68)

-- Patch Links --

https://github.com/RIOT-OS/RIOT/pull/15459.patch
https://github.com/RIOT-OS/RIOT/pull/15459.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/15459
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20201117/aa343e27/attachment.htm>


More information about the notifications mailing list