blob: 892df4d8c8acfee4f300bb5f4e9678e595acba74 (
plain) (
tree)
|
|
/**
* @file
*
* @brief CPU Initialize Context
*/
/*
* Copyright (c) 2011 Sebastian Huber. All rights reserved.
*
* embedded brains GmbH
* Obere Lagerstr. 30
* 82178 Puchheim
* Germany
* <rtems@embedded-brains.de>
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include <string.h>
#include <rtems/score/armv7m.h>
#include <rtems/score/thread.h>
#ifdef ARM_MULTILIB_ARCH_V7M
void _CPU_Context_Initialize(
Context_Control *context,
void *stack_area_begin,
size_t stack_area_size,
uint32_t new_level,
void (*entry_point)( void ),
bool is_fp
)
{
char *stack_area_end = (char *) stack_area_begin + stack_area_size;
memset(context, 0, sizeof(*context));
context->register_lr = entry_point;
context->register_sp = stack_area_end;
}
#endif /* ARM_MULTILIB_ARCH_V7M */
|