v2.3.1 (RP2350)
Loading...
Searching...
No Matches
Go to the documentation of this file.
7#ifndef _HARDWARE_HAZARD3_H
8#define _HARDWARE_HAZARD3_H
14#include "hardware/regs/rvcsr.h"
32#ifdef __hazard3_extension_xh3irq
33#define hazard3_irqarray_read(csr, index) (riscv_read_set_csr(csr, (index)) >> 16)
35#define hazard3_irqarray_read(csr, index) static_assert(false, "Not supported: Xh3irq extension")
38#ifdef __hazard3_extension_xh3irq
39#define hazard3_irqarray_write(csr, index, data) (riscv_write_csr(csr, (index) | ((uint32_t)(data) << 16)))
41#define hazard3_irqarray_write(csr, index, data) static_assert(false, "Not supported: Xh3irq extension")
44#ifdef __hazard3_extension_xh3irq
45#define hazard3_irqarray_set(csr, index, data) (riscv_set_csr(csr, (index) | ((uint32_t)(data) << 16)))
47#define hazard3_irqarray_set(csr, index, data) static_assert(false, "Not supported: Xh3irq extension")
50#ifdef __hazard3_extension_xh3irq
51#define hazard3_irqarray_clear(csr, index, data) (riscv_clear_csr(csr, (index) | ((uint32_t)(data) << 16)))
53#define hazard3_irqarray_clear(csr, index, data) static_assert(false, "Not supported: Xh3irq extension")