1d26af5deSNiek Linnenbank /* 2d26af5deSNiek Linnenbank * Allwinner CPU Configuration Module emulation 3d26af5deSNiek Linnenbank * 4d26af5deSNiek Linnenbank * Copyright (C) 2019 Niek Linnenbank <nieklinnenbank@gmail.com> 5d26af5deSNiek Linnenbank * 6d26af5deSNiek Linnenbank * This program is free software: you can redistribute it and/or modify 7d26af5deSNiek Linnenbank * it under the terms of the GNU General Public License as published by 8d26af5deSNiek Linnenbank * the Free Software Foundation, either version 2 of the License, or 9d26af5deSNiek Linnenbank * (at your option) any later version. 10d26af5deSNiek Linnenbank * 11d26af5deSNiek Linnenbank * This program is distributed in the hope that it will be useful, 12d26af5deSNiek Linnenbank * but WITHOUT ANY WARRANTY; without even the implied warranty of 13d26af5deSNiek Linnenbank * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14d26af5deSNiek Linnenbank * GNU General Public License for more details. 15d26af5deSNiek Linnenbank * 16d26af5deSNiek Linnenbank * You should have received a copy of the GNU General Public License 17d26af5deSNiek Linnenbank * along with this program. If not, see <http://www.gnu.org/licenses/>. 18d26af5deSNiek Linnenbank */ 19d26af5deSNiek Linnenbank 20d26af5deSNiek Linnenbank #ifndef HW_MISC_ALLWINNER_CPUCFG_H 21d26af5deSNiek Linnenbank #define HW_MISC_ALLWINNER_CPUCFG_H 22d26af5deSNiek Linnenbank 23d26af5deSNiek Linnenbank #include "qom/object.h" 24d26af5deSNiek Linnenbank #include "hw/sysbus.h" 25d26af5deSNiek Linnenbank 26d26af5deSNiek Linnenbank /** 27d26af5deSNiek Linnenbank * Object model 28d26af5deSNiek Linnenbank * @{ 29d26af5deSNiek Linnenbank */ 30d26af5deSNiek Linnenbank 31d26af5deSNiek Linnenbank #define TYPE_AW_CPUCFG "allwinner-cpucfg" 32*8063396bSEduardo Habkost OBJECT_DECLARE_SIMPLE_TYPE(AwCpuCfgState, AW_CPUCFG) 33d26af5deSNiek Linnenbank 34d26af5deSNiek Linnenbank /** @} */ 35d26af5deSNiek Linnenbank 36d26af5deSNiek Linnenbank /** 37d26af5deSNiek Linnenbank * Allwinner CPU Configuration Module instance state 38d26af5deSNiek Linnenbank */ 39db1015e9SEduardo Habkost struct AwCpuCfgState { 40d26af5deSNiek Linnenbank /*< private >*/ 41d26af5deSNiek Linnenbank SysBusDevice parent_obj; 42d26af5deSNiek Linnenbank /*< public >*/ 43d26af5deSNiek Linnenbank 44d26af5deSNiek Linnenbank MemoryRegion iomem; 45d26af5deSNiek Linnenbank uint32_t gen_ctrl; 46d26af5deSNiek Linnenbank uint32_t super_standby; 47d26af5deSNiek Linnenbank uint32_t entry_addr; 48d26af5deSNiek Linnenbank 49db1015e9SEduardo Habkost }; 50d26af5deSNiek Linnenbank 51d26af5deSNiek Linnenbank #endif /* HW_MISC_ALLWINNER_CPUCFG_H */ 52