<div dir="ltr">I think I have addressed all of your comments and Chris'.<div><br></div><div>The conversion to rtems-central might be nice but it isn't going to happen soon.</div><div><br></div><div>--joel</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 10, 2023 at 12:10 AM Sebastian Huber <<a href="mailto:sebastian.huber@embedded-brains.de">sebastian.huber@embedded-brains.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 09.08.23 17:42, Joel Sherrill wrote:<br>
> Updates #4924.<br>
> <br>
> The Regulator is an application support class which is used to<br>
> deal with the scenario where there is a bursty input source<br>
> which needs to be metered out to a destination sink. The maximum<br>
> size of bursts needs to be known and the delivery method must<br>
> be configured to deliver messages at a rate that allows the<br>
> traffic to not overflow.<br>
> ---<br>
>   cpukit/include/rtems/regulator.h              |  499 +++++++<br>
>   cpukit/include/rtems/regulatorimpl.h          |  135 ++<br>
>   cpukit/libmisc/regulator/regulator.c          |  683 +++++++++<br>
>   spec/build/cpukit/librtemscpu.yml             |    2 +<br>
>   spec/build/cpukit/objregulator.yml            |   18 +<br>
>   spec/build/testsuites/libtests/grp.yml        |    2 +<br>
>   .../build/testsuites/libtests/regulator01.yml |   21 +<br>
>   testsuites/libtests/regulator01/regulator01.c | 1310 +++++++++++++++++<br>
>   .../libtests/regulator01/regulator01.doc      |   67 +<br>
>   .../libtests/regulator01/rtems_config.c       |   59 +<br>
>   10 files changed, 2796 insertions(+)<br>
>   create mode 100644 cpukit/include/rtems/regulator.h<br>
>   create mode 100644 cpukit/include/rtems/regulatorimpl.h<br>
>   create mode 100644 cpukit/libmisc/regulator/regulator.c<br>
>   create mode 100644 spec/build/cpukit/objregulator.yml<br>
>   create mode 100644 spec/build/testsuites/libtests/regulator01.yml<br>
>   create mode 100644 testsuites/libtests/regulator01/regulator01.c<br>
>   create mode 100644 testsuites/libtests/regulator01/regulator01.doc<br>
>   create mode 100644 testsuites/libtests/regulator01/rtems_config.c<br>
> <br>
> diff --git a/cpukit/include/rtems/regulator.h b/cpukit/include/rtems/regulator.h<br>
> new file mode 100644<br>
> index 0000000000..362a99f6bc<br>
> --- /dev/null<br>
> +++ b/cpukit/include/rtems/regulator.h<br>
> @@ -0,0 +1,499 @@<br>
> +/* SPDX-License-Identifier: BSD-2-Clause */<br>
<br>
In the header file template we have SPDX, Doxygen @file, copyright.<br>
<br>
> +<br>
> +/**<br>
> + * @defgroup RegulatorAPI Regulator API<br>
> + *<br>
> + * @brief Regulator APIs<br>
> + *<br>
> + * The Regulator provides a set of APIs to manage input sources which<br>
> + * produces bursts of message traffic.<br>
> + */<br>
> +<br>
> +/**<br>
> + * @mainpage<br>
<br>
Do you really want to add this to the main page?<br>
<br>
[...]<br>
> +<br>
> +/**<br>
> + * @addtogroup RegulatorAPI<br>
> + *<br>
> + * @file<br>
> + *<br>
> + * @brief This header file defines the Regulator API.<br>
> + *<br>
> + */<br>
<br>
This should be @file followed by @ingroup RegulatorAPI.<br>
<br>
[...]<br>
> +/**<br>
> + * @ingroup RegulatorAPI<br>
> + *<br>
> + * @brief Regulator Instance<br>
> + *<br>
> + * This is used by the application as the handle to a Regulator instance.<br>
> + */<br>
> +typedef void *rtems_regulator_instance;<br>
<br>
I think this should be rtems_regulator_control. You can also use a <br>
forward declaration<br>
<br>
struct rtems_regulator_control;<br>
<br>
typedef struct rtems_regulator_control rtems_regulator_control;<br>
<br>
to provide a type safe API and ease debugging.<br>
<br>
If you use the interface specification in rtems-central for this new <br>
API, you can keep the Doxygen and Classic API documentation in <br>
synchronization. You could use it also to write validation tests.<br>
<br>
[...]<br>
<br>
-- <br>
embedded brains GmbH<br>
Herr Sebastian HUBER<br>
Dornierstr. 4<br>
82178 Puchheim<br>
Germany<br>
email: <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a><br>
phone: +49-89-18 94 741 - 16<br>
fax:   +49-89-18 94 741 - 08<br>
<br>
Registergericht: Amtsgericht München<br>
Registernummer: HRB 157899<br>
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler<br>
Unsere Datenschutzerklärung finden Sie hier:<br>
<a href="https://embedded-brains.de/datenschutzerklaerung/" rel="noreferrer" target="_blank">https://embedded-brains.de/datenschutzerklaerung/</a><br>
</blockquote></div>