1 /* 2 * Copyright (c) 2020 Raspberry Pi (Trading) Ltd. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef _HARDWARE_STRUCTS_IOBANK0_H 8 #define _HARDWARE_STRUCTS_IOBANK0_H 9 10 #include "hardware/address_mapped.h" 11 #include "hardware/platform_defs.h" 12 #include "hardware/regs/io_bank0.h" 13 14 typedef struct { 15 io_rw_32 inte[4]; 16 io_rw_32 intf[4]; 17 io_rw_32 ints[4]; 18 } io_irq_ctrl_hw_t; 19 20 /// \tag::iobank0_hw[] 21 typedef struct { 22 struct { 23 io_rw_32 status; 24 io_rw_32 ctrl; 25 } io[30]; 26 io_rw_32 intr[4]; 27 io_irq_ctrl_hw_t proc0_irq_ctrl; 28 io_irq_ctrl_hw_t proc1_irq_ctrl; 29 io_irq_ctrl_hw_t dormant_wake_irq_ctrl; 30 } iobank0_hw_t; 31 /// \end::iobank0_hw[] 32 33 #define iobank0_hw ((iobank0_hw_t *const)IO_BANK0_BASE) 34 35 #endif 36