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
  24#define SPAPR_CPU_CORE_TYPE_NAME(model) model "-" TYPE_SPAPR_CPU_CORE
  25
  26typedef struct sPAPRCPUCore {
  27    /*< private >*/
  28    CPUCore parent_obj;
  29
  30    /*< public >*/
  31    void *threads;
  32    int node_id;
  33} sPAPRCPUCore;
  34
  35typedef struct sPAPRCPUCoreClass {
  36    DeviceClass parent_class;
  37    const char *cpu_type;
  38} sPAPRCPUCoreClass;
  39
  40const char *spapr_get_cpu_core_type(const char *cpu_type);
  41#endif
  42