xref: /qemu/include/hw/misc/bcm2835_mphi.h (revision 8063396b)
13d46938bSPaul Zimmerman /*
23d46938bSPaul Zimmerman  * BCM2835 SOC MPHI state definitions
33d46938bSPaul Zimmerman  *
43d46938bSPaul Zimmerman  * Copyright (c) 2020 Paul Zimmerman <pauldzim@gmail.com>
53d46938bSPaul Zimmerman  *
63d46938bSPaul Zimmerman  * This program is free software; you can redistribute it and/or modify
73d46938bSPaul Zimmerman  * it under the terms of the GNU General Public License as published by
83d46938bSPaul Zimmerman  * the Free Software Foundation; either version 2 of the License, or
93d46938bSPaul Zimmerman  * (at your option) any later version.
103d46938bSPaul Zimmerman  *
113d46938bSPaul Zimmerman  * This program is distributed in the hope that it will be useful,
123d46938bSPaul Zimmerman  * but WITHOUT ANY WARRANTY; without even the implied warranty of
133d46938bSPaul Zimmerman  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
143d46938bSPaul Zimmerman  * GNU General Public License for more details.
153d46938bSPaul Zimmerman  */
163d46938bSPaul Zimmerman 
173d46938bSPaul Zimmerman #ifndef HW_MISC_BCM2835_MPHI_H
183d46938bSPaul Zimmerman #define HW_MISC_BCM2835_MPHI_H
193d46938bSPaul Zimmerman 
203d46938bSPaul Zimmerman #include "hw/irq.h"
213d46938bSPaul Zimmerman #include "hw/sysbus.h"
22db1015e9SEduardo Habkost #include "qom/object.h"
233d46938bSPaul Zimmerman 
243d46938bSPaul Zimmerman #define MPHI_MMIO_SIZE      0x1000
253d46938bSPaul Zimmerman 
263d46938bSPaul Zimmerman typedef struct BCM2835MphiState BCM2835MphiState;
273d46938bSPaul Zimmerman 
283d46938bSPaul Zimmerman struct BCM2835MphiState {
293d46938bSPaul Zimmerman     SysBusDevice parent_obj;
303d46938bSPaul Zimmerman     qemu_irq irq;
313d46938bSPaul Zimmerman     MemoryRegion iomem;
323d46938bSPaul Zimmerman 
333d46938bSPaul Zimmerman     uint32_t outdda;
343d46938bSPaul Zimmerman     uint32_t outddb;
353d46938bSPaul Zimmerman     uint32_t ctrl;
363d46938bSPaul Zimmerman     uint32_t intstat;
373d46938bSPaul Zimmerman     uint32_t swirq;
383d46938bSPaul Zimmerman };
393d46938bSPaul Zimmerman 
403d46938bSPaul Zimmerman #define TYPE_BCM2835_MPHI   "bcm2835-mphi"
413d46938bSPaul Zimmerman 
42*8063396bSEduardo Habkost OBJECT_DECLARE_SIMPLE_TYPE(BCM2835MphiState, BCM2835_MPHI)
433d46938bSPaul Zimmerman 
443d46938bSPaul Zimmerman #endif
45