Re: style patches - discuss

2023-12-06 Thread Sebastian Huber

Hello,

it seems we still have no tool and configuration to get satisfying 
results when applied to existing RTEMS source files. May I suggest a 
more pragmatic approach which focuses on new files. Would it be an 
option to simply use automatic formatting for all new files specifically 
written for RTEMS? For them we could just pick up a standard 
clang-format style:


https://clang.llvm.org/docs/ClangFormatStyleOptions.html#basedonstyle

I would pick up the Chromium style.

--
embedded brains GmbH & Co. KG
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Re: [PATCH 0/8] Add basic support for TMS570LC4357

2023-12-06 Thread Pavel Pisa
Hello Sebastian

On Wednesday 06 of December 2023 17:08:39 Sebastian Huber wrote:
> sorry for the delay, but I was busy with all sorts of things.  I checked
> in the first round of patches. I work on cleaning up a patch set with
> support for the TMS570LC4357.
>
> For debugging, we use the Lauterbach PowerDebug System.

thanks for information and pushing the project forward.
I hope I find some day some time to test RTEMS
on TMDX570LC43HFK which I have long time there...
I hope that it would work with OpenOCD, it should
be functional without Flashing.

I am happy that this work continues and I have call with
Premek today to check that he has received your other
e-mail. He is happy too that his thesis work has some use
and promised to reply to your by another e-mail in two, three
days to have his personal reply recorded. Generally we
agree with change of our RTEMS contribution to BSD-2-Clause.
Keeping reference to the university and authors listed
is preferred.

By the way, as I have announced earlies, Michal Lenc's
thesis on RTEMS CAN/CAN FD support progresses

  https://gitlab.fel.cvut.cz/otrees/rtems/rtems-canfd/-/tree/master/lib/candrv

This week, he has implemented rough initial version of connection
of rtems_filesystem_file_handlers_r (can-bus.c) to FIFOs system
ported from LinCAN. Not tested yet... This work has plan
to target Zynq system but if there is some project in which
we can participate by targetting our CAN work more
to TMS570LC4357, we would consider to rearrange priorities.

I have bought two BeagleV-Fire boards to my company as well

  https://www.beagleboard.org/boards/beaglev-fire

and it could be nice target where we can test RTEMS for hard
realtime in addition to Linux and NuttX. Again if there
is for example some ESA or other project which could
use our work, we can change mode from tinkering and long
term investment into targeting concrete goals and terms.
We plan to test our PXMC motion control HDL and SW on this
platform to have prepared continuation to our previous
LX_RoCoN Cortex-M based systems already used at ESA.

There is some possibility that I will teach computer
architectures in the space oriented course so replacement
of Raspberry Pi by BeagleV-Fire and RTESM could be
great demonstrator on ExoMy or other platform

  https://github.com/esa-prl/ExoMy

Best wishes,

Pavel
-- 
Pavel Pisa
phone:  +420 603531357
e-mail: p...@cmp.felk.cvut.cz
Department of Control Engineering FEE CVUT
Karlovo namesti 13, 121 35, Prague 2
university: http://control.fel.cvut.cz/
personal:   http://cmp.felk.cvut.cz/~pisa
social: https://social.kernel.org/ppisa
projects:   https://www.openhub.net/accounts/ppisa
CAN related:http://canbus.pages.fel.cvut.cz/
RISC-V education: https://comparch.edu.cvut.cz/
Open Technologies Research Education and Exchange Services
https://gitlab.fel.cvut.cz/otrees/org/-/wikis/home
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH v2 4/4] sb: Set the uid and gid on POSIX systems

2023-12-06 Thread Gedare Bloom
These 4 look good to me.

