Re: [PATCH rtems-tools] tester/rtems: add renode implementation

2023-06-26 Thread Muhammad Sulthan Mazaya
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,  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
> >
> > Alternatively, you can access Renode's GitHub releases:
> > 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
> >
> > 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).
> > 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 000..95850c5
> > --- /dev/null
> > +++ b/tester/rtems/testing/bsps/kendrytek210-renode.ini
> > @@ -0,0 +1,38 @@
> > +#
> > +# RTEMS Tools Project (http://www.rtems.org/)
> > +# Copyright 2010-2014 Chris Johns (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 000..49e84a5
> > --- /dev/null
> > +++ b/tester/rtems/testing/renode.cfg
> > @@ -0,0 +1,64 @@
> > +#
> > +# RTEMS Tools Project (http://www.rtems.org/)
> > +# Copyright 2010-2014 Chris Johns (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 

Re: [PATCH] cpukit/flash: Correct erase ioctl address

2023-06-26 Thread Chris Johns
Pushed and thanks

Chris

On 26/6/2023 3:29 pm, aaron.nyh...@unfoldedeffective.com wrote:
> From: Aaron Nyholm 
> 
> Previously, the erase ioctl call would ignore flash regions and erase at
> the absolute address passed in. This adds a check for if the region is
> set and adds the region offset accordingly.
> ---
>  cpukit/dev/flash/flashdev.c | 43 ++---
>  1 file changed, 35 insertions(+), 8 deletions(-)
> 
> diff --git a/cpukit/dev/flash/flashdev.c b/cpukit/dev/flash/flashdev.c
> index 4b7a0560ff..be85593201 100644
> --- a/cpukit/dev/flash/flashdev.c
> +++ b/cpukit/dev/flash/flashdev.c
> @@ -135,6 +135,13 @@ static int rtems_flashdev_get_addr(
>off_t *addr
>  );
>  
> +static int rtems_flashdev_get_abs_addr(
> +  rtems_flashdev *flash,
> +  rtems_libio_t *iop,
> +  size_t count,
> +  off_t *addr
> +);
> +
>  static int rtems_flashdev_update_and_return(
>rtems_libio_t *iop,
>int status,
> @@ -565,6 +572,28 @@ static int rtems_flashdev_get_addr(
>return 0;
>  }
>  
> +static int rtems_flashdev_get_abs_addr(
> +  rtems_flashdev *flash,
> +  rtems_libio_t *iop,
> +  size_t count,
> +  off_t *addr
> +)
> +{
> +  off_t new_offset;
> +
> +  /* Check address is in valid region */
> +  new_offset = *addr + count;
> +
> +  if (rtems_flashdev_check_offset_region(flash, iop, new_offset)) {
> +return -1;
> +  }
> +
> +  /* Get address for operation */
> +  if ( rtems_flashdev_is_region_defined( iop ) ) {
> +*addr = ( *addr + rtems_flashdev_get_region_offset( flash, iop ) );
> +  }
> +  return 0;
> +}
>  static int rtems_flashdev_update_and_return(
>rtems_libio_t *iop,
>int status,
> @@ -588,7 +617,7 @@ static int rtems_flashdev_ioctl_erase(
>  )
>  {
>rtems_flashdev_region *erase_args_1;
> -  off_t check_offset;
> +  off_t new_offset;
>int status;
>  
>if ( flash->erase == NULL ) {
> @@ -597,16 +626,14 @@ static int rtems_flashdev_ioctl_erase(
>  
>erase_args_1 = (rtems_flashdev_region *) arg;
>/* Check erasing valid region */
> -  check_offset = erase_args_1->offset + erase_args_1->size;
> -  if ( rtems_flashdev_is_region_defined( iop ) && (
> - rtems_flashdev_check_offset_region(flash, iop, check_offset) ||
> - ( erase_args_1->offset <
> -   rtems_flashdev_get_region_offset( flash, iop ) ) ) ) {
> -rtems_set_errno_and_return_minus_one( EINVAL );
> +  new_offset = erase_args_1->offset;
> +  status = rtems_flashdev_get_abs_addr(flash, iop, erase_args_1->size, 
> _offset);
> +  if ( status < 0 ) {
> +return status;
>}
>  
>/* Erase flash */
> -  status = ( *flash->erase )( flash, erase_args_1->offset, 
> erase_args_1->size );
> +  status = ( *flash->erase )( flash, new_offset, erase_args_1->size );
>return status;
>  }
>  
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH rtems-source-builder] qemu-5-1: Update to the latest CGEM patch

2023-06-26 Thread Chris Johns
On 27/6/2023 5:02 am, Kinsey Moore wrote:
> The original version of this patch had a conflict between the two
> interrupts where the program-viewable interrupt state could be
> deasserted when it should have been asserted. The new version of this
> patch resolves that conflict.
> ---
>  source-builder/config/qemu-5-1.cfg | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/source-builder/config/qemu-5-1.cfg 
> b/source-builder/config/qemu-5-1.cfg
> index 4b2951d..409ed89 100644
> --- a/source-builder/config/qemu-5-1.cfg
> +++ b/source-builder/config/qemu-5-1.cfg
> @@ -8,6 +8,6 @@
>  
>  %include %{_configdir}/qemu-common-2.cfg
>  
> -%patch add qemu --rsb-file=cgem_zynqmp_versal.patch -p1 
> https://devel.rtems.org/raw-attachment/ticket/4919/cgem_zynqmp_versal.patch
> +%patch add qemu --rsb-file=cgem_zynqmp_versal.patch -p1 
> https://devel.rtems.org/raw-attachment/ticket/4919/0001-hw-arm-xlnx-Connect-secondary-CGEM-IRQs.patch
>  %hash sha512 cgem_zynqmp_versal.patch \
> -  
> 2a4a894acefd00a76f48b6d6339696c8c53ece8e044687cb86c268840eac226d251fe89af933db4c20f5f07a3faff92c7c28c4c82b0617e4b200fd0895ac6158
> +  
> 5c80060f6f506b8b9a10a8a3dd3621d4725425beebf598d95e5d7db77564fbcba5786d8eeccd7182a99e03ace842af860ab70c468271a95e249e245aa4b81945

Please use a base64 SHA512 hash. The source-builder/sha512-base64 command will
generate the hash for you.

A base64 hash version is ok to push.

Thanks
Chris
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH rtems-tools] tester/rtems: add renode implementation

2023-06-26 Thread Chris Johns
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
> 
> Alternatively, you can access Renode's GitHub releases:
> 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
> 
> 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).
> 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 000..95850c5
> --- /dev/null
> +++ b/tester/rtems/testing/bsps/kendrytek210-renode.ini
> @@ -0,0 +1,38 @@
> +#
> +# RTEMS Tools Project (http://www.rtems.org/)
> +# Copyright 2010-2014 Chris Johns (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 000..49e84a5
> --- /dev/null
> +++ b/tester/rtems/testing/renode.cfg
> @@ -0,0 +1,64 @@
> +#
> +# RTEMS Tools Project (http://www.rtems.org/)
> +# Copyright 2010-2014 Chris Johns (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, 

[PATCH rtems-source-builder] qemu-5-1: Update to the latest CGEM patch

2023-06-26 Thread Kinsey Moore
The original version of this patch had a conflict between the two
interrupts where the program-viewable interrupt state could be
deasserted when it should have been asserted. The new version of this
patch resolves that conflict.
---
 source-builder/config/qemu-5-1.cfg | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/source-builder/config/qemu-5-1.cfg 
b/source-builder/config/qemu-5-1.cfg
index 4b2951d..409ed89 100644
--- a/source-builder/config/qemu-5-1.cfg
+++ b/source-builder/config/qemu-5-1.cfg
@@ -8,6 +8,6 @@
 
 %include %{_configdir}/qemu-common-2.cfg
 
-%patch add qemu --rsb-file=cgem_zynqmp_versal.patch -p1 
https://devel.rtems.org/raw-attachment/ticket/4919/cgem_zynqmp_versal.patch
+%patch add qemu --rsb-file=cgem_zynqmp_versal.patch -p1 
https://devel.rtems.org/raw-attachment/ticket/4919/0001-hw-arm-xlnx-Connect-secondary-CGEM-IRQs.patch
 %hash sha512 cgem_zynqmp_versal.patch \
-  
2a4a894acefd00a76f48b6d6339696c8c53ece8e044687cb86c268840eac226d251fe89af933db4c20f5f07a3faff92c7c28c4c82b0617e4b200fd0895ac6158
+  
5c80060f6f506b8b9a10a8a3dd3621d4725425beebf598d95e5d7db77564fbcba5786d8eeccd7182a99e03ace842af860ab70c468271a95e249e245aa4b81945
-- 
2.30.2

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH] cpukit/flash: Correct erase ioctl address

2023-06-26 Thread aaron . nyholm
From: Aaron Nyholm 

Previously, the erase ioctl call would ignore flash regions and erase at
the absolute address passed in. This adds a check for if the region is
set and adds the region offset accordingly.
---
 cpukit/dev/flash/flashdev.c | 43 ++---
 1 file changed, 35 insertions(+), 8 deletions(-)

diff --git a/cpukit/dev/flash/flashdev.c b/cpukit/dev/flash/flashdev.c
index 4b7a0560ff..be85593201 100644
--- a/cpukit/dev/flash/flashdev.c
+++ b/cpukit/dev/flash/flashdev.c
@@ -135,6 +135,13 @@ static int rtems_flashdev_get_addr(
   off_t *addr
 );
 
+static int rtems_flashdev_get_abs_addr(
+  rtems_flashdev *flash,
+  rtems_libio_t *iop,
+  size_t count,
+  off_t *addr
+);
+
 static int rtems_flashdev_update_and_return(
   rtems_libio_t *iop,
   int status,
@@ -565,6 +572,28 @@ static int rtems_flashdev_get_addr(
   return 0;
 }
 
+static int rtems_flashdev_get_abs_addr(
+  rtems_flashdev *flash,
+  rtems_libio_t *iop,
+  size_t count,
+  off_t *addr
+)
+{
+  off_t new_offset;
+
+  /* Check address is in valid region */
+  new_offset = *addr + count;
+
+  if (rtems_flashdev_check_offset_region(flash, iop, new_offset)) {
+return -1;
+  }
+
+  /* Get address for operation */
+  if ( rtems_flashdev_is_region_defined( iop ) ) {
+*addr = ( *addr + rtems_flashdev_get_region_offset( flash, iop ) );
+  }
+  return 0;
+}
 static int rtems_flashdev_update_and_return(
   rtems_libio_t *iop,
   int status,
@@ -588,7 +617,7 @@ static int rtems_flashdev_ioctl_erase(
 )
 {
   rtems_flashdev_region *erase_args_1;
-  off_t check_offset;
+  off_t new_offset;
   int status;
 
   if ( flash->erase == NULL ) {
@@ -597,16 +626,14 @@ static int rtems_flashdev_ioctl_erase(
 
   erase_args_1 = (rtems_flashdev_region *) arg;
   /* Check erasing valid region */
-  check_offset = erase_args_1->offset + erase_args_1->size;
-  if ( rtems_flashdev_is_region_defined( iop ) && (
- rtems_flashdev_check_offset_region(flash, iop, check_offset) ||
- ( erase_args_1->offset <
-   rtems_flashdev_get_region_offset( flash, iop ) ) ) ) {
-rtems_set_errno_and_return_minus_one( EINVAL );
+  new_offset = erase_args_1->offset;
+  status = rtems_flashdev_get_abs_addr(flash, iop, erase_args_1->size, 
_offset);
+  if ( status < 0 ) {
+return status;
   }
 
   /* Erase flash */
-  status = ( *flash->erase )( flash, erase_args_1->offset, erase_args_1->size 
);
+  status = ( *flash->erase )( flash, new_offset, erase_args_1->size );
   return status;
 }
 
-- 
2.25.1

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH rtems-tools] tester/rtems: add renode implementation

2023-06-26 Thread Muhammad Sulthan Mazaya
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

Alternatively, you can access Renode's GitHub releases:
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

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).
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 000..95850c5
--- /dev/null
+++ b/tester/rtems/testing/bsps/kendrytek210-renode.ini
@@ -0,0 +1,38 @@
+#
+# RTEMS Tools Project (http://www.rtems.org/)
+# Copyright 2010-2014 Chris Johns (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 000..49e84a5
--- /dev/null
+++ b/tester/rtems/testing/renode.cfg
@@ -0,0 +1,64 @@
+#
+# RTEMS Tools Project (http://www.rtems.org/)
+# Copyright 2010-2014 Chris Johns (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 

[PATCH rtems-tools] tester/rtems/testing: add renode implementation

2023-06-26 Thread Muhammad Sulthan Mazaya
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

Alternatively, you can access Renode's GitHub releases:
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

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).
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 000..95850c5
--- /dev/null
+++ b/tester/rtems/testing/bsps/kendrytek210-renode.ini
@@ -0,0 +1,38 @@
+#
+# RTEMS Tools Project (http://www.rtems.org/)
+# Copyright 2010-2014 Chris Johns (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 000..49e84a5
--- /dev/null
+++ b/tester/rtems/testing/renode.cfg
@@ -0,0 +1,64 @@
+#
+# RTEMS Tools Project (http://www.rtems.org/)
+# Copyright 2010-2014 Chris Johns (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 

[PATCH rtems-tools] tester/rtems: add renode implementation

2023-06-26 Thread Muhammad Sulthan Mazaya
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

Alternatively, you can access Renode's GitHub releases:
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

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).
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 000..95850c5
--- /dev/null
+++ b/tester/rtems/testing/bsps/kendrytek210-renode.ini
@@ -0,0 +1,38 @@
+#
+# RTEMS Tools Project (http://www.rtems.org/)
+# Copyright 2010-2014 Chris Johns (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 000..49e84a5
--- /dev/null
+++ b/tester/rtems/testing/renode.cfg
@@ -0,0 +1,64 @@
+#
+# RTEMS Tools Project (http://www.rtems.org/)
+# Copyright 2010-2014 Chris Johns (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