dRonin  adbada4
dRonin firmware
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
loadable.c File Reference
#include "openpilot.h"
#include <stdbool.h>
#include "pios_thread.h"
#include "loadable_extension.h"
#include "modulesettings.h"

Go to the source code of this file.

Macros

#define MOD_RAM_BEGIN   0x10000000
 
#define MOD_RODATA_BEGIN   0x20000000
 
#define MOD_CALLS_BEGIN   0xdf000000
 
#define CALL_DO_DUMB_TEST_DELAY   0xdf000001
 
#define CALL_PIOS_THREAD_CREATE   0xdf000003
 
#define CALL_PIOS_THREAD_SLEEP   0xdf000005
 
#define CALL_DO_DUMB_REGTASK   0xdf000007
 
#define CALL_ANNUNC_CUSTOM   0xdf000009
 
#define EXCEPTION_STACK_PC_OFFSET   6
 

Functions

static int32_t loadable_initialize (void)
 
static uint32_t construct_trampoline (struct loadable_extension *ext, void *data_seg, uint32_t got_addr)
 
static void * layout_extension_ram (struct loadable_extension *ext)
 
static void invoke_one_loadable (struct loadable_extension *ext)
 
static void invoke_loadables ()
 
static int32_t loadable_start (void)
 
static void do_dumb_regtask (struct pios_thread *h)
 
static void do_dumb_test_delay (int cycles)
 
void MemManageHandler_C (uint32_t *exception_stack)
 
void MemManageVector (void)
 

Variables

static bool module_enabled
 

Detailed Description

Author
dRonin, http://dRonin.org/, Copyright (C) 2017

Definition in file loadable.c.