On Wed, Dec 6, 2023 at 3:14 PM  wrote:
>
> From: Chris Johns 
>
> This improves performance because it avoids an exec each time
> the _uid macro is referenced and that can be a number of times
> for each config parsed.
> ---
>  source-builder/sb/options.py | 6 +-
>  1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/source-builder/sb/options.py b/source-builder/sb/options.py
> index d554097..ac5982b 100644
> --- a/source-builder/sb/options.py
> +++ b/source-builder/sb/options.py
> @@ -46,7 +46,7 @@ basepath = 'sb'
>  #
>  # Save the host and POSIX state.
>  #
> -host_windows = False
> +host_windows = os.name == 'nt'
>  host_posix = True
>
>  class command_line:
> @@ -103,6 +103,10 @@ class command_line:
>  self.defaults[self._long_opts[lo][0]] = ('none',
>   'none',
>   
> self._long_opts[lo][3])
> +# Set the _uid field, performance improvement on Unix
> +if not host_windows:
> +self.defaults['_uid'] = str(os.getuid())
> +self.defaults['_did'] = str(os.getdid())
>
>  def __str__(self):
>  def _dict(dd):
> --
> 2.37.1
>
> ___
> 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

[PATCH v2 2/4] hash: Fix missing hashes after errors if missing

2023-12-06 Thread chrisj
From: Chris Johns 

---
 bare/config/devel/binutils-2.22-1.cfg |  2 +
 bare/config/devel/binutils-2.24-1.cfg |  3 +
 bare/config/devel/gcc-4.6-newlib-1.20-1.cfg   | 13 
 .../config/devel/gcc-4.9.1-newlib-2.1.0-1.cfg | 11 +++
 bare/config/devel/gdb-7.7-1.cfg   |  2 +
 rtems/config/graphics/nxlib-0.47-dev-1.cfg|  4 +-
 rtems/config/net-mgmt/net-snmp-5.7.2.1-1.cfg  |  2 +-
 rtems/config/net/net-services-1.cfg   |  2 +-
 rtems/config/tools/rtems-libbsd-6.cfg |  2 +-
 rtems/config/tools/rtems-net-legacy-6.cfg |  2 +-
 .../tools/rtems-xilinx-binutils-2.36.cfg  | 67 +---
 .../tools/rtems-xilinx-gcc-10-newlib-head.cfg | 76 ---
 source-builder/config/gdb-7.5-1.cfg   |  3 +
 source-builder/config/nxlib-1.cfg |  4 +-
 source-builder/config/swig-4-1.cfg|  3 +-
 15 files changed, 134 insertions(+), 62 deletions(-)

diff --git a/bare/config/devel/binutils-2.22-1.cfg 
b/bare/config/devel/binutils-2.22-1.cfg
index e585483..1afa6b1 100644
--- a/bare/config/devel/binutils-2.22-1.cfg
+++ b/bare/config/devel/binutils-2.22-1.cfg
@@ -10,6 +10,8 @@
 %include %{_configdir}/base.cfg
 
 %define binutils_version 2.22
+%hash sha512 binutils-%{binutils_version}.tar.bz2 \
+   
/+jvJj75kYPozII/6Eh/99D3v5qO/ShTtfRjasoAI4UNE95OrH13pfaUE9ilDm+VuxRWm+U9+GwLzjgDRSWrdA==
 
 #
 # The binutils build instructions. We use 2.xx Release 1.
diff --git a/bare/config/devel/binutils-2.24-1.cfg 
b/bare/config/devel/binutils-2.24-1.cfg
index 652c274..a714ff1 100644
--- a/bare/config/devel/binutils-2.24-1.cfg
+++ b/bare/config/devel/binutils-2.24-1.cfg
@@ -9,6 +9,9 @@
 
 %define binutils_version 2.24
 
+%hash sha512 binutils-%{binutils_version}.tar.bz2 \
+   
Xsla1H1JsSxFWKjbDKIQnT7hlV43dgV/MzDEUG+PTRz15QX7+KFrmEA6D83qr5hv4KIr5kViR9vazmPOH3drEg==
+
 #
 # Enable deterministic archives by default. This will be the default
 # there all tools using this binutils will create deterministic
diff --git a/bare/config/devel/gcc-4.6-newlib-1.20-1.cfg 
b/bare/config/devel/gcc-4.6-newlib-1.20-1.cfg
index 659752f..bb3f2e3 100644
--- a/bare/config/devel/gcc-4.6-newlib-1.20-1.cfg
+++ b/bare/config/devel/gcc-4.6-newlib-1.20-1.cfg
@@ -19,6 +19,19 @@
 %define gmp_url  https://ftp.gnu.org/gnu/gmp
 %define mpfr_url https://ftp.gnu.org/gnu/mpfr
 
