summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2023-07-18 09:56:09 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2023-07-24 17:51:48 +0200
commitc8cae1d82db57eca12a54f181660e579ac3ef27c (patch)
tree18ab7142662b394afec0fbd87b09bcd39b66868f
parent4a3ace7c7a464409cc5da859a04e2d3ba533b69a (diff)
score: Move _IO_Relax() to new <rtems/dev/io.h>
This function is not a super core service.
-rw-r--r--bsps/shared/grlib/uart/apbuart_polled.c2
-rw-r--r--cpukit/dev/iorelax.c (renamed from cpukit/score/src/iorelax.c)4
-rw-r--r--cpukit/include/rtems/dev/io.h68
-rw-r--r--cpukit/include/rtems/score/io.h8
-rw-r--r--spec/build/cpukit/librtemscpu.yml4
5 files changed, 73 insertions, 13 deletions
diff --git a/bsps/shared/grlib/uart/apbuart_polled.c b/bsps/shared/grlib/uart/apbuart_polled.c
index f3e4997a12..84c31795df 100644
--- a/bsps/shared/grlib/uart/apbuart_polled.c
+++ b/bsps/shared/grlib/uart/apbuart_polled.c
@@ -38,7 +38,7 @@
#include <grlib/apbuart.h>
#include <grlib/io.h>
-#include <rtems/score/io.h>
+#include <rtems/dev/io.h>
void apbuart_outbyte_wait( const apbuart *regs )
{
diff --git a/cpukit/score/src/iorelax.c b/cpukit/dev/iorelax.c
index 1b155377a9..5fdefac151 100644
--- a/cpukit/score/src/iorelax.c
+++ b/cpukit/dev/iorelax.c
@@ -3,7 +3,7 @@
/**
* @file
*
- * @ingroup RTEMSScoreIO
+ * @ingroup RTEMSDeviceIO
*
* @brief This source file contains the implementation of _IO_Relax().
*/
@@ -37,7 +37,7 @@
#include "config.h"
#endif
-#include <rtems/score/io.h>
+#include <rtems/dev/io.h>
#include <rtems/score/cpuimpl.h>
void _IO_Relax( void )
diff --git a/cpukit/include/rtems/dev/io.h b/cpukit/include/rtems/dev/io.h
new file mode 100644
index 0000000000..4d041bcafc
--- /dev/null
+++ b/cpukit/include/rtems/dev/io.h
@@ -0,0 +1,68 @@
+/* SPDX-License-Identifier: BSD-2-Clause */
+
+/**
+ * @file
+ *
+ * @ingroup RTEMSDeviceIO
+ *
+ * @brief This header file provides the interfaces of the
+ * @ref RTEMSDeviceIO.
+ */
+
+/*
+ * Copyright (C) 2021 embedded brains GmbH & Co. KG
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _RTEMS_DEV_IO_H
+#define _RTEMS_DEV_IO_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+/**
+ * @defgroup RTEMSDeviceIO Device I/O Support
+ *
+ * @ingroup RTEMSDeviceDrivers
+ *
+ * @brief This group contains the Device I/O Support API and implementation.
+ *
+ * @{
+ */
+
+/**
+ * @brief Issues a couple of no-operation instructions.
+ *
+ * This function may be used to burn a couple of processor cycles with minimum
+ * impact on the system bus. It may be used in busy wait loops.
+ */
+void _IO_Relax( void );
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* _RTEMS_DEV_IO_H */
diff --git a/cpukit/include/rtems/score/io.h b/cpukit/include/rtems/score/io.h
index 9cd401eb1d..7fe69841e8 100644
--- a/cpukit/include/rtems/score/io.h
+++ b/cpukit/include/rtems/score/io.h
@@ -133,14 +133,6 @@ int _IO_Base64url(
int wordlen
);
-/**
- * @brief Issues a couple of no-operation instructions.
- *
- * This function may be used to burn a couple of processor cycles with minimum
- * impact on the system bus. It may be used in busy wait loops.
- */
-void _IO_Relax( void );
-
/** @} */
#ifdef __cplusplus
diff --git a/spec/build/cpukit/librtemscpu.yml b/spec/build/cpukit/librtemscpu.yml
index 3654e7f94a..d556c95bc8 100644
--- a/spec/build/cpukit/librtemscpu.yml
+++ b/spec/build/cpukit/librtemscpu.yml
@@ -528,6 +528,7 @@ source:
- cpukit/compression/xz/xz_crc32.c
- cpukit/compression/xz/xz_dec_lzma2.c
- cpukit/compression/xz/xz_dec_stream.c
+- cpukit/dev/can/can.c
- cpukit/dev/flash/flashdev.c
- cpukit/dev/i2c/eeprom.c
- cpukit/dev/i2c/fpga-i2c-slave.c
@@ -540,10 +541,10 @@ source:
- cpukit/dev/i2c/ti-lm25066a.c
- cpukit/dev/i2c/ti-tmp112.c
- cpukit/dev/i2c/xilinx-axi-i2c.c
+- cpukit/dev/iorelax.c
- cpukit/dev/serial/sc16is752-spi.c
- cpukit/dev/serial/sc16is752.c
- cpukit/dev/spi/spi-bus.c
-- cpukit/dev/can/can.c
- cpukit/dtc/libfdt/fdt.c
- cpukit/dtc/libfdt/fdt_addresses.c
- cpukit/dtc/libfdt/fdt_empty_tree.c
@@ -1434,7 +1435,6 @@ source:
- cpukit/score/src/interr.c
- cpukit/score/src/iobase64.c
- cpukit/score/src/ioprintf.c
-- cpukit/score/src/iorelax.c
- cpukit/score/src/iovprintf.c
- cpukit/score/src/isr.c
- cpukit/score/src/isrisinprogress.c