flash/nor: add support for Nuvoton NPCX series flash
[fw/openocd] / contrib / loaders / flash / npcx / npcx_flash_config.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2
3 /*
4  * Copyright (C) 2021 by Nuvoton Technology Corporation
5  * Mulin Chao <mlchao@nuvoton.com>
6  * Wealian Liao <WHLIAO@nuvoton.com>
7  */
8
9 #ifndef OPENOCD_LOADERS_FLASH_NPCX_NPCX_FLASH_CONFIG_H
10 #define OPENOCD_LOADERS_FLASH_NPCX_NPCX_FLASH_CONFIG_H
11
12 #define NPCX_FLASH_ABORT_TIMEOUT 0xFFFFFF
13
14 /* NPCX chip information */
15 #define NPCX_FLASH_WRITE_SIZE 256L   /* One page size for write */
16 #define NPCX_FLASH_ERASE_SIZE 0x1000
17
18 /* NPCX flash loader information */
19 #define NPCX_FLASH_LOADER_WORKING_ADDR 0x200C0000
20 #define NPCX_FLASH_LOADER_PARAMS_ADDR NPCX_FLASH_LOADER_WORKING_ADDR
21 #define NPCX_FLASH_LOADER_PARAMS_SIZE 16
22 #define NPCX_FLASH_LOADER_BUFFER_ADDR (NPCX_FLASH_LOADER_PARAMS_ADDR + NPCX_FLASH_LOADER_PARAMS_SIZE)
23 #define NPCX_FLASH_LOADER_BUFFER_SIZE NPCX_FLASH_ERASE_SIZE
24 #define NPCX_FLASH_LOADER_PROGRAM_ADDR (NPCX_FLASH_LOADER_BUFFER_ADDR + NPCX_FLASH_LOADER_BUFFER_SIZE)
25 #define NPCX_FLASH_LOADER_PROGRAM_SIZE 0x1000
26
27 /* Stack size in byte. 4 byte size alignment */
28 #define NPCX_FLASH_LOADER_STACK_SIZE 400
29
30
31 #endif /* OPENOCD_LOADERS_FLASH_NPCX_NPCX_FLASH_CONFIG_H */