bsps/arm: Add BSP_START_VECTOR_RESERVED_SLOT

Allow BSPs to customize the reserved vector table slot.  By default, use
an undefined instruction.
This commit is contained in:
Sebastian Huber
2024-08-28 04:19:39 +02:00
parent 2174ec336a
commit 5d86677dfe
3 changed files with 25 additions and 2 deletions

View File

@@ -71,8 +71,11 @@ bsp_start_vector_table_begin:
ldr pc, .Lhandler_addr_prefetch
ldr pc, .Lhandler_addr_abort
/* Program signature checked by boot loader */
.word 0xb8a06f58
#ifdef BSP_START_VECTOR_RESERVED_SLOT
BSP_START_VECTOR_RESERVED_SLOT
#else
udf
#endif
ldr pc, .Lhandler_addr_irq
ldr pc, .Lhandler_addr_fiq

View File

@@ -0,0 +1,18 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
actions:
- get-integer: null
- format-and-define: null
build-type: option
copyrights:
- Copyright (C) 2024 embedded brains GmbH & Co. KG
default:
- enabled-by: bsps/arm/lpc24xx
value: .word 0xb8a06f58
description: |
Defines the content of the reserved slot in the vector table. Some targets
use it for a boot loader signature or checksum of the vector table entries.
enabled-by: true
format: '{}'
links: []
name: BSP_START_VECTOR_RESERVED_SLOT
type: build

View File

@@ -10,6 +10,8 @@ install-path: ${BSP_LIBDIR}
links:
- role: build-dependency
uid: optstartvecaddralign
- role: build-dependency
uid: optstartvecresvslot
source:
- bsps/arm/shared/start/start.S
target: start.o