Software APIs
flash_ctrl_info_pages.c
1 // Copyright lowRISC contributors (OpenTitan project).
2 // Licensed under the Apache License, Version 2.0, see LICENSE for details.
3 // SPDX-License-Identifier: Apache-2.0
4 
5 #include "sw/device/silicon_creator/lib/drivers/flash_ctrl.h"
6 
7 #include "flash_ctrl_regs.h"
8 
9 #define INFO_PAGE_STRUCT_(name_, bank_, page_) \
10  const flash_ctrl_info_page_t name_ = { \
11  .base_addr = (bank_)*FLASH_CTRL_PARAM_BYTES_PER_BANK + \
12  (page_)*FLASH_CTRL_PARAM_BYTES_PER_PAGE, \
13  .cfg_wen_offset = \
14  FLASH_CTRL_BANK##bank_##_INFO0_REGWEN_##page_##_REG_OFFSET, \
15  .cfg_offset = \
16  FLASH_CTRL_BANK##bank_##_INFO0_PAGE_CFG_##page_##_REG_OFFSET, \
17  };
18 
19 FLASH_CTRL_INFO_PAGES_DEFINE(INFO_PAGE_STRUCT_)
20 #undef INFO_PAGE_STRUCT_