The patch has 3 whitespace errors. I have fixed them, and I will push this soon.
On Tue, Jun 27, 2023 at 8:42 PM Muhammad Sulthan Mazaya <msulthanmaz...@gmail.com> wrote: > > Hi Joel and Chris, > > Yes, and I will be working on the rsb patch for renode installation next. > > Regards, > Mazaya > > On Wed, Jun 28, 2023 at 12:34 PM Chris Johns <chr...@rtems.org> wrote: >> >> I am as well >> >> Chris >> >> On 28/6/2023 12:25 am, Joel Sherrill wrote: >> > I'm OK with this patch. >> > >> > Is it assuming that you installed renode on your own -- not using the RSB? >> > >> > --joel >> > >> > On Mon, Jun 26, 2023 at 5:37 PM Muhammad Sulthan Mazaya >> > <msulthanmaz...@gmail.com <mailto:msulthanmaz...@gmail.com>> wrote: >> > >> > Hi Chris, >> > >> > Yes they are the same. I thought there was an email error, so I >> > re-send it >> > twice. >> > >> > On Tue, 27 Jun 2023, 07:46 Chris Johns, <chr...@rtems.org >> > <mailto:chr...@rtems.org>> wrote: >> > >> > Hi Muhammad, >> > >> > The patch looks good, thanks. >> > >> > Are the 3 posted patches the same version? >> > >> > Chris >> > >> > On 26/6/2023 2:17 pm, Muhammad Sulthan Mazaya wrote: >> > > Patch for the implementation of renode on rtems-test. Currently, >> > renode >> > > installation has not been implemented in rsb. Thus, for testing, >> > you can >> > > install renode by referring to the documentation link below. >> > > >> > > Downloads for debian, fedora, arch, macOS, and windows: >> > > https://renode.io/#downloads <https://renode.io/#downloads> >> > > >> > > Alternatively, you can access Renode's GitHub releases: >> > > https://github.com/renode/renode/releases/tag/v1.13.3 >> > <https://github.com/renode/renode/releases/tag/v1.13.3> >> > > >> > > You can also build it from source: >> > > >> > >> > https://renode.readthedocs.io/en/latest/advanced/building_from_sources.html#building-from-source >> > >> > <https://renode.readthedocs.io/en/latest/advanced/building_from_sources.html#building-from-source> >> > > >> > > This patch consists of changes to test kendrytek210 using >> > renode. To >> > > test it, you can build the kendrytek210 test suite as instructed >> > in the >> > > rtems-docs (Alan's patch here: >> > https://lists.rtems.org/pipermail/devel/2023-April/074838.html >> > <https://lists.rtems.org/pipermail/devel/2023-April/074838.html>). >> > > Then, use the following command to run the test suite. >> > > >> > > rtems-test --rtems-bsp=kendrytek210-renode [test-suite-path] >> > > >> > > --- >> > > .../testing/bsps/kendrytek210-renode.ini | 38 +++++++++++ >> > > tester/rtems/testing/renode.cfg | 64 >> > +++++++++++++++++++ >> > > .../testing/renode_scripts/kendrytek210.resc | 53 >> > +++++++++++++++ >> > > 3 files changed, 155 insertions(+) >> > > create mode 100644 >> > tester/rtems/testing/bsps/kendrytek210-renode.ini >> > > create mode 100644 tester/rtems/testing/renode.cfg >> > > create mode 100644 >> > tester/rtems/testing/renode_scripts/kendrytek210.resc >> > > >> > > diff --git a/tester/rtems/testing/bsps/kendrytek210-renode.ini >> > b/tester/rtems/testing/bsps/kendrytek210-renode.ini >> > > new file mode 100644 >> > > index 0000000..95850c5 >> > > --- /dev/null >> > > +++ b/tester/rtems/testing/bsps/kendrytek210-renode.ini >> > > @@ -0,0 +1,38 @@ >> > > +# >> > > +# RTEMS Tools Project (http://www.rtems.org/ >> > <http://www.rtems.org/>) >> > > +# Copyright 2010-2014 Chris Johns (chr...@rtems.org >> > <mailto:chr...@rtems.org>) >> > > +# All rights reserved. >> > > +# >> > > +# This file is part of the RTEMS Tools package in 'rtems-tools'. >> > > +# >> > > +# Redistribution and use in source and binary forms, with or >> > without >> > > +# modification, are permitted provided that the following >> > conditions >> > are met: >> > > +# >> > > +# 1. Redistributions of source code must retain the above >> > copyright >> > notice, >> > > +# this list of conditions and the following disclaimer. >> > > +# >> > > +# 2. Redistributions in binary form must reproduce the above >> > copyright notice, >> > > +# this list of conditions and the following disclaimer in the >> > documentation >> > > +# and/or other materials provided with the distribution. >> > > +# >> > > +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND >> > CONTRIBUTORS >> > "AS IS" >> > > +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT >> > LIMITED >> > TO, THE >> > > +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A >> > PARTICULAR >> > PURPOSE >> > > +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR >> > CONTRIBUTORS BE >> > > +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, >> > EXEMPLARY, OR >> > > +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, >> > PROCUREMENT OF >> > > +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; >> > OR >> > BUSINESS >> > > +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, >> > WHETHER IN >> > > +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR >> > OTHERWISE) >> > > +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF >> > ADVISED >> > OF THE >> > > +# POSSIBILITY OF SUCH DAMAGE. >> > > +# >> > > + >> > > +# >> > > +# The Kendrytek210 Renode BSP >> > > +# >> > > +[kendrytek210-renode] >> > > +bsp = kendrytek210-renode >> > > +arch = riscv >> > > +tester = %{_rtscripts}/renode.cfg >> > > +bsp_resc_script = %{_rtscripts}/renode_scripts/kendrytek210.resc >> > > diff --git a/tester/rtems/testing/renode.cfg >> > b/tester/rtems/testing/renode.cfg >> > > new file mode 100644 >> > > index 0000000..49e84a5 >> > > --- /dev/null >> > > +++ b/tester/rtems/testing/renode.cfg >> > > @@ -0,0 +1,64 @@ >> > > +# >> > > +# RTEMS Tools Project (http://www.rtems.org/ >> > <http://www.rtems.org/>) >> > > +# Copyright 2010-2014 Chris Johns (chr...@rtems.org >> > <mailto:chr...@rtems.org>) >> > > +# All rights reserved. >> > > +# >> > > +# This file is part of the RTEMS Tools package in 'rtems-tools'. >> > > +# >> > > +# Redistribution and use in source and binary forms, with or >> > without >> > > +# modification, are permitted provided that the following >> > conditions >> > are met: >> > > +# >> > > +# 1. Redistributions of source code must retain the above >> > copyright >> > notice, >> > > +# this list of conditions and the following disclaimer. >> > > +# >> > > +# 2. Redistributions in binary form must reproduce the above >> > copyright notice, >> > > +# this list of conditions and the following disclaimer in the >> > documentation >> > > +# and/or other materials provided with the distribution. >> > > +# >> > > +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND >> > CONTRIBUTORS >> > "AS IS" >> > > +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT >> > LIMITED >> > TO, THE >> > > +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A >> > PARTICULAR >> > PURPOSE >> > > +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR >> > CONTRIBUTORS BE >> > > +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, >> > EXEMPLARY, OR >> > > +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, >> > PROCUREMENT OF >> > > +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; >> > OR >> > BUSINESS >> > > +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, >> > WHETHER IN >> > > +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR >> > OTHERWISE) >> > > +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF >> > ADVISED >> > OF THE >> > > +# POSSIBILITY OF SUCH DAMAGE. >> > > +# >> > > + >> > > +# >> > > +# Renode >> > > +# >> > > +# Use a renode command to run the executable in the renode >> > simulator. >> > > +# >> > > + >> > > +%include %{_configdir}/base.cfg >> > > +%include %{_configdir}/checks.cfg >> > > + >> > > +# >> > > +# Console. >> > > +# >> > > +%define console_telnet >> > > +%include %{_configdir}/console.cfg >> > > + >> > > +# >> > > +# RTEMS version >> > > +# >> > > +%include %{_rtdir}/rtems/version.cfg >> > > + >> > > + >> > > +# >> > > +# Renode executable >> > > +# >> > > +%define renode_cmd renode --hide-monitor >> > > +%define binary_opts -e $bin?=@%{test_executable} >> > > +%define start_opts -e "s @%{bsp_resc_script}" >> > > +%define trim_command sed 's/.*\[output\] //' >> > > + >> > > + >> > > +# >> > > +# Executable >> > > +# >> > > +%execute %{renode_cmd} %{binary_opts} %{start_opts} | >> > %{trim_command} >> > > diff --git >> > a/tester/rtems/testing/renode_scripts/kendrytek210.resc >> > b/tester/rtems/testing/renode_scripts/kendrytek210.resc >> > > new file mode 100644 >> > > index 0000000..fe13aa8 >> > > --- /dev/null >> > > +++ b/tester/rtems/testing/renode_scripts/kendrytek210.resc >> > > @@ -0,0 +1,53 @@ >> > > +using sysbus >> > > +using monitor >> > > + >> > > +mach create "K210" >> > > + >> > > +machine LoadPlatformDescription >> > @platforms/cpus/kendryte_k210.repl >> > > + >> > > +path add @/ >> > > + >> > > +showAnalyzer "uartAnalyzer" uart >> > Antmicro.Renode.Analyzers.LoggingUartAnalyzer >> > > +uartAnalyzer TimestampFormat None >> > > + >> > > +set report_repeating_line """ >> > > +from Antmicro.Renode.Logging import ConsoleBackend >> > > +ConsoleBackend.Instance.ReportRepeatingLines = True >> > > +""" >> > > + >> > > +set add_hook """ >> > > +def match(line): >> > > + ok_to_kill_lines = [ >> > > + '*** TEST STATE: USER_INPUT', >> > > + '*** TEST STATE: BENCHMARK', >> > > + '*** END OF TEST ', >> > > + '*** FATAL ***' >> > > + ] >> > > + return any(l in line for l in ok_to_kill_lines) >> > > + >> > > +def hook(line): >> > > + monitor.Parse("q") >> > > + >> > > >> > >> > +Antmicro.Renode.Hooks.UartHooksExtensions.AddLineHook(monitor.Machine["sysbus.uart"], >> > match, hook) >> > > +""" >> > > + >> > > +python $add_hook >> > > + >> > > +python $report_repeating_line >> > > + >> > > +sysbus Tag <0x50440000 0x10000> "SYSCTL" >> > > +sysbus Tag <0x50440018 0x4> "pll_lock" 0xFFFFFFFF >> > > +sysbus Tag <0x5044000C 0x4> "pll1" >> > > +sysbus Tag <0x50440008 0x4> "pll0" >> > > +sysbus Tag <0x50440020 0x4> "clk_sel0" >> > > +sysbus Tag <0x50440028 0x4> "clk_en_cent" >> > > +sysbus Tag <0x5044002c 0x4> "clk_en_peri" >> > > + >> > > +# enable uart tx >> > > +uart WriteDoubleWord 0x8 0x1 >> > > + >> > > +macro reset >> > > +""" >> > > + sysbus LoadELF $bin >> > > +""" >> > > +runMacro $reset >> > _______________________________________________ >> > devel mailing list >> > devel@rtems.org <mailto:devel@rtems.org> >> > http://lists.rtems.org/mailman/listinfo/devel >> > <http://lists.rtems.org/mailman/listinfo/devel> >> > >> > _______________________________________________ >> > devel mailing list >> > devel@rtems.org <mailto:devel@rtems.org> >> > http://lists.rtems.org/mailman/listinfo/devel >> > <http://lists.rtems.org/mailman/listinfo/devel> >> > >> _______________________________________________ >> devel mailing list >> devel@rtems.org >> http://lists.rtems.org/mailman/listinfo/devel > > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel