这篇教程C++ APICCommonClass类代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中APICCommonClass类的典型用法代码示例。如果您正苦于以下问题:C++ APICCommonClass类的具体用法?C++ APICCommonClass怎么用?C++ APICCommonClass使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。 在下文中一共展示了APICCommonClass类的21个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: apic_deliver_nmivoid apic_deliver_nmi(DeviceState *dev){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); info->external_nmi(s);}
开发者ID:C2Devel,项目名称:qemu-kvm,代码行数:7,
示例2: apic_common_realizestatic void apic_common_realize(DeviceState *dev, Error **errp){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info; static DeviceState *vapic; static int apic_no; static bool mmio_registered; if (apic_no >= MAX_APICS) { error_setg(errp, "%s initialization failed.", object_get_typename(OBJECT(dev))); return; } s->idx = apic_no++; info = APIC_COMMON_GET_CLASS(s); info->realize(dev, errp); if (!mmio_registered) { ICCBus *b = ICC_BUS(qdev_get_parent_bus(dev)); memory_region_add_subregion(b->apic_address_space, 0, &s->io_memory); mmio_registered = true; } /* Note: We need at least 1M to map the VAPIC option ROM */ if (!vapic && s->vapic_control & VAPIC_ENABLE_MASK && ram_size >= 1024 * 1024) { vapic = sysbus_create_simple("kvmvapic", -1, NULL); } s->vapic = vapic; if (apic_report_tpr_access && info->enable_tpr_reporting) { info->enable_tpr_reporting(s, true); }}
开发者ID:C2Devel,项目名称:qemu-kvm,代码行数:34,
示例3: apic_common_realizestatic void apic_common_realize(DeviceState *dev, Error **errp){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info; static DeviceState *vapic; static int apic_no; if (apic_no >= MAX_APICS) { error_setg(errp, "%s initialization failed.", object_get_typename(OBJECT(dev))); return; } s->idx = apic_no++; info = APIC_COMMON_GET_CLASS(s); info->realize(dev, errp); /* Note: We need at least 1M to map the VAPIC option ROM */ if (!vapic && s->vapic_control & VAPIC_ENABLE_MASK && ram_size >= 1024 * 1024) { vapic = sysbus_create_simple("kvmvapic", -1, NULL); } s->vapic = vapic; if (apic_report_tpr_access && info->enable_tpr_reporting) { info->enable_tpr_reporting(s, true); }}
开发者ID:01org,项目名称:qemu-lite,代码行数:28,
示例4: apic_common_realizestatic void apic_common_realize(DeviceState *dev, Error **errp){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info; static DeviceState *vapic; int instance_id = s->id; info = APIC_COMMON_GET_CLASS(s); info->realize(dev, errp); /* Note: We need at least 1M to map the VAPIC option ROM */ if (!vapic && s->vapic_control & VAPIC_ENABLE_MASK && !hax_enabled() && ram_size >= 1024 * 1024) { vapic = sysbus_create_simple("kvmvapic", -1, NULL); } s->vapic = vapic; if (apic_report_tpr_access && info->enable_tpr_reporting) { info->enable_tpr_reporting(s, true); } if (s->legacy_instance_id) { instance_id = -1; } vmstate_register_with_alias_id(NULL, instance_id, &vmstate_apic_common, s, -1, 0, NULL);}
开发者ID:8tab,项目名称:qemu,代码行数:26,
示例5: apic_enable_vapicvoid apic_enable_vapic(DeviceState *dev, hwaddr paddr){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); s->vapic_paddr = paddr; info->vapic_base_update(s);}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:8,
示例6: cpu_set_apic_basevoid cpu_set_apic_base(struct uc_struct *uc, DeviceState *dev, uint64_t val){ if (dev) { APICCommonState *s = APIC_COMMON(uc, dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(uc, s); info->set_base(s, val); }}
开发者ID:Jonnyliu,项目名称:unicorn,代码行数:8,
示例7: apic_enable_vapicvoid apic_enable_vapic(DeviceState *d, hwaddr paddr){ APICCommonState *s = DO_UPCAST(APICCommonState, busdev.qdev, d); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); s->vapic_paddr = paddr; info->vapic_base_update(s);}
开发者ID:BreakawayConsulting,项目名称:QEMU,代码行数:8,
示例8: apic_dispatch_pre_savestatic void apic_dispatch_pre_save(void *opaque){ APICCommonState *s = APIC_COMMON(opaque); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); if (info->pre_save) { info->pre_save(s); }}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:9,
示例9: apic_enable_tpr_access_reportingvoid apic_enable_tpr_access_reporting(DeviceState *dev, bool enable){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); apic_report_tpr_access = enable; if (info->enable_tpr_reporting) { info->enable_tpr_reporting(s, enable); }}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:10,
示例10: apic_dispatch_post_loadstatic int apic_dispatch_post_load(void *opaque, int version_id){ APICCommonState *s = APIC_COMMON(opaque); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); if (info->post_load) { info->post_load(s); } return 0;}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:10,
示例11: cpu_set_apic_basevoid cpu_set_apic_base(DeviceState *dev, uint64_t val){ trace_cpu_set_apic_base(val); if (dev) { APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); info->set_base(s, val); }}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:10,
示例12: apic_enable_tpr_access_reportingvoid apic_enable_tpr_access_reporting(DeviceState *d, bool enable){ APICCommonState *s = DO_UPCAST(APICCommonState, busdev.qdev, d); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); apic_report_tpr_access = enable; if (info->enable_tpr_reporting) { info->enable_tpr_reporting(s, enable); }}
开发者ID:BreakawayConsulting,项目名称:QEMU,代码行数:10,
示例13: apic_common_unrealizestatic void apic_common_unrealize(DeviceState *dev, Error **errp){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); vmstate_unregister(NULL, &vmstate_apic_common, s); info->unrealize(dev, errp); if (apic_report_tpr_access && info->enable_tpr_reporting) { info->enable_tpr_reporting(s, false); }}
开发者ID:AppliedMicro,项目名称:qemu,代码行数:12,
示例14: cpu_get_apic_tpruint8_t cpu_get_apic_tpr(DeviceState *dev){ APICCommonState *s; APICCommonClass *info; if (!dev) { return 0; } s = APIC_COMMON(dev); info = APIC_COMMON_GET_CLASS(s); return info->get_tpr(s);}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:14,
示例15: cpu_set_apic_tprvoid cpu_set_apic_tpr(DeviceState *dev, uint8_t val){ APICCommonState *s; APICCommonClass *info; if (!dev) { return; } s = APIC_COMMON(dev); info = APIC_COMMON_GET_CLASS(s); info->set_tpr(s, val);}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:14,
示例16: apic_reset_commonstatic void apic_reset_common(DeviceState *dev){ APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); uint32_t bsp; bsp = s->apicbase & MSR_IA32_APICBASE_BSP; s->apicbase = APIC_DEFAULT_ADDRESS | bsp | MSR_IA32_APICBASE_ENABLE; s->vapic_paddr = 0; info->vapic_base_update(s); apic_init_reset(dev);}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:14,
示例17: cpu_set_apic_basevoid cpu_set_apic_base(DeviceState *dev, uint64_t val){ trace_cpu_set_apic_base(val); if (dev) { APICCommonState *s = APIC_COMMON(dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); /* switching to x2APIC, reset possibly modified xAPIC ID */ if (!(s->apicbase & MSR_IA32_APICBASE_EXTD) && (val & MSR_IA32_APICBASE_EXTD)) { s->id = s->initial_apic_id; } info->set_base(s, val); }}
开发者ID:8tab,项目名称:qemu,代码行数:15,
示例18: apic_load_old/* This function is only used for old state version 1 and 2 */static int apic_load_old(QEMUFile *f, void *opaque, int version_id){ APICCommonState *s = opaque; APICCommonClass *info = APIC_COMMON_GET_CLASS(s); int i; if (version_id > 2) { return -EINVAL; } /* XXX: what if the base changes? (registered memory regions) */ qemu_get_be32s(f, &s->apicbase); qemu_get_8s(f, &s->id); qemu_get_8s(f, &s->arb_id); qemu_get_8s(f, &s->tpr); qemu_get_be32s(f, &s->spurious_vec); qemu_get_8s(f, &s->log_dest); qemu_get_8s(f, &s->dest_mode); for (i = 0; i < 8; i++) { qemu_get_be32s(f, &s->isr[i]); qemu_get_be32s(f, &s->tmr[i]); qemu_get_be32s(f, &s->irr[i]); } for (i = 0; i < APIC_LVT_NB; i++) { qemu_get_be32s(f, &s->lvt[i]); } qemu_get_be32s(f, &s->esr); qemu_get_be32s(f, &s->icr[0]); qemu_get_be32s(f, &s->icr[1]); qemu_get_be32s(f, &s->divide_conf); s->count_shift = qemu_get_be32(f); qemu_get_be32s(f, &s->initial_count); s->initial_count_load_time = qemu_get_be64(f); s->next_time = qemu_get_be64(f); if (version_id >= 2) { s->timer_expiry = qemu_get_be64(f); } if (info->post_load) { info->post_load(s); } return 0;}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:45,
示例19: apic_init_resetvoid apic_init_reset(DeviceState *dev){ APICCommonState *s; APICCommonClass *info; int i; if (!dev) { return; } s = APIC_COMMON(dev); s->tpr = 0; s->spurious_vec = 0xff; s->log_dest = 0; s->dest_mode = 0xf; memset(s->isr, 0, sizeof(s->isr)); memset(s->tmr, 0, sizeof(s->tmr)); memset(s->irr, 0, sizeof(s->irr)); for (i = 0; i < APIC_LVT_NB; i++) { s->lvt[i] = APIC_LVT_MASKED; } s->esr = 0; memset(s->icr, 0, sizeof(s->icr)); s->divide_conf = 0; s->count_shift = 0; s->initial_count = 0; s->initial_count_load_time = 0; s->next_time = 0; s->wait_for_sipi = !cpu_is_bsp(s->cpu); if (s->timer) { timer_del(s->timer); } s->timer_expiry = -1; info = APIC_COMMON_GET_CLASS(s); if (info->reset) { info->reset(s); }}
开发者ID:32bitmicro,项目名称:riscv-qemu,代码行数:39,
示例20: apic_reset_commonstatic void apic_reset_common(struct uc_struct *uc, DeviceState *dev){ APICCommonState *s = APIC_COMMON(uc, dev); APICCommonClass *info = APIC_COMMON_GET_CLASS(uc, s); bool bsp; bsp = cpu_is_bsp(s->cpu); s->apicbase = APIC_DEFAULT_ADDRESS | (bsp ? MSR_IA32_APICBASE_BSP : 0) | MSR_IA32_APICBASE_ENABLE; s->vapic_paddr = 0; info->vapic_base_update(s); apic_init_reset(uc, dev); if (bsp) { /* * LINT0 delivery mode on CPU #0 is set to ExtInt at initialization * time typically by BIOS, so PIC interrupt can be delivered to the * processor when local APIC is enabled. */ s->lvt[APIC_LVT_LINT0] = 0x700; }}
开发者ID:Jonnyliu,项目名称:unicorn,代码行数:24,
示例21: apic_reset_commonstatic void apic_reset_common(DeviceState *d){ APICCommonState *s = DO_UPCAST(APICCommonState, busdev.qdev, d); APICCommonClass *info = APIC_COMMON_GET_CLASS(s); bool bsp; bsp = cpu_is_bsp(s->cpu); s->apicbase = 0xfee00000 | (bsp ? MSR_IA32_APICBASE_BSP : 0) | MSR_IA32_APICBASE_ENABLE; s->vapic_paddr = 0; info->vapic_base_update(s); apic_init_reset(d); if (bsp) { /* * LINT0 delivery mode on CPU #0 is set to ExtInt at initialization * time typically by BIOS, so PIC interrupt can be delivered to the * processor when local APIC is enabled. */ s->lvt[APIC_LVT_LINT0] = 0x700; }}
开发者ID:BreakawayConsulting,项目名称:QEMU,代码行数:24,
注:本文中的APICCommonClass类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ APInt类代码示例 C++ APDU类代码示例 |