2016-05-12 05:48:16 +02:00
|
|
|
/*
|
|
|
|
* CPU core abstract device
|
|
|
|
*
|
|
|
|
* Copyright (C) 2016 Bharata B Rao <bharata@linux.vnet.ibm.com>
|
|
|
|
*
|
|
|
|
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
|
|
|
* See the COPYING file in the top-level directory.
|
|
|
|
*/
|
|
|
|
#ifndef HW_CPU_CORE_H
|
|
|
|
#define HW_CPU_CORE_H
|
|
|
|
|
2019-08-12 07:23:51 +02:00
|
|
|
#include "hw/qdev-core.h"
|
2020-09-03 22:43:22 +02:00
|
|
|
#include "qom/object.h"
|
2016-05-12 05:48:16 +02:00
|
|
|
|
|
|
|
#define TYPE_CPU_CORE "cpu-core"
|
|
|
|
|
2020-09-03 22:43:22 +02:00
|
|
|
typedef struct CPUCore CPUCore;
|
2020-08-31 23:07:33 +02:00
|
|
|
DECLARE_INSTANCE_CHECKER(CPUCore, CPU_CORE,
|
|
|
|
TYPE_CPU_CORE)
|
2016-05-12 05:48:16 +02:00
|
|
|
|
2020-09-03 22:43:22 +02:00
|
|
|
struct CPUCore {
|
2016-05-12 05:48:16 +02:00
|
|
|
/*< private >*/
|
|
|
|
DeviceState parent_obj;
|
|
|
|
|
|
|
|
/*< public >*/
|
|
|
|
int core_id;
|
|
|
|
int nr_threads;
|
2020-09-03 22:43:22 +02:00
|
|
|
};
|
2016-05-12 05:48:16 +02:00
|
|
|
|
2016-06-23 23:23:34 +02:00
|
|
|
/* Note: topology field names need to be kept in sync with
|
|
|
|
* 'CpuInstanceProperties' */
|
|
|
|
|
2016-05-12 05:48:16 +02:00
|
|
|
#define CPU_CORE_PROP_CORE_ID "core-id"
|
|
|
|
|
|
|
|
#endif
|