diff options
Diffstat (limited to '')
-rw-r--r-- | bsps/m68k/shared/cache/cache-mcf5223x.c | 25 | ||||
-rw-r--r-- | bsps/m68k/shared/cache/cache-mcf5235.c | 25 | ||||
-rw-r--r-- | bsps/m68k/shared/cache/cache.h | 56 | ||||
-rw-r--r-- | bsps/m68k/shared/doxygen.h | 8 | ||||
-rw-r--r-- | bsps/m68k/shared/m68kidle.c | 25 | ||||
-rw-r--r-- | bsps/m68k/shared/start/linkcmds.base | 31 | ||||
-rw-r--r-- | bsps/m68k/shared/start/start.S | 25 |
7 files changed, 149 insertions, 46 deletions
diff --git a/bsps/m68k/shared/cache/cache-mcf5223x.c b/bsps/m68k/shared/cache/cache-mcf5223x.c index 60b2f7f335..5f4b7cb075 100644 --- a/bsps/m68k/shared/cache/cache-mcf5223x.c +++ b/bsps/m68k/shared/cache/cache-mcf5223x.c @@ -1,10 +1,29 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /* * COPYRIGHT (c) 1989-2008. * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * 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. */ #include <rtems.h> diff --git a/bsps/m68k/shared/cache/cache-mcf5235.c b/bsps/m68k/shared/cache/cache-mcf5235.c index 35390b02ef..9dbd4f63c6 100644 --- a/bsps/m68k/shared/cache/cache-mcf5235.c +++ b/bsps/m68k/shared/cache/cache-mcf5235.c @@ -1,10 +1,29 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /* * COPYRIGHT (c) 1989-2008. * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * 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. */ #include <rtems.h> diff --git a/bsps/m68k/shared/cache/cache.h b/bsps/m68k/shared/cache/cache.h index 18797d4695..0fb63f7d2f 100644 --- a/bsps/m68k/shared/cache/cache.h +++ b/bsps/m68k/shared/cache/cache.h @@ -76,10 +76,10 @@ /* Only the mc68030 has a data cache; it is writethrough only. */ -RTEMS_INLINE_ROUTINE void _CPU_cache_flush_1_data_line(const void * d_addr) {} -RTEMS_INLINE_ROUTINE void _CPU_cache_flush_entire_data(void) {} +static inline void _CPU_cache_flush_1_data_line(const void * d_addr) {} +static inline void _CPU_cache_flush_entire_data(void) {} -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_1_data_line( +static inline void _CPU_cache_invalidate_1_data_line( const void * d_addr ) { @@ -88,27 +88,27 @@ RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_1_data_line( _CPU_CACR_OR(0x00000400); } -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_entire_data(void) +static inline void _CPU_cache_invalidate_entire_data(void) { _CPU_CACR_OR( 0x00000800 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_freeze_data(void) +static inline void _CPU_cache_freeze_data(void) { _CPU_CACR_OR( 0x00000200 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_unfreeze_data(void) +static inline void _CPU_cache_unfreeze_data(void) { _CPU_CACR_AND( 0xFFFFFDFF ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_enable_data(void) +static inline void _CPU_cache_enable_data(void) { _CPU_CACR_OR( 0x00000100 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_disable_data(void) +static inline void _CPU_cache_disable_data(void) { _CPU_CACR_AND( 0xFFFFFEFF ); } @@ -117,7 +117,7 @@ RTEMS_INLINE_ROUTINE void _CPU_cache_disable_data(void) /* Both the 68020 and 68030 have instruction caches */ -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_1_instruction_line( +static inline void _CPU_cache_invalidate_1_instruction_line( const void * d_addr ) { @@ -126,27 +126,27 @@ RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_1_instruction_line( _CPU_CACR_OR( 0x00000004 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_entire_instruction(void) +static inline void _CPU_cache_invalidate_entire_instruction(void) { _CPU_CACR_OR( 0x00000008 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_freeze_instruction(void) +static inline void _CPU_cache_freeze_instruction(void) { _CPU_CACR_OR( 0x00000002); } -RTEMS_INLINE_ROUTINE void _CPU_cache_unfreeze_instruction(void) +static inline void _CPU_cache_unfreeze_instruction(void) { _CPU_CACR_AND( 0xFFFFFFFD ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_enable_instruction(void) +static inline void _CPU_cache_enable_instruction(void) { _CPU_CACR_OR( 0x00000001 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_disable_instruction(void) +static inline void _CPU_cache_disable_instruction(void) { _CPU_CACR_AND( 0xFFFFFFFE ); } @@ -155,12 +155,12 @@ RTEMS_INLINE_ROUTINE void _CPU_cache_disable_instruction(void) #elif ( defined(__mc68040__) || defined (__mc68060__) ) /* Cannot be frozen */ -RTEMS_INLINE_ROUTINE void _CPU_cache_freeze_data(void) {} -RTEMS_INLINE_ROUTINE void _CPU_cache_unfreeze_data(void) {} -RTEMS_INLINE_ROUTINE void _CPU_cache_freeze_instruction(void) {} -RTEMS_INLINE_ROUTINE void _CPU_cache_unfreeze_instruction(void) {} +static inline void _CPU_cache_freeze_data(void) {} +static inline void _CPU_cache_unfreeze_data(void) {} +static inline void _CPU_cache_freeze_instruction(void) {} +static inline void _CPU_cache_unfreeze_instruction(void) {} -RTEMS_INLINE_ROUTINE void _CPU_cache_flush_1_data_line( +static inline void _CPU_cache_flush_1_data_line( const void * d_addr ) { @@ -168,7 +168,7 @@ RTEMS_INLINE_ROUTINE void _CPU_cache_flush_1_data_line( __asm__ volatile ( "cpushl %%dc,(%0)" :: "a" (p_address) ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_1_data_line( +static inline void _CPU_cache_invalidate_1_data_line( const void * d_addr ) { @@ -176,44 +176,44 @@ RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_1_data_line( __asm__ volatile ( "cinvl %%dc,(%0)" :: "a" (p_address) ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_flush_entire_data(void) +static inline void _CPU_cache_flush_entire_data(void) { __asm__ volatile ( "cpusha %%dc" :: ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_entire_data(void) +static inline void _CPU_cache_invalidate_entire_data(void) { __asm__ volatile ( "cinva %%dc" :: ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_enable_data(void) +static inline void _CPU_cache_enable_data(void) { _CPU_CACR_OR( 0x80000000 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_disable_data(void) +static inline void _CPU_cache_disable_data(void) { _CPU_CACR_AND( 0x7FFFFFFF ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_1_instruction_line( +static inline void _CPU_cache_invalidate_1_instruction_line( const void * i_addr ) { void * p_address = (void *) _CPU_virtual_to_physical( i_addr ); __asm__ volatile ( "cinvl %%ic,(%0)" :: "a" (p_address) ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_invalidate_entire_instruction(void) +static inline void _CPU_cache_invalidate_entire_instruction(void) { __asm__ volatile ( "cinva %%ic" :: ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_enable_instruction(void) +static inline void _CPU_cache_enable_instruction(void) { _CPU_CACR_OR( 0x00008000 ); } -RTEMS_INLINE_ROUTINE void _CPU_cache_disable_instruction(void) +static inline void _CPU_cache_disable_instruction(void) { _CPU_CACR_AND( 0xFFFF7FFF ); } diff --git a/bsps/m68k/shared/doxygen.h b/bsps/m68k/shared/doxygen.h index 573ec104ec..400a2852ca 100644 --- a/bsps/m68k/shared/doxygen.h +++ b/bsps/m68k/shared/doxygen.h @@ -1,4 +1,12 @@ /** + * @file + * + * @ingroup RTEMSImplDoxygen + * + * @brief This header file defines m68k-specific groups. + */ + +/** * @defgroup RTEMSBSPsM68k Motorola 68000 and NXP ColdFire (m68k) * * @ingroup RTEMSBSPs diff --git a/bsps/m68k/shared/m68kidle.c b/bsps/m68k/shared/m68kidle.c index 474437e3e7..54042d387e 100644 --- a/bsps/m68k/shared/m68kidle.c +++ b/bsps/m68k/shared/m68kidle.c @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /* * Motorola MC68xxx Dependent Idle Body Source * @@ -10,9 +12,26 @@ * COPYRIGHT (c) 1989-2002. * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * 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. */ #include <rtems/score/thread.h> diff --git a/bsps/m68k/shared/start/linkcmds.base b/bsps/m68k/shared/start/linkcmds.base index 9fa2d9662f..79f46367e9 100644 --- a/bsps/m68k/shared/start/linkcmds.base +++ b/bsps/m68k/shared/start/linkcmds.base @@ -1,9 +1,28 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /* - * Copyright (c) 2008, 2018 embedded brains GmbH. All rights reserved. + * Copyright (C) 2008, 2018 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. * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * 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. */ OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k") @@ -111,7 +130,7 @@ SECTIONS { } > REGION_TEXT AT > REGION_TEXT_LOAD .data.rel.ro : ALIGN_WITH_INPUT { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) - *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) + *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } > REGION_TEXT AT > REGION_TEXT_LOAD .jcr : ALIGN_WITH_INPUT { KEEP (*(.jcr)) @@ -245,7 +264,7 @@ SECTIONS { .noinit (NOLOAD) : ALIGN_WITH_INPUT { bsp_section_noinit_begin = .; - *(.noinit*) + *(SORT_BY_NAME (SORT_BY_ALIGNMENT (.noinit*))) bsp_section_noinit_end = .; } > REGION_DATA AT > REGION_DATA bsp_section_noinit_size = bsp_section_noinit_end - bsp_section_noinit_begin; diff --git a/bsps/m68k/shared/start/start.S b/bsps/m68k/shared/start/start.S index 3ee7917814..6389e278ea 100644 --- a/bsps/m68k/shared/start/start.S +++ b/bsps/m68k/shared/start/start.S @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /* entry.s * * This file contains the entry point for the application. @@ -8,9 +10,26 @@ * COPYRIGHT (c) 1989-1999. * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * 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. */ #include <rtems/asm.h> |