blob: e419cc9b34ba0202f37fc0698939680c319702df [file] [log] [blame]
#ifndef __PLATFORM_CONFIG_H
#define __PLATFORM_CONFIG_H
#include "stdint.h"
/****************************************************/
/* supported platforms list */
/* DO NOT CHANGE THESE DEFINITIONS */
#define NXP_VALIDATION_BOARD (1)
#define HITEX_A2_BOARD (3)
/****************************************************/
/****************************************************/
/* used for the configuration checks */
/* DO NOT CHANGE THESE DEFINITIONS */
/****************************************************/
#define YES (1)
#define NO (2)
/****************************************************/
/* USER CONFIGURATION SECTION */
/****************************************************/
/* choose the platform you want to build against */
// #define PLATFORM NXP_VALIDATION_BOARD
#define PLATFORM HITEX_A2_BOARD
/* these definitions are being taken from the build rule */
#ifdef EXT_FLASH
#define USE_EXT_FLASH (YES)
#else
#define USE_EXT_FLASH (NO)
#endif
#ifdef EXT_STAT_MEM
#define USE_EXT_STATIC_MEM (YES)
#else
#define USE_EXT_STATIC_MEM (NO)
#endif
#ifdef EXT_DYN_MEM
#define USE_EXT_DYNAMIC_MEM (YES)
#else
#define USE_EXT_DYNAMIC_MEM (NO)
#endif
/* define if the M4 should download and start the M0 application */
/* set to YES if M4 should initialize M0 application */
/* set to NO if the debugger is downloading the M0 image, used for */
/* dual core debugging sessions */
#define INITIALIZE_M0_IMAGE (NO)
/* specify if need to prefill the M0 memory before download */
#define FILL_ROM_BEFORE_DOWNLOAD (NO)
#define FILL_RAM_BEFORE_DOWNLOAD (NO)
/* define if the M4 provides a mailbox system to the M0 */
/* M0 ---> M4 */
#define USE_M4_MAILBOX (NO)
/* configure which priority the mailbox interrupt should have on the M4 side */
/* cmsis definition, priority from 0 to 7 */
#define M4_MAILBOX_PRIORITY (0)
/* define if the M0 provides a mailbox system to the M4 */
/* M4 ---> M0 */
#define USE_M0_MAILBOX (NO)
/* configure which priority the mailbox interrupt should have on the M0 side */
/* cmsis definition, priority from 0 to 3 */
#define M0_MAILBOX_PRIORITY (0)
/* define if the system needs to exchange a parameter */
#define USE_MAILBOX_PARAMETER (NO)
/* define if the system needs to hook a callback, or just notify */
#define USE_MAILBOX_CALLBACK (NO)
/* memory map for the application */
/* !!! needs to be consistent with the scatter file !!! */
#ifdef EXT_FLASH
/************************************/
/* this is for the FLASH version */
/************************************/
/* 0x1C000000 M4 ROM 4Mbytes */
/* 0x1C3FFFFF */
/* 0x10000000 M4 RAM 96K */
/* 0x10017FFF */
#define M4_ROM_START 0x1C000000
#define M4_ROM_LEN 0x400000 /* 4 Mbytes */
#define M4_RAM_START 0x10000000 /* 96 Kbytes */
#define M4_RAM_LEN 0x18000
/* 0x10080000 M0 ROM 32K */
/* 0x10087FFF */
/* 0x10088000 M0 RAM 8K */
/* 0x10089FFF */
#define M0_ROM_START 0x10080000
#define M0_ROM_LEN 0x8000
#define M0_RAM_START 0x10088000
#define M0_RAM_LEN 0x2000
/* 0x20000000 M4 BUF 16K */
/* 0x20003FFF */
/* 0x20004000 M0 BUF 16K */
/* 0x20007FFF */
#define M4_BUF_START 0x20000000
#define M4_BUF_LEN 0x4000
#define M0_BUF_START 0x20004000
#define M0_BUF_LEN 0x4000
/* 0x20008000 M4 MBX 8K */
/* 0x20009FFF */
/* 0x2000A000 M0 MBX 8K */
/* 0x2000BFFF */
#define M4_MBX_START 0x20008000
#define M4_MBX_LEN 0x2000
#define M0_MBX_START 0x2000A000
#define M0_MBX_LEN 0x2000
#else
/*******************************/
/* this is for the ram version */
/*******************************/
/* 0x10000000 M4 ROM 64K */
/* 0x1000FFFF */
/* 0x10010000 M4 RAM 32K */
/* 0x10017FFF */
#define M4_ROM_START 0x10000000
#define M4_ROM_LEN 0x10000
#define M4_RAM_START 0x10010000
#define M4_RAM_LEN 0x8000
/* 0x10080000 M0 ROM 32K */
/* 0x10087FFF */
/* 0x10088000 M0 RAM 8K */
/* 0x10089FFF */
#define M0_ROM_START 0x10080000
#define M0_ROM_LEN 0x8000
#define M0_RAM_START 0x10088000
#define M0_RAM_LEN 0x2000
/* 0x20000000 M4 BUF 16K */
/* 0x20003FFF */
/* 0x20004000 M0 BUF 16K */
/* 0x20007FFF */
#define M4_BUF_START 0x20000000
#define M4_BUF_LEN 0x4000
#define M0_BUF_START 0x20004000
#define M0_BUF_LEN 0x4000
/* 0x20008000 M4 MBX 8K */
/* 0x20009FFF */
/* 0x2000A000 M0 MBX 8K */
/* 0x2000BFFF */
#define M4_MBX_START 0x20008000
#define M4_MBX_LEN 0x2000
#define M0_MBX_START 0x2000A000
#define M0_MBX_LEN 0x2000
#endif /* ifdef EXT_FLASH */
/****************************************************/
/* END OF USER CONFIGURATION */
/* DO NOT EDIT BELOW THIS LINE */
/****************************************************/
#define M4_IPC_TABLE M4_MBX_START
#define M0_IPC_TABLE M0_MBX_START
/* configure defines for local mailbox */
#if defined (CORE_M0) && (USE_M0_MAILBOX == YES)
#define PROVIDE_M0_LOCAL_MBX (1)
#endif
#if defined (CORE_M4) && (USE_M4_MAILBOX == YES)
#define PROVIDE_M4_LOCAL_MBX (1)
#endif
#if defined PROVIDE_M0_LOCAL_MBX || PROVIDE_M4_LOCAL_MBX
#define LOCAL_MAILBOX_ENABLED (1)
#endif
#if defined (CORE_M0) && (USE_M4_MAILBOX == YES)
#define PROVIDE_M0_REMOTE_MBX (1)
#endif
#if defined (CORE_M4) && (USE_M0_MAILBOX == YES)
#define PROVIDE_M4_REMOTE_MBX (1)
#endif
#if defined PROVIDE_M0_REMOTE_MBX || PROVIDE_M4_REMOTE_MBX
#define REMOTE_MAILBOX_ENABLED (1)
#endif
#if(USE_MAILBOX_PARAMETER == YES)
#define MBX_PARAM_DEFAULT ,0x0
#else
#define MBX_PARAM_DEFAULT
#endif
#define DUMMY_CALLBACK ,(mbxCallback_t) &dummyCallback
#if (USE_MAILBOX_CALLBACK == YES)
#define MBX_CALLBACK_DEFAULT DUMMY_CALLBACK
#else
#define MBX_CALLBACK_DEFAULT
#endif
/****************************************************/
/* platform wise initialization functions */
/****************************************************/
void platformInit(void);
#endif /* __PLATFORM_CONFIG_H */