Arrow / Mbed OS DAPLink Reset
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers daplink_addr.h Source File

daplink_addr.h

00001 /**
00002  * @file    daplink_addr.h
00003  * @brief   
00004  *
00005  * DAPLink Interface Firmware
00006  * Copyright (c) 2009-2016, ARM Limited, All Rights Reserved
00007  * SPDX-License-Identifier: Apache-2.0
00008  *
00009  * Licensed under the Apache License, Version 2.0 (the "License"); you may
00010  * not use this file except in compliance with the License.
00011  * You may obtain a copy of the License at
00012  *
00013  * http://www.apache.org/licenses/LICENSE-2.0
00014  *
00015  * Unless required by applicable law or agreed to in writing, software
00016  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
00017  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00018  * See the License for the specific language governing permissions and
00019  * limitations under the License.
00020  */
00021 
00022 #ifndef DAPLINK_ADDR_H
00023 #define DAPLINK_ADDR_H
00024 
00025 /* Device sizes */
00026 
00027 #define DAPLINK_ROM_START               0x00000000
00028 #define DAPLINK_ROM_SIZE                0x00010000
00029 
00030 #define DAPLINK_RAM_START               0x10000000
00031 #define DAPLINK_RAM_SIZE                (0x00002000 - DAPLINK_DEV_IAP_RESERVED)
00032 
00033 // region at the end of RAM1 used by IAP driver
00034 #define DAPLINK_DEV_IAP_RESERVED        0x00000020
00035 
00036 /* ROM sizes */
00037 
00038 #define DAPLINK_ROM_BL_START            0x00000000
00039 #define DAPLINK_ROM_BL_SIZE             0x00000000
00040 
00041 #define DAPLINK_ROM_CONFIG_ADMIN_START  0x00000000
00042 #define DAPLINK_ROM_CONFIG_ADMIN_SIZE   0x00000000
00043 
00044 #define DAPLINK_ROM_IF_START            0x00000000
00045 #define DAPLINK_ROM_IF_SIZE             0x0000F000
00046 
00047 #define DAPLINK_ROM_CONFIG_USER_START   0x0000F000
00048 #define DAPLINK_ROM_CONFIG_USER_SIZE    0x00001000
00049 
00050 /* RAM sizes */
00051 
00052 #define DAPLINK_RAM_APP_START           0x10000000
00053 #define DAPLINK_RAM_APP_SIZE            (0x00001F00 - DAPLINK_DEV_IAP_RESERVED)
00054 
00055 #define DAPLINK_RAM_SHARED_START        (0x10001F00 - DAPLINK_DEV_IAP_RESERVED)
00056 #define DAPLINK_RAM_SHARED_SIZE         0x00000100
00057 
00058 #define DAPLINK_RAM_APP2_START          0x20000000
00059 #define DAPLINK_RAM_APP2_SIZE           0x00000800
00060 
00061 /* Flash Programming Info */
00062 
00063 #define DAPLINK_SECTOR_SIZE             0x00000100
00064 #define DAPLINK_MIN_WRITE_SIZE          0x00000100
00065 
00066 /* Current build */
00067 
00068 #if defined(DAPLINK_BL)
00069 
00070 #define DAPLINK_ROM_APP_START            DAPLINK_ROM_BL_START
00071 #define DAPLINK_ROM_APP_SIZE             DAPLINK_ROM_BL_SIZE
00072 #define DAPLINK_ROM_UPDATE_START         DAPLINK_ROM_IF_START
00073 #define DAPLINK_ROM_UPDATE_SIZE          DAPLINK_ROM_IF_SIZE
00074 
00075 #elif defined(DAPLINK_IF)
00076 
00077 #define DAPLINK_ROM_APP_START            DAPLINK_ROM_IF_START
00078 #define DAPLINK_ROM_APP_SIZE             DAPLINK_ROM_IF_SIZE
00079 #define DAPLINK_ROM_UPDATE_START         DAPLINK_ROM_BL_START
00080 #define DAPLINK_ROM_UPDATE_SIZE          DAPLINK_ROM_BL_SIZE
00081 
00082 #else
00083 
00084 #error "Build must be either bootloader or interface"
00085 
00086 #endif
00087 
00088 #endif