d9f8bbd8eb
This patch adds a "cpu-type" property to BCM2836 SoC in preparation for reusing the code for the Raspberry Pi 3, which has a different processor model. Signed-off-by: Pekka Enberg <penberg@iki.fi> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
37 lines
850 B
C
37 lines
850 B
C
/*
|
|
* Raspberry Pi emulation (c) 2012 Gregory Estrade
|
|
* Upstreaming code cleanup [including bcm2835_*] (c) 2013 Jan Petrous
|
|
*
|
|
* Rasperry Pi 2 emulation and refactoring Copyright (c) 2015, Microsoft
|
|
* Written by Andrew Baumann
|
|
*
|
|
* This code is licensed under the GNU GPLv2 and later.
|
|
*/
|
|
|
|
#ifndef BCM2836_H
|
|
#define BCM2836_H
|
|
|
|
#include "hw/arm/arm.h"
|
|
#include "hw/arm/bcm2835_peripherals.h"
|
|
#include "hw/intc/bcm2836_control.h"
|
|
|
|
#define TYPE_BCM2836 "bcm2836"
|
|
#define BCM2836(obj) OBJECT_CHECK(BCM2836State, (obj), TYPE_BCM2836)
|
|
|
|
#define BCM2836_NCPUS 4
|
|
|
|
typedef struct BCM2836State {
|
|
/*< private >*/
|
|
DeviceState parent_obj;
|
|
/*< public >*/
|
|
|
|
char *cpu_type;
|
|
uint32_t enabled_cpus;
|
|
|
|
ARMCPU cpus[BCM2836_NCPUS];
|
|
BCM2836ControlState control;
|
|
BCM2835PeripheralState peripherals;
|
|
} BCM2836State;
|
|
|
|
#endif /* BCM2836_H */
|