Skip to content

File startup_keil6.c

FileList > apollo510b > armclang > startup_keil6.c

Go to the source code of this file

Definitions for the Apollo5 vector table, interrupt handlers, and stack.

  • #include "apollo510.h"
  • #include "ns_ambiqsuite_harness.h"
  • #include "core_cm55.h"

Public Attributes

Type Name
uint32_t __INITIAL_SP
uint32_t __STACK_LIMIT
const uint32_t *const __pPatchable = (uint32\_t \*) \_\_VECTOR\_TABLE + AM\_PATCHABLE\_OFFSET
stacked_regs_t

Public Functions

Type Name
void Reset_Handler (void)
__NO_RETURN void __PROGRAM_START (void)
__attribute__ ((weak))
__attribute__ ((naked))
void am_default_isr (void)
void hardfault_handler_c (uint32_t * sp, uint32_t exc_return)

Public Static Functions

Type Name
void dump_callstack (uint32_t * sp, uint32_t * stack_limit, uint32_t * stack_top)
bool exc_frame_has_fp (uint32_t exc_return)
bool is_code_addr (uint32_t addr)
bool is_thumb_code (uint32_t addr)
void print_cfsr_details (uint32_t cfsr)
const char * which_stack (uint32_t exc_return)

Macros

Type Name
define AM_PATCHABLE_OFFSET (134 + 16 + 1)
define BT_MAX_FRAMES 16
define BT_SCAN_WORDS 256
define CODE_END (0x00800000UL)
define CODE_START (0x00410000UL)
define MANUAL_MAIN_STACK_LIMIT ((uint32\_t \*)(0x20080000UL - 0x00003000UL))
define MANUAL_MAIN_STACK_TOP ((uint32\_t \*)0x20080000UL)

Public Attributes Documentation

variable __INITIAL_SP

uint32_t __INITIAL_SP;

variable __STACK_LIMIT

uint32_t __STACK_LIMIT;

variable __pPatchable

const uint32_t* const __pPatchable;

variable stacked_regs_t

stacked_regs_t;

Public Functions Documentation

function Reset_Handler

void Reset_Handler (
    void
) 

function __PROGRAM_START

__NO_RETURN void __PROGRAM_START (
    void
) 

function __attribute__

__attribute__ (
    (weak)
) 

function __attribute__

__attribute__ (
    (naked)
) 

function am_default_isr

void am_default_isr (
    void
) 

function hardfault_handler_c

void hardfault_handler_c (
    uint32_t * sp,
    uint32_t exc_return
) 

Public Static Functions Documentation

function dump_callstack

static void dump_callstack (
    uint32_t * sp,
    uint32_t * stack_limit,
    uint32_t * stack_top
) 

function exc_frame_has_fp

static inline bool exc_frame_has_fp (
    uint32_t exc_return
) 

function is_code_addr

static inline bool is_code_addr (
    uint32_t addr
) 

function is_thumb_code

static inline bool is_thumb_code (
    uint32_t addr
) 

function print_cfsr_details

static void print_cfsr_details (
    uint32_t cfsr
) 

function which_stack

static inline const char * which_stack (
    uint32_t exc_return
) 

Macro Definition Documentation

define AM_PATCHABLE_OFFSET

#define AM_PATCHABLE_OFFSET `(134 + 16 + 1)`

define BT_MAX_FRAMES

#define BT_MAX_FRAMES `16`

define BT_SCAN_WORDS

#define BT_SCAN_WORDS `256`

define CODE_END

#define CODE_END `(0x00800000UL)`

define CODE_START

#define CODE_START `(0x00410000UL)`

define MANUAL_MAIN_STACK_LIMIT

#define MANUAL_MAIN_STACK_LIMIT `((uint32_t *)(0x20080000UL - 0x00003000UL))`

define MANUAL_MAIN_STACK_TOP

#define MANUAL_MAIN_STACK_TOP `((uint32_t *)0x20080000UL)`


The documentation for this class was generated from the following file neuralspot/neuralspot/ns-core/src/apollo510b/armclang/startup_keil6.c