+%hash sha512 gcc-core-%{gcc_version}.tar.bz2 \
+   
ucVpu3E/OrCp1PbomMfQGRRUb7vmH021FRU2/+N0SQrm8VTfojgatgcrKJC3YVT769+S8GDoVAT1SZfwFpcvTA==
+%hash sha512 gcc-g--%{gcc_version}.tar.gz \
+   
qVHKvglD9l+ziCNrHuemi3ebq0T4aTQIkzRseYbiVEkA0LZeTyUHxpdlXzaxajB3szQG1Zh8VtMGhYZda9tOGA==
+%hash sha512 newlib-%{newlib_version}.tar.gz \
+   
Kr8dMJgORgxNb/5NFoLjhAPQVgSOAGdTYiVnMeV/5nWdAehby6hCWNIRlBkm4TvzxjL/OCSTGoRMiyWW55VFHw==
+%hash sha512 mpfr-%{mpfr_version}.tar.bz2 \
+   
u6x9DWP9O0zYleJHxEitzn9MK2tm7P4mrxOAGOD5aZH6jL2MvpT5JHYaoaxnbiWa8SKGAN/AhUMU6HXnc5/SeQ==
+%hash sha512 mpc-%{mpc_version}.tar.gz \
+   
3KrDiXrfFBHhGZ4pXojXQ4r8YA9BJWXDtFCwECuDdR6xYPhbdSKJEZX/Cgop/M7dB9wBGpUJaaCXnE49TvweEA==
+%hash sha512 gmp-%{gmp_version}.tar.bz2 \
+   
ZLqIpKZP77FurpxkTqgRlAEeoLQmZKWvawFOfaPQ8JYF3uUYuaNhsGUQMRzf1JaraNCdo9hdZoC9rD92XrZ/YQ==
+
 #
 # Project custom message
 #
diff --git a/bare/config/devel/gcc-4.9.1-newlib-2.1.0-1.cfg 
b/bare/config/devel/gcc-4.9.1-newlib-2.1.0-1.cfg
index 495641e..d739807 100644
--- a/bare/config/devel/gcc-4.9.1-newlib-2.1.0-1.cfg
+++ b/bare/config/devel/gcc-4.9.1-newlib-2.1.0-1.cfg
@@ -19,6 +19,17 @@
 %define with_iconv 1
 %endif
 
+%hash sha512 gcc-%{gcc_version}.tar.bz2 \
+   
hZgQakt8A7tNbin6G/qe5rY5DR8byobBzNJ67YMK4dEm2qUMQEEBbL+nYJDdZsUfHOBpWLjM1sO+UerodRJVkw==
+%hash sha512 newlib-%{newlib_version}.tar.gz \
+   
Z3CGT5MHq7JAGk5I8oaEXTpK/DCyrJh9pLlkpUhcw4I7MtBqCr9hUo6TxK2KOgqjzB7NOwM4UOayvebZu8mlRw==
+%hash sha512 mpfr-%{mpfr_version}.tar.bz2 \
+   
u6x9DWP9O0zYleJHxEitzn9MK2tm7P4mrxOAGOD5aZH6jL2MvpT5JHYaoaxnbiWa8SKGAN/AhUMU6HXnc5/SeQ==
+%hash sha512 mpc-%{mpc_version}.tar.gz \
+   
3KrDiXrfFBHhGZ4pXojXQ4r8YA9BJWXDtFCwECuDdR6xYPhbdSKJEZX/Cgop/M7dB9wBGpUJaaCXnE49TvweEA==
+%hash sha512 gmp-%{gmp_version}.tar.bz2 \
+   
ZLqIpKZP77FurpxkTqgRlAEeoLQmZKWvawFOfaPQ8JYF3uUYuaNhsGUQMRzf1JaraNCdo9hdZoC9rD92XrZ/YQ==
+
 #
 # The gcc/newlib build instructions. We use 4.9 Release 1.
 #
