summaryrefslogtreecommitdiff
path: root/spec/if/rtems/clock
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-06-22 08:36:47 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-07-03 10:22:45 +0200
commit9beb12d066dcee8ae7537439835c6108a47c652a (patch)
treece90ff1a0cfe27de35b2bd98a9c5584dbd4b529d /spec/if/rtems/clock
parent99ef74b3c84f77f6fe14c3b82031977c4ca85b44 (diff)
spec: Add /if/rtems/clock/*
Diffstat (limited to 'spec/if/rtems/clock')
-rw-r--r--spec/if/rtems/clock/get-seconds-since-epoch.yml30
-rw-r--r--spec/if/rtems/clock/get-ticks-per-second.yml23
-rw-r--r--spec/if/rtems/clock/get-ticks-since-boot.yml23
-rw-r--r--spec/if/rtems/clock/get-tod-timeval.yml30
-rw-r--r--spec/if/rtems/clock/get-tod.yml30
-rw-r--r--spec/if/rtems/clock/get-uptime-nanoseconds.yml26
-rw-r--r--spec/if/rtems/clock/get-uptime-seconds.yml26
-rw-r--r--spec/if/rtems/clock/get-uptime-timeval.yml30
-rw-r--r--spec/if/rtems/clock/get-uptime.yml30
-rw-r--r--spec/if/rtems/clock/header.yml11
-rw-r--r--spec/if/rtems/clock/set.yml30
-rw-r--r--spec/if/rtems/clock/tick-before.yml40
-rw-r--r--spec/if/rtems/clock/tick-later-usec.yml41
-rw-r--r--spec/if/rtems/clock/tick-later.yml32
-rw-r--r--spec/if/rtems/clock/tick.yml26
15 files changed, 428 insertions, 0 deletions
diff --git a/spec/if/rtems/clock/get-seconds-since-epoch.yml b/spec/if/rtems/clock/get-seconds-since-epoch.yml
new file mode 100644
index 00000000..07373e08
--- /dev/null
+++ b/spec/if/rtems/clock/get-seconds-since-epoch.yml
@@ -0,0 +1,30 @@
+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:
+ body: null
+ params:
+ - ${../types/interval:/name} *${.:/params[0]/name}
+ return: ${../status/code:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_seconds_since_epoch
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: the_interval
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-ticks-per-second.yml b/spec/if/rtems/clock/get-ticks-per-second.yml
new file mode 100644
index 00000000..5193e6c1
--- /dev/null
+++ b/spec/if/rtems/clock/get-ticks-per-second.yml
@@ -0,0 +1,23 @@
+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: ${/if/impl/watchdog/ticks-per-second:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: macro
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_ticks_per_second
+notes: null
+params: []
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-ticks-since-boot.yml b/spec/if/rtems/clock/get-ticks-since-boot.yml
new file mode 100644
index 00000000..ca00db71
--- /dev/null
+++ b/spec/if/rtems/clock/get-ticks-since-boot.yml
@@ -0,0 +1,23 @@
+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: ${/if/impl/watchdog/ticks-since-boot:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: macro
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_ticks_since_boot
+notes: null
+params: []
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-tod-timeval.yml b/spec/if/rtems/clock/get-tod-timeval.yml
new file mode 100644
index 00000000..50d1a896
--- /dev/null
+++ b/spec/if/rtems/clock/get-tod-timeval.yml
@@ -0,0 +1,30 @@
+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:
+ body: null
+ params:
+ - ${/if/c/timeval:/name} *${.:/params[0]/name}
+ return: ${../status/code:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_tod_timeval
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: time
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-tod.yml b/spec/if/rtems/clock/get-tod.yml
new file mode 100644
index 00000000..affec4bd
--- /dev/null
+++ b/spec/if/rtems/clock/get-tod.yml
@@ -0,0 +1,30 @@
+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:
+ body: null
+ params:
+ - ${../types/time-of-day:/name} *${.:/params[0]/name}
+ return: ${../status/code:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_tod
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: time_buffer
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-uptime-nanoseconds.yml b/spec/if/rtems/clock/get-uptime-nanoseconds.yml
new file mode 100644
index 00000000..1a853f25
--- /dev/null
+++ b/spec/if/rtems/clock/get-uptime-nanoseconds.yml
@@ -0,0 +1,26 @@
+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:
+ body: null
+ params: []
+ return: ${/if/c/uint64_t:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_uptime_nanoseconds
+notes: null
+params: []
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-uptime-seconds.yml b/spec/if/rtems/clock/get-uptime-seconds.yml
new file mode 100644
index 00000000..7fdfcbaa
--- /dev/null
+++ b/spec/if/rtems/clock/get-uptime-seconds.yml
@@ -0,0 +1,26 @@
+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:
+ body: null
+ params: []
+ return: ${/if/c/time_t:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_uptime_seconds
+notes: null
+params: []
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-uptime-timeval.yml b/spec/if/rtems/clock/get-uptime-timeval.yml
new file mode 100644
index 00000000..56ae624e
--- /dev/null
+++ b/spec/if/rtems/clock/get-uptime-timeval.yml
@@ -0,0 +1,30 @@
+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:
+ body: null
+ params:
+ - ${/if/c/timeval:/name} *${.:/params[0]/name}
+ return: void
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_uptime_timeval
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: uptime
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/get-uptime.yml b/spec/if/rtems/clock/get-uptime.yml
new file mode 100644
index 00000000..26d96f8b
--- /dev/null
+++ b/spec/if/rtems/clock/get-uptime.yml
@@ -0,0 +1,30 @@
+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:
+ body: null
+ params:
+ - ${/if/c/timespec:/name} *${.:/params[0]/name}
+ return: ${../status/code:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_get_uptime
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: uptime
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/header.yml b/spec/if/rtems/clock/header.yml
new file mode 100644
index 00000000..1ef5b5c3
--- /dev/null
+++ b/spec/if/rtems/clock/header.yml
@@ -0,0 +1,11 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
+enabled-by: true
+interface-type: header-file
+links:
+- role: interface-placement
+ uid: /if/domains/api
+path: rtems/rtems/clock.h
+prefix: cpukit/include
+type: interface
diff --git a/spec/if/rtems/clock/set.yml b/spec/if/rtems/clock/set.yml
new file mode 100644
index 00000000..3defda4e
--- /dev/null
+++ b/spec/if/rtems/clock/set.yml
@@ -0,0 +1,30 @@
+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:
+ body: null
+ params:
+ - const ${../types/time-of-day:/name} *${.:/params[0]/name}
+ return: ${../status/code:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_set
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: time_buffer
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/tick-before.yml b/spec/if/rtems/clock/tick-before.yml
new file mode 100644
index 00000000..52f4ba3c
--- /dev/null
+++ b/spec/if/rtems/clock/tick-before.yml
@@ -0,0 +1,40 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Returns true if the current ticks counter value indicates a time before the
+ time specified by the tick value and false otherwise.
+copyrights:
+- Copyright (C) 2014, 2020 embedded brains GmbH (http://www.embedded-brains.de)
+definition:
+ default:
+ body: |
+ return (${/if/c/int32_t:/name}) ( ${.:/params[0]/name} - ${/if/impl/watchdog/ticks-since-boot:/name} ) > 0;
+ params:
+ - ${../types/interval:/name} ${.:/params[0]/name}
+ return: ${/if/c/bool:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_tick_before
+notes: |
+ This directive can be used to write busy loops with a timeout.
+params:
+- description: is the tick value.
+ dir: null
+ name: tick
+return:
+ return: null
+ return-values:
+ - description: |
+ The current ticks counter value indicates a time before the time
+ specified by the tick value.
+ value: "true"
+ - description: |
+ Otherwise.
+ value: "false"
+type: interface
diff --git a/spec/if/rtems/clock/tick-later-usec.yml b/spec/if/rtems/clock/tick-later-usec.yml
new file mode 100644
index 00000000..8b5a168f
--- /dev/null
+++ b/spec/if/rtems/clock/tick-later-usec.yml
@@ -0,0 +1,41 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Returns the ticks counter value at least delta microseconds in the future.
+copyrights:
+- Copyright (C) 2014, 2020 embedded brains GmbH (http://www.embedded-brains.de)
+definition:
+ default:
+ body: |
+ ${../types/interval:/name} us_per_tick;
+
+ us_per_tick = ${../config/get-microseconds-per-tick:/name}();
+
+ /*
+ * Add one additional tick, since we do not know the time to the clock
+ * next tick.
+ */
+ return ${/if/impl/watchdog/ticks-since-boot:/name} + 1
+ + ( ${.:/params[0]/name} + us_per_tick - 1 ) / us_per_tick;
+ params:
+ - ${../types/interval:/name} ${.:/params[0]/name}
+ return: ${../types/interval:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_tick_later_usec
+notes: null
+params:
+- description: is the delta value in microseconds.
+ dir: null
+ name: delta_in_usec
+return:
+ return: |
+ The tick counter value delta ticks in the future is returned.
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/tick-later.yml b/spec/if/rtems/clock/tick-later.yml
new file mode 100644
index 00000000..fa6e8557
--- /dev/null
+++ b/spec/if/rtems/clock/tick-later.yml
@@ -0,0 +1,32 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Returns the ticks counter value delta ticks in the future.
+copyrights:
+- Copyright (C) 2014, 2020 embedded brains GmbH (http://www.embedded-brains.de)
+definition:
+ default:
+ body: |
+ return ${/if/impl/watchdog/ticks-since-boot:/name} + ${.:/params[0]/name};
+ params:
+ - ${../types/interval:/name} ${.:/params[0]/name}
+ return: ${../types/interval:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_tick_later
+notes: null
+params:
+- description: is the ticks delta value.
+ dir: null
+ name: delta
+return:
+ return: |
+ The tick counter value delta ticks in the future is returned.
+ return-values: []
+type: interface
diff --git a/spec/if/rtems/clock/tick.yml b/spec/if/rtems/clock/tick.yml
new file mode 100644
index 00000000..955fa9d6
--- /dev/null
+++ b/spec/if/rtems/clock/tick.yml
@@ -0,0 +1,26 @@
+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:
+ body: null
+ params: []
+ return: ${../status/code:/name}
+ variants: []
+description: null
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: /groups/api/classic/clock
+name: rtems_clock_tick
+notes: null
+params: []
+return:
+ return: null
+ return-values: []
+type: interface