ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_cac_regs.h
Go to the documentation of this file.
1
16
17#pragma once
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23#include <stdint.h>
24
25typedef enum : uintptr_t {
26 k_ra8_cac_base_addr = 0x40202400UL,
28
29typedef struct {
30 volatile uint8_t CACR0;
31 volatile uint8_t CACR1;
32 volatile uint8_t CACR2;
33 volatile uint8_t CAICR;
34 volatile uint8_t CASTR;
35 volatile uint8_t _r0;
36 volatile uint16_t CAULVR;
37 volatile uint16_t CALLVR;
38 volatile uint16_t CACNTBR;
40
42static inline volatile r_cac_regs_t* ra8_cac(void)
43{
44 return (volatile r_cac_regs_t*)k_ra8_cac_base_addr;
45}
46
47#ifdef __cplusplus
48}
49#endif
static volatile r_cac_regs_t * ra8_cac(void)
Get pointer to the CAC block.
ra8_cac_addr_t
@ k_ra8_cac_base_addr
RA8 cac base address.
volatile uint16_t CALLVR
+0x08 Lower Limit.
volatile uint8_t CACR0
+0x00 Control 0.
volatile uint16_t CAULVR
+0x06 Upper Limit.
volatile uint8_t _r0
Reserved.
volatile uint8_t CAICR
+0x03 Int Control.
volatile uint16_t CACNTBR
+0x0A Counter Buf.
volatile uint8_t CASTR
+0x04 Status.
volatile uint8_t CACR2
+0x02 Control 2.
volatile uint8_t CACR1
+0x01 Control 1.