qemu/include/hw/ppc/spapr_cpu_core.h
<<
>>
Prefs
   1/*
   2 * sPAPR CPU core device.
   3 *
   4 * Copyright (C) 2016 Bharata B Rao <bharata@linux.vnet.ibm.com>
   5 *
   6 * This work is licensed under the terms of the GNU GPL, version 2 or later.
   7 * See the COPYING file in the top-level directory.
   8 */
   9#ifndef HW_SPAPR_CPU_CORE_H
  10#define HW_SPAPR_CPU_CORE_H
  11
  12#include "hw/qdev.h"
  13#include "hw/cpu/core.h"
  14#include "target/ppc/cpu-qom.h"
  15
  16#define TYPE_SPAPR_CPU_CORE "spapr-cpu-core"
  17#define SPAPR_CPU_CORE(obj) \
  18    OBJECT_CHECK(sPAPRCPUCore, (obj), TYPE_SPAPR_CPU_CORE)
  19#define SPAPR_CPU_CORE_CLASS(klass) \
  20    OBJECT_CLASS_CHECK(sPAPRCPUCoreClass, (klass), TYPE_SPAPR_CPU_CORE)
  21#define SPAPR_CPU_CORE_GET_CLASS(obj) \
  22     OBJECT_GET_CLASS(sPAPRCPUCoreClass, (obj), TYPE_SPAPR_CPU_CORE)
  23
  24typedef struct sPAPRCPUCore {
  25    /*< private >*/
  26    CPUCore parent_obj;
  27
  28    /*< public >*/
  29    void *threads;
  30    int node_id;
  31} sPAPRCPUCore;
  32
  33typedef struct sPAPRCPUCoreClass {
  34    DeviceClass parent_class;
  35    ObjectClass *cpu_class;
  36} sPAPRCPUCoreClass;
  37
  38char *spapr_get_cpu_core_type(const char *model);
  39void spapr_cpu_core_class_init(ObjectClass *oc, void *data);
  40#endif
  41