diff options
Diffstat (limited to 'spec/rtems/type')
20 files changed, 457 insertions, 0 deletions
diff --git a/spec/rtems/type/if/group.yml b/spec/rtems/type/if/group.yml new file mode 100644 index 00000000..3565268c --- /dev/null +++ b/spec/rtems/type/if/group.yml @@ -0,0 +1,18 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This group contains basic types of the Classic API. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +description: null +enabled-by: true +identifier: RTEMSAPIClassicTypes +interface-type: group +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: ../../if/group +name: Basic Types +text: | + The Classic API shall provide an interface to basic types. +type: interface diff --git a/spec/rtems/type/if/header.yml b/spec/rtems/type/if/header.yml new file mode 100644 index 00000000..c7427c74 --- /dev/null +++ b/spec/rtems/type/if/header.yml @@ -0,0 +1,27 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: This header file defines types provided by the API. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +interface-type: header-file +links: +- enabled-by: true + role: interface-include + uid: /c/if/sys-cpuset +- enabled-by: true + role: interface-include + uid: /c/if/sys-impl-timespec +- enabled-by: true + role: interface-include + uid: /c/if/sys-impl-timeval +- enabled-by: true + role: interface-include + uid: ../../mode/if/header +- enabled-by: RTEMS_MULTIPROCESSING + role: interface-include + uid: /score/mpci/if/header +- role: interface-placement + uid: /if/domain +path: rtems/rtems/types.h +prefix: cpukit/include +type: interface diff --git a/spec/rtems/type/if/id-none.yml b/spec/rtems/type/if/id-none.yml new file mode 100644 index 00000000..30f7e94e --- /dev/null +++ b/spec/rtems/type/if/id-none.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This is an invalid object identifier. +copyrights: +- Copyright (C) 2009, 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/score/object/if/id-none:/name} + variants: [] +description: | + No object can have this identifier. +enabled-by: true +interface-type: define +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: RTEMS_ID_NONE +notes: null +type: interface diff --git a/spec/rtems/type/if/id.yml b/spec/rtems/type/if/id.yml new file mode 100644 index 00000000..f342a3d7 --- /dev/null +++ b/spec/rtems/type/if/id.yml @@ -0,0 +1,19 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + Values of this type identify an object. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/score/object/if/id:/name} ${.:/name} + variants: [] +description: null +enabled-by: true +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_id +notes: null +type: interface diff --git a/spec/rtems/type/if/interval.yml b/spec/rtems/type/if/interval.yml new file mode 100644 index 00000000..2b334adb --- /dev/null +++ b/spec/rtems/type/if/interval.yml @@ -0,0 +1,19 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type is used to represent clock tick intervals. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/score/watchdog/if/interval:/name} ${.:/name} + variants: [] +description: null +enabled-by: true +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_interval +notes: null +type: interface diff --git a/spec/rtems/type/if/minimum-packet-size.yml b/spec/rtems/type/if/minimum-packet-size.yml new file mode 100644 index 00000000..5e1d9db1 --- /dev/null +++ b/spec/rtems/type/if/minimum-packet-size.yml @@ -0,0 +1,19 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: '%' +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: ${/score/mpci/if/packet-minimum-size:/name} + variants: [] +description: null +enabled-by: true +interface-type: define +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: RTEMS_MINIMUM_PACKET_SIZE +notes: null +type: interface diff --git a/spec/rtems/type/if/minimun-hetero-conversion.yml b/spec/rtems/type/if/minimun-hetero-conversion.yml new file mode 100644 index 00000000..6803a410 --- /dev/null +++ b/spec/rtems/type/if/minimun-hetero-conversion.yml @@ -0,0 +1,19 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: '%' +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: ${/score/mpci/if/packet-minimum-hetero-conversion:/name} + variants: [] +description: null +enabled-by: true +interface-type: define +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: RTEMS_MINIMUN_HETERO_CONVERSION +notes: null +type: interface diff --git a/spec/rtems/type/if/mp-packet-classes.yml b/spec/rtems/type/if/mp-packet-classes.yml new file mode 100644 index 00000000..7ec13fd9 --- /dev/null +++ b/spec/rtems/type/if/mp-packet-classes.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This enumerated type defines the packet classes. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 2006 On-Line Applications Research Corporation (OAR) +definition: + default: ${/score/mpci/if/packet-classes:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mp_packet_classes +notes: null +type: interface diff --git a/spec/rtems/type/if/mpci-entry.yml b/spec/rtems/type/if/mpci-entry.yml new file mode 100644 index 00000000..79c8119e --- /dev/null +++ b/spec/rtems/type/if/mpci-entry.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + Return type of every MPCI handler routine. +copyrights: +- Copyright (C) 2009, 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 2008 On-Line Applications Research Corporation (OAR) +definition: + default: MPCI_Entry rtems_mpci_entry + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mpci_entry +notes: null +type: interface diff --git a/spec/rtems/type/if/mpci-get-packet-entry.yml b/spec/rtems/type/if/mpci-get-packet-entry.yml new file mode 100644 index 00000000..d99a623b --- /dev/null +++ b/spec/rtems/type/if/mpci-get-packet-entry.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the prototype for the get packet entry point in an MPCI. +copyrights: +- Copyright (C) 2009, 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 2006 On-Line Applications Research Corporation (OAR) +definition: + default: ${/score/mpci/if/get-packet-entry:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mpci_get_packet_entry +notes: null +type: interface diff --git a/spec/rtems/type/if/mpci-initialization-entry.yml b/spec/rtems/type/if/mpci-initialization-entry.yml new file mode 100644 index 00000000..f7ee9800 --- /dev/null +++ b/spec/rtems/type/if/mpci-initialization-entry.yml @@ -0,0 +1,21 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the prototype for the initialization entry point in an + MPCI. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 2006 On-Line Applications Research Corporation (OAR) +definition: + default: ${/score/mpci/if/initialization-entry:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mpci_initialization_entry +notes: null +type: interface diff --git a/spec/rtems/type/if/mpci-receive-packet-entry.yml b/spec/rtems/type/if/mpci-receive-packet-entry.yml new file mode 100644 index 00000000..45f72515 --- /dev/null +++ b/spec/rtems/type/if/mpci-receive-packet-entry.yml @@ -0,0 +1,21 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the prototype for the receive packet entry point in an + MPCI. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 2006 On-Line Applications Research Corporation (OAR) +definition: + default: ${/score/mpci/if/receive-entry:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mpci_receive_packet_entry +notes: null +type: interface diff --git a/spec/rtems/type/if/mpci-return-packet-entry.yml b/spec/rtems/type/if/mpci-return-packet-entry.yml new file mode 100644 index 00000000..028f7f36 --- /dev/null +++ b/spec/rtems/type/if/mpci-return-packet-entry.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the prototype for the return packet entry point in an MPCI. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 2006 On-Line Applications Research Corporation (OAR) +definition: + default: ${/score/mpci/if/return-packet-entry:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mpci_return_packet_entry +notes: null +type: interface diff --git a/spec/rtems/type/if/mpci-send-packet-entry.yml b/spec/rtems/type/if/mpci-send-packet-entry.yml new file mode 100644 index 00000000..56b8db12 --- /dev/null +++ b/spec/rtems/type/if/mpci-send-packet-entry.yml @@ -0,0 +1,19 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the prototype for the send packet entry point in an MPCI. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/score/mpci/if/send-entry:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mpci_send_packet_entry +notes: null +type: interface diff --git a/spec/rtems/type/if/mpci-table.yml b/spec/rtems/type/if/mpci-table.yml new file mode 100644 index 00000000..3828d040 --- /dev/null +++ b/spec/rtems/type/if/mpci-table.yml @@ -0,0 +1,19 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the MPCI control. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/score/mpci/if/control:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_mpci_table +notes: null +type: interface diff --git a/spec/rtems/type/if/multiprocessing-table.yml b/spec/rtems/type/if/multiprocessing-table.yml new file mode 100644 index 00000000..b22cba4a --- /dev/null +++ b/spec/rtems/type/if/multiprocessing-table.yml @@ -0,0 +1,19 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the MPCI configuration table. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/score/mpci/if/configuration-type:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_multiprocessing_table +notes: null +type: interface diff --git a/spec/rtems/type/if/name.yml b/spec/rtems/type/if/name.yml new file mode 100644 index 00000000..e55d9ee2 --- /dev/null +++ b/spec/rtems/type/if/name.yml @@ -0,0 +1,22 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type is used to represent an Classic API object name. +copyrights: +- Copyright (C) 2009, 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/c/if/uint32_t:/name} rtems_name + variants: [] +description: | + It is an unsigned 32-bit integer which can be treated as a numeric value or + initialized using rtems_build_name() to encode four ASCII characters. A + value of zero may have a special meaning in some directives. +enabled-by: true +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_name +notes: null +type: interface diff --git a/spec/rtems/type/if/no-timeout.yml b/spec/rtems/type/if/no-timeout.yml new file mode 100644 index 00000000..9e5ff7bf --- /dev/null +++ b/spec/rtems/type/if/no-timeout.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: '%' +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: | + ( (${interval:/name}) ${/score/watchdog/if/no-timeout:/name} ) + variants: [] +description: null +enabled-by: true +interface-type: define +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: RTEMS_NO_TIMEOUT +notes: null +type: interface diff --git a/spec/rtems/type/if/packet-prefix.yml b/spec/rtems/type/if/packet-prefix.yml new file mode 100644 index 00000000..a58591bc --- /dev/null +++ b/spec/rtems/type/if/packet-prefix.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type defines the prefix found at the beginning of each MPCI packet sent + between nodes. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: + default: ${/score/mpci/if/packet-prefix:/name} ${.:/name} + variants: [] +description: null +enabled-by: RTEMS_MULTIPROCESSING +interface-type: typedef +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_packet_prefix +notes: null +type: interface diff --git a/spec/rtems/type/if/time-of-day.yml b/spec/rtems/type/if/time-of-day.yml new file mode 100644 index 00000000..5fb8f8c0 --- /dev/null +++ b/spec/rtems/type/if/time-of-day.yml @@ -0,0 +1,75 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + This type is used to represent the calendar time in the Classic API. +copyrights: +- Copyright (C) 2009, 2020 embedded brains GmbH (http://www.embedded-brains.de) +definition: +- default: + brief: | + This member represents the year A.D. + definition: ${/c/if/uint32_t:/name} ${.:name} + description: null + kind: member + name: year + variants: [] +- default: + brief: | + This member represents the month of the year with values from 1 to 12. + definition: ${/c/if/uint32_t:/name} ${.:name} + description: null + kind: member + name: month + variants: [] +- default: + brief: | + This member represents the day of the month with values from 1 to 31. + definition: ${/c/if/uint32_t:/name} ${.:name} + description: null + kind: member + name: day + variants: [] +- default: + brief: | + This member represents the hour of the day with values from 0 to 23. + definition: ${/c/if/uint32_t:/name} ${.:name} + description: null + kind: member + name: hour + variants: [] +- default: + brief: | + This member represents the minute of the hour with values from 0 to 59. + definition: ${/c/if/uint32_t:/name} ${.:name} + description: null + kind: member + name: minute + variants: [] +- default: + brief: | + This member represents the second of the minute with values from 0 to 59. + definition: ${/c/if/uint32_t:/name} ${.:name} + description: null + kind: member + name: second + variants: [] +- default: + brief: | + This member represents the clock tick of the second with values from 0 to + rtems_clock_get_ticks_per_second() minus one. + definition: ${/c/if/uint32_t:/name} ${.:name} + description: null + kind: member + name: ticks + variants: [] +definition-kind: typedef-only +description: null +enabled-by: true +interface-type: struct +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_time_of_day +notes: null +type: interface |