Add the Regulator Interface and test

Updates #4924.

The Regulator is an application support class which is used to
deal with the scenario where there is a bursty input source
which needs to be metered out to a destination sink. The maximum
size of bursts needs to be known and the delivery method must
be configured to deliver messages at a rate that allows the
traffic to not overflow.
This commit is contained in:
Joel Sherrill
2023-07-05 15:28:54 -05:00
parent 0a766a88d7
commit fd693085ea
10 changed files with 2795 additions and 0 deletions

View File

@@ -510,6 +510,8 @@ links:
uid: objmpci
- role: build-dependency
uid: objpci
- role: build-dependency
uid: objregulator
- role: build-dependency
uid: objpsxsgnl
- role: build-dependency

View File

@@ -0,0 +1,18 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
build-type: objects
cflags: []
copyrights:
- Copyright (C) 2023 OAR Corporatoin
cppflags: []
cxxflags: []
enabled-by: true
includes: []
install:
- destination: ${BSP_INCLUDEDIR}/rtems
source:
- cpukit/include/rtems/regulator.h
- cpukit/include/rtems/regulatorimpl.h
links: []
source:
- cpukit/libmisc/regulator/regulator.c
type: build

View File

@@ -228,6 +228,8 @@ links:
uid: record01
- role: build-dependency
uid: record02
- role: build-dependency
uid: regulator01
- role: build-dependency
uid: rtmonuse
- role: build-dependency

View File

@@ -0,0 +1,21 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
build-type: test-program
cflags: []
copyrights:
- Copyright (C) 2023 OAR Corporation
cppflags: []
cxxflags: []
enabled-by: true
features: c cprogram
includes: []
ldflags:
- -Wl,--wrap=malloc
links: []
source:
- testsuites/libtests/regulator01/regulator01.c
- testsuites/libtests/regulator01/rtems_config.c
stlib: []
target: testsuites/libtests/regulator01.exe
type: build
use-after: []
use-before: []