diff --git a/bare/config/devel/gdb-7.7-1.cfg b/bare/config/devel/gdb-7.7-1.cfg
index 1afce5a..e61fff2 100644
--- a/bare/config/devel/gdb-7.7-1.cfg
+++ b/bare/config/devel/gdb-7.7-1.cfg
@@ -6,6 +6,8 @@
 %include %{_configdir}/base.cfg
 
 %define gdb_version 7.7
+%hash sha512 gdb-%{gdb_version}.tar.gz \
+   
eNYj6X8jJUakcohURCIReUO4YtGZwR4E2E/GF210w27hqGLVJ07qKZbm6d6gnWtp5/DGxkrMS3oHuXSt0eiBPw==
 
 #
 # The gdb build instructions. We use 7.xx Release 1.
diff --git a/rtems/config/graphics/nxlib-0.47-dev-1.cfg 
b/rtems/config/graphics/nxlib-0.47-dev-1.cfg
index deed54e..aec6806 100644
--- a/rtems/config/graphics/nxlib-0.47-dev-1.cfg
+++ 

[PATCH v2 3/4] sb: Allow _ in downloaded file names

2023-12-06 Thread chrisj
From: Chris Johns 

---
 source-builder/sb/download.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/source-builder/sb/download.py b/source-builder/sb/download.py
index 3f26644..6e6f9f2 100644
--- a/source-builder/sb/download.py
+++ b/source-builder/sb/download.py
@@ -132,7 +132,7 @@ def _hash_check(file_, absfile, macros, remove = True):
 if hasher is not None:
 del hasher
 else:
-raise error.general('%s: no hash found in released RSB' % (file_))
+raise error.general('%s: no hash found' % (file_))
 return not failed
 
 def _local_path(source, pathkey, config):
@@ -189,7 +189,7 @@ def _http_parser(source, pathkey, config, opts):
 #
 # Wipe out everything special in the file name.
 #
-source['file'] = re.sub(r'[^a-zA-Z0-9.\-]+', '-', source['file'])
+source['file'] = re.sub(r'[^a-zA-Z0-9.\-_]+', '-', source['file'])
 max_file_len = 127
 if len(source['file']) > max_file_len:
 raise error.general('file name length is greater than %i (maybe 
use --rsb-file=FILE option): %s' % \
-- 
2.37.1

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


[PATCH v2 4/4] sb: Set the uid and gid on POSIX systems

2023-12-06 Thread chrisj
From: Chris Johns 

This improves performance because it avoids an exec each time
the _uid macro is referenced and that can be a number of times
for each config parsed.
---
 source-builder/sb/options.py | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/source-builder/sb/options.py b/source-builder/sb/options.py
index d554097..ac5982b 100644
--- a/source-builder/sb/options.py
+++ b/source-builder/sb/options.py
@@ -46,7 +46,7 @@ basepath = 'sb'
 #
 # Save the host and POSIX state.
 #
-host_windows = False
+host_windows = os.name == 'nt'
 host_posix = True
 
 class command_line:
@@ -103,6 +103,10 @@ class command_line:
 self.defaults[self._long_opts[lo][0]] = ('none',
  'none',
  
self._long_opts[lo][3])
+# Set the _uid field, performance improvement on Unix
+if not host_windows:
+self.defaults['_uid'] = str(os.getuid())
+self.defaults['_did'] = str(os.getdid())
 
 def __str__(self):
 def _dict(dd):
-- 
2.37.1

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


[PATCH v2 1/4] sb: No hash on a package is an error

2023-12-06 Thread chrisj
From: Chris Johns 

---
 source-builder/sb/download.py | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/source-builder/sb/download.py b/source-builder/sb/download.py
index 410edeb..3f26644 100644
--- a/source-builder/sb/download.py
+++ b/source-builder/sb/download.py
@@ -132,9 +132,7 @@ def _hash_check(file_, absfile, macros, remove = True):
 if hasher is not None:
 del hasher
 else:
-if version.released():
-raise error.general('%s: no hash found in released RSB' % (file_))
-log.warning('%s: no hash found' % (file_))
+raise error.general('%s: no hash found in released RSB' % (file_))
 return not failed
 
 def _local_path(source, pathkey, config):
-- 
2.37.1

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


