mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 16:53:55 -06:00
ppc/spapr: QOM'ify sPAPRRTCState
Also use an 'sPAPRRTCState' attribute under the sPAPR machine to hold the RTC object. Overall, these changes remove an unnecessary and implicit dependency on SysBus. Signed-off-by: Cédric Le Goater <clg@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
3fa14fbe13
commit
147ff8079e
5 changed files with 33 additions and 49 deletions
|
@ -20,6 +20,18 @@ typedef struct sPAPREventSource sPAPREventSource;
|
|||
|
||||
#define SPAPR_TIMEBASE_FREQ 512000000ULL
|
||||
|
||||
#define TYPE_SPAPR_RTC "spapr-rtc"
|
||||
|
||||
#define SPAPR_RTC(obj) \
|
||||
OBJECT_CHECK(sPAPRRTCState, (obj), TYPE_SPAPR_RTC)
|
||||
|
||||
typedef struct sPAPRRTCState sPAPRRTCState;
|
||||
struct sPAPRRTCState {
|
||||
/*< private >*/
|
||||
DeviceState parent_obj;
|
||||
int64_t ns_offset;
|
||||
};
|
||||
|
||||
typedef struct sPAPRMachineClass sPAPRMachineClass;
|
||||
|
||||
#define TYPE_SPAPR_MACHINE "spapr-machine"
|
||||
|
@ -58,7 +70,7 @@ struct sPAPRMachineState {
|
|||
QLIST_HEAD(, sPAPRPHBState) phbs;
|
||||
struct sPAPRNVRAM *nvram;
|
||||
ICSState *ics;
|
||||
DeviceState *rtc;
|
||||
sPAPRRTCState rtc;
|
||||
|
||||
void *htab;
|
||||
uint32_t htab_shift;
|
||||
|
@ -629,11 +641,10 @@ struct sPAPRConfigureConnectorState {
|
|||
|
||||
void spapr_ccs_reset_hook(void *opaque);
|
||||
|
||||
#define TYPE_SPAPR_RTC "spapr-rtc"
|
||||
#define TYPE_SPAPR_RNG "spapr-rng"
|
||||
void spapr_rtc_read(sPAPRRTCState *rtc, struct tm *tm, uint32_t *ns);
|
||||
int spapr_rtc_import_offset(sPAPRRTCState *rtc, int64_t legacy_offset);
|
||||
|
||||
void spapr_rtc_read(DeviceState *dev, struct tm *tm, uint32_t *ns);
|
||||
int spapr_rtc_import_offset(DeviceState *dev, int64_t legacy_offset);
|
||||
#define TYPE_SPAPR_RNG "spapr-rng"
|
||||
|
||||
int spapr_rng_populate_dt(void *fdt);
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
#ifndef XICS_H
|
||||
#define XICS_H
|
||||
|
||||
#include "hw/sysbus.h"
|
||||
#include "hw/qdev.h"
|
||||
|
||||
#define XICS_IPI 0x2
|
||||
#define XICS_BUID 0x1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue