/* * Copyright (c) 2023 - 2024 MINRES Technologies GmbH * * SPDX-License-Identifier: Apache-2.0 * * Generated at 2024-03-28 11:32:47 UTC * by peakrdl_mnrs version 1.2.4 */ #ifndef _BSP_APB3ACLINT_H #define _BSP_APB3ACLINT_H #include typedef struct __attribute((__packed__)) { volatile uint32_t MSIP0; uint8_t fill1 [16380]; volatile uint32_t MTIMECMP0LO; volatile uint32_t MTIMECMP0HI; uint8_t fill3 [32752]; volatile uint32_t MTIME_LO; volatile uint32_t MTIME_HI; }apb3aclint_t; #define ACLINT_MSIP0_OFFS 0 #define ACLINT_MSIP0_MASK 0x1 #define ACLINT_MSIP0(V) ((V & ACLINT_MSIP0_MASK) << ACLINT_MSIP0_OFFS) #define ACLINT_MTIMECMP0LO_OFFS 0 #define ACLINT_MTIMECMP0LO_MASK 0xffffffff #define ACLINT_MTIMECMP0LO(V) ((V & ACLINT_MTIMECMP0LO_MASK) << ACLINT_MTIMECMP0LO_OFFS) #define ACLINT_MTIMECMP0HI_OFFS 0 #define ACLINT_MTIMECMP0HI_MASK 0xffffffff #define ACLINT_MTIMECMP0HI(V) ((V & ACLINT_MTIMECMP0HI_MASK) << ACLINT_MTIMECMP0HI_OFFS) #define ACLINT_MTIME_LO_OFFS 0 #define ACLINT_MTIME_LO_MASK 0xffffffff #define ACLINT_MTIME_LO(V) ((V & ACLINT_MTIME_LO_MASK) << ACLINT_MTIME_LO_OFFS) #define ACLINT_MTIME_HI_OFFS 0 #define ACLINT_MTIME_HI_MASK 0xffffffff #define ACLINT_MTIME_HI(V) ((V & ACLINT_MTIME_HI_MASK) << ACLINT_MTIME_HI_OFFS) //ACLINT_MSIP0 inline uint32_t get_aclint_msip0(volatile apb3aclint_t* reg){ return (reg->MSIP0 >> 0) & 0x1; } inline void set_aclint_msip0(volatile apb3aclint_t* reg, uint8_t value){ reg->MSIP0 = (reg->MSIP0 & ~(0x1U << 0)) | (value << 0); } //ACLINT_MTIMECMP0LO inline uint32_t get_aclint_mtimecmp0lo(volatile apb3aclint_t* reg){ return (reg->MTIMECMP0LO >> 0) & 0xffffffff; } inline void set_aclint_mtimecmp0lo(volatile apb3aclint_t* reg, uint32_t value){ reg->MTIMECMP0LO = (reg->MTIMECMP0LO & ~(0xffffffffU << 0)) | (value << 0); } //ACLINT_MTIMECMP0HI inline uint32_t get_aclint_mtimecmp0hi(volatile apb3aclint_t* reg){ return (reg->MTIMECMP0HI >> 0) & 0xffffffff; } inline void set_aclint_mtimecmp0hi(volatile apb3aclint_t* reg, uint32_t value){ reg->MTIMECMP0HI = (reg->MTIMECMP0HI & ~(0xffffffffU << 0)) | (value << 0); } //ACLINT_MTIME_LO inline uint32_t get_aclint_mtime_lo(volatile apb3aclint_t* reg){ return (reg->MTIME_LO >> 0) & 0xffffffff; } inline void set_aclint_mtime_lo(volatile apb3aclint_t* reg, uint32_t value){ reg->MTIME_LO = (reg->MTIME_LO & ~(0xffffffffU << 0)) | (value << 0); } //ACLINT_MTIME_HI inline uint32_t get_aclint_mtime_hi(volatile apb3aclint_t* reg){ return (reg->MTIME_HI >> 0) & 0xffffffff; } inline void set_aclint_mtime_hi(volatile apb3aclint_t* reg, uint32_t value){ reg->MTIME_HI = (reg->MTIME_HI & ~(0xffffffffU << 0)) | (value << 0); } #endif /* _BSP_APB3ACLINT_H */