From 4ca49fc2000eba7b11c07111b636b7d49ae9aafa Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Mon, 23 Sep 2024 02:17:45 +0200 Subject: [PATCH] score: Remove _Per_CPU_State_wait_for_non_initial_state() This function is unused. --- cpukit/include/rtems/score/percpu.h | 30 ----------- cpukit/score/src/percpustatewait.c | 78 ----------------------------- spec/build/cpukit/objsmp.yml | 1 - 3 files changed, 109 deletions(-) delete mode 100644 cpukit/score/src/percpustatewait.c diff --git a/cpukit/include/rtems/score/percpu.h b/cpukit/include/rtems/score/percpu.h index 288445bc6f..f6bf400431 100644 --- a/cpukit/include/rtems/score/percpu.h +++ b/cpukit/include/rtems/score/percpu.h @@ -845,36 +845,6 @@ static inline void _Per_CPU_Set_state( ); } -/** - * @brief Waits for a processor to change into a non-initial state. - * - * This function should be called only in _CPU_SMP_Start_processor() if - * required by the CPU port or BSP. - * - * @code - * bool _CPU_SMP_Start_processor(uint32_t cpu_index) - * { - * uint32_t timeout = 123456; - * - * start_the_processor(cpu_index); - * - * return _Per_CPU_State_wait_for_non_initial_state(cpu_index, timeout); - * } - * @endcode - * - * @param[in] cpu_index The processor index. - * @param[in] timeout_in_ns The timeout in nanoseconds. Use a value of zero to - * wait forever if necessary. - * - * @retval true The processor is in a non-initial state. - * @retval false The timeout expired before the processor reached a non-initial - * state. - */ -bool _Per_CPU_State_wait_for_non_initial_state( - uint32_t cpu_index, - uint32_t timeout_in_ns -); - /** * @brief Performs the jobs of the specified processor in FIFO order. * diff --git a/cpukit/score/src/percpustatewait.c b/cpukit/score/src/percpustatewait.c deleted file mode 100644 index 54ab92427f..0000000000 --- a/cpukit/score/src/percpustatewait.c +++ /dev/null @@ -1,78 +0,0 @@ -/* SPDX-License-Identifier: BSD-2-Clause */ - -/** - * @file - * - * @ingroup RTEMSScorePerCPU - * - * @brief This source file contains the implementation of - * _Per_CPU_State_wait_for_non_initial_state(). - */ - -/* - * Copyright (c) 2014 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. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include - -bool _Per_CPU_State_wait_for_non_initial_state( - uint32_t cpu_index, - uint32_t timeout_in_ns -) -{ - const Per_CPU_Control *cpu; - Per_CPU_State state; - - cpu = _Per_CPU_Get_by_index( cpu_index ); - state = _Per_CPU_Get_state( cpu ); - - if ( timeout_in_ns > 0 ) { - rtems_counter_ticks ticks = - rtems_counter_nanoseconds_to_ticks( timeout_in_ns ); - rtems_counter_ticks a = rtems_counter_read(); - rtems_counter_ticks delta = 0; - - while ( ticks > delta && state == PER_CPU_STATE_INITIAL ) { - rtems_counter_ticks b; - - state = _Per_CPU_Get_state( cpu ); - - ticks -= delta; - b = rtems_counter_read(); - delta = rtems_counter_difference( b, a ); - a = b; - } - } else { - while ( state == PER_CPU_STATE_INITIAL ) { - state = _Per_CPU_Get_state( cpu ); - } - } - - return state != PER_CPU_STATE_INITIAL; -} diff --git a/spec/build/cpukit/objsmp.yml b/spec/build/cpukit/objsmp.yml index 41686e0f5e..d59b5b5f78 100644 --- a/spec/build/cpukit/objsmp.yml +++ b/spec/build/cpukit/objsmp.yml @@ -11,7 +11,6 @@ install: [] links: [] source: - cpukit/score/src/percpujobs.c -- cpukit/score/src/percpustatewait.c - cpukit/score/src/profilingsmplock.c - cpukit/score/src/schedulerdefaultmakecleansticky.c - cpukit/score/src/schedulerdefaultpinunpin.c