/* * Copyright (c) 2024 Google Inc * SPDX-License-Identifier: Apache-2.0 */ #ifndef INCLUDE_ZEPHYR_DRIVERS_BBRAM_IT8XXX2_H_ #define INCLUDE_ZEPHYR_DRIVERS_BBRAM_IT8XXX2_H_ #include #include /** Device config */ struct bbram_it8xxx2_config { /** BBRAM base address */ uintptr_t base_addr; /** BBRAM size (Unit:bytes) */ int size; }; #ifdef CONFIG_BBRAM_IT8XXX2_EMUL #define BBRAM_IT8XXX2_DECL_CONFIG(inst) \ static uint8_t bbram_it8xxx2_emul_buffer_##inst[DT_INST_REG_SIZE(inst)]; \ static const struct bbram_it8xxx2_config bbram_cfg_##inst = { \ .base_addr = (uintptr_t)bbram_it8xxx2_emul_buffer_##inst, \ .size = DT_INST_REG_SIZE(inst), \ } #else #define BBRAM_IT8XXX2_DECL_CONFIG(inst) \ static const struct bbram_it8xxx2_config bbram_cfg_##inst = { \ .base_addr = DT_INST_REG_ADDR(inst), \ .size = DT_INST_REG_SIZE(inst), \ } #endif #endif /* INCLUDE_ZEPHYR_DRIVERS_BBRAM_IT8XXX2_H_ */