Re: [PATCH 0/8] Add basic support for TMS570LC4357

2023-12-06 Thread Sebastian Huber

Hello Pavel,

sorry for the delay, but I was busy with all sorts of things.  I checked 
in the first round of patches. I work on cleaning up a patch set with 
support for the TMS570LC4357.


For debugging, we use the Lauterbach PowerDebug System.

Best regards,
Sebastian

--
embedded brains GmbH & Co. KG
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Re: RTEMS LwIP licensing and organization cleanup proposal

2023-12-06 Thread Sebastian Huber

Hello Premysl,

On 03.03.23 14:32, Pavel Pisa wrote:

I have contacted Premysl Houdek who worked on project during
his RTEMS GSoC and followup diploma thesis

   
https://support.dce.felk.cvut.cz/mediawiki/images/f/f1/Dp_2016_houdek_premysl.pdf

and he is prepared to confirm relicensing to any RTEMS fitting
open source license.


I have now a bit of time to continue working on the TMS570LC4357 
support. I noticed that several files of the BSP still have the old 
RTEMS license or no license header. I would like to change them to 
BSD-2-Clause license. Premysl, would you mind giving permission to this 
licence change for your RTEMS contributions? If yes, then please add a 
note like this to https://devel.rtems.org/ticket/3053:


I grant permission to the RTEMS Project to relicense my current and 
future contributions to the RTEMS public source to be relicensed to the 
2-Clause BSD License.


--
embedded brains GmbH & Co. KG
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

[PATCH] ftpd: Make socket timeout optional

2023-12-06 Thread Sebastian Huber
This feature is not supported by lwIP.
---
 cpukit/ftpd/ftpd.c | 13 -
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/cpukit/ftpd/ftpd.c b/cpukit/ftpd/ftpd.c
index ceb5c5d5b9..fe5f190242 100644
--- a/cpukit/ftpd/ftpd.c
+++ b/cpukit/ftpd/ftpd.c
@@ -576,7 +576,7 @@ send_reply(FTPD_SessionInfo_t  *info, int code, const char 
*text)
  * Output parameters:
  *   returns 1 on success, 0 on failure.
  */
-static int
+static void
 set_socket_timeout(int s, int seconds)
 {
   int res = 0;
@@ -591,9 +591,6 @@ set_socket_timeout(int s, int seconds)
 syslog(LOG_ERR, "ftpd: Can't set send timeout on socket: %s.", serr());
   else if(0 != setsockopt(s, SOL_SOCKET, SO_RCVTIMEO, , len))
 syslog(LOG_ERR, "ftpd: Can't set receive timeout on socket: %s.", serr());
-  else
-res = 1;
-  return res;
 }
 
 /*
@@ -688,8 +685,7 @@ data_socket(FTPD_SessionInfo_t *info)
   }
   info->data_socket = s;
   info->use_default = 1;
-  if(s >= 0)
-set_socket_timeout(s, info->idle);
+  set_socket_timeout(s, info->idle);
   return s;
 }
 
@@ -1568,8 +1564,8 @@ command_pasv(FTPD_SessionInfo_t *info)
   syslog(LOG_ERR, "ftpd: Error binding PASV socket: %s", serr());
 else if (0 > listen(s, 1))
   syslog(LOG_ERR, "ftpd: Error listening on PASV socket: %s", serr());
-else if (set_socket_timeout(s, info->idle))
 {
+  set_socket_timeout(s, info->idle);
   if (0 == getsockname(s, (struct sockaddr *), ))
   {
 char buf[FTPD_BUFSIZE];
@@ -2030,12 +2026,11 @@ ftpd_daemon(rtems_task_argument args RTEMS_UNUSED)
 ss = accept(s, (struct sockaddr *), );
 if (0 > ss)
   syslog(LOG_ERR, "ftpd: Error accepting control connection: %s", serr());
-else if(!set_socket_timeout(ss, ftpd_timeout))
-  close_socket(ss);
 else
 {
   FTPD_SessionInfo_t *info;
 
+  set_socket_timeout(ss, ftpd_timeout);
   info = task_pool_obtain();
   if (NULL == info)
   {
-- 
2.35.3

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