Lines Matching refs:pcms

346 static void set_boot_dev(PCMachineState *pcms, MC146818RtcState *s,  in set_boot_dev()  argument
367 mc146818rtc_set_cmos_data(s, 0x38, (bds[2] << 4) | !pcms->fd_bootchk); in set_boot_dev()
372 PCMachineState *pcms = opaque; in pc_boot_set() local
373 X86MachineState *x86ms = X86_MACHINE(pcms); in pc_boot_set()
375 set_boot_dev(pcms, MC146818_RTC(x86ms->rtc), boot_device, errp); in pc_boot_set()
478 static void pc_cmos_init_late(PCMachineState *pcms) in pc_cmos_init_late() argument
480 X86MachineState *x86ms = X86_MACHINE(pcms); in pc_cmos_init_late()
488 if (pcms->idebus[0] && in pc_cmos_init_late()
489 ide_get_geometry(pcms->idebus[0], 0, in pc_cmos_init_late()
494 if (pcms->idebus[0] && in pc_cmos_init_late()
495 ide_get_geometry(pcms->idebus[0], 1, in pc_cmos_init_late()
508 BusState *idebus = pcms->idebus[i / 2]; in pc_cmos_init_late()
604 PCMachineState *pcms = container_of(notifier, in pc_machine_done() local
606 X86MachineState *x86ms = X86_MACHINE(pcms); in pc_machine_done()
608 cxl_hook_up_pxb_registers(pcms->pcibus, &pcms->cxl_devices_state, in pc_machine_done()
611 if (pcms->cxl_devices_state.is_enabled) { in pc_machine_done()
612 cxl_fmws_link_targets(&pcms->cxl_devices_state, &error_fatal); in pc_machine_done()
618 pci_bus_add_fw_cfg_extra_pci_roots(x86ms->fw_cfg, pcms->pcibus, in pc_machine_done()
623 fw_cfg_build_smbios(pcms, x86ms->fw_cfg, pcms->smbios_entry_point_type); in pc_machine_done()
625 fw_cfg_build_feature_control(MACHINE(pcms), x86ms->fw_cfg); in pc_machine_done()
630 pc_cmos_init_late(pcms); in pc_machine_done()
642 void xen_load_linux(PCMachineState *pcms) in xen_load_linux() argument
646 PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms); in xen_load_linux()
647 X86MachineState *x86ms = X86_MACHINE(pcms); in xen_load_linux()
649 assert(MACHINE(pcms)->kernel_filename != NULL); in xen_load_linux()
674 static hwaddr pc_above_4g_end(PCMachineState *pcms) in pc_above_4g_end() argument
676 X86MachineState *x86ms = X86_MACHINE(pcms); in pc_above_4g_end()
678 if (pcms->sgx_epc.size != 0) { in pc_above_4g_end()
679 return sgx_epc_above_4g_end(&pcms->sgx_epc); in pc_above_4g_end()
685 static void pc_get_device_memory_range(PCMachineState *pcms, in pc_get_device_memory_range() argument
689 MachineState *machine = MACHINE(pcms); in pc_get_device_memory_range()
694 addr = ROUND_UP(pc_above_4g_end(pcms), 1 * GiB); in pc_get_device_memory_range()
703 static uint64_t pc_get_cxl_range_start(PCMachineState *pcms) in pc_get_cxl_range_start() argument
705 PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms); in pc_get_cxl_range_start()
706 MachineState *ms = MACHINE(pcms); in pc_get_cxl_range_start()
712 pc_get_device_memory_range(pcms, &cxl_base, &size); in pc_get_cxl_range_start()
715 cxl_base = pc_above_4g_end(pcms); in pc_get_cxl_range_start()
721 static uint64_t pc_get_cxl_range_end(PCMachineState *pcms) in pc_get_cxl_range_end() argument
723 uint64_t start = pc_get_cxl_range_start(pcms) + MiB; in pc_get_cxl_range_end()
725 if (pcms->cxl_devices_state.fixed_windows) { in pc_get_cxl_range_end()
729 for (it = pcms->cxl_devices_state.fixed_windows; it; it = it->next) { in pc_get_cxl_range_end()
738 static hwaddr pc_max_used_gpa(PCMachineState *pcms, uint64_t pci_hole64_size) in pc_max_used_gpa() argument
741 PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms); in pc_max_used_gpa()
742 MachineState *ms = MACHINE(pcms); in pc_max_used_gpa()
767 pc_get_device_memory_range(pcms, &devmem_start, &devmem_size); in pc_max_used_gpa()
773 return pc_above_4g_end(pcms) - 1; in pc_max_used_gpa()
810 void pc_memory_init(PCMachineState *pcms, in pc_memory_init() argument
819 MachineState *machine = MACHINE(pcms); in pc_memory_init()
821 PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms); in pc_memory_init()
822 X86MachineState *x86ms = X86_MACHINE(pcms); in pc_memory_init()
840 if (pc_max_used_gpa(pcms, pci_hole64_size) >= AMD_HT_START) { in pc_memory_init()
857 maxusedaddr = pc_max_used_gpa(pcms, pci_hole64_size); in pc_memory_init()
887 if (pcms->sgx_epc.size != 0) { in pc_memory_init()
888 e820_add_entry(pcms->sgx_epc.base, pcms->sgx_epc.size, E820_RESERVED); in pc_memory_init()
919 pc_get_device_memory_range(pcms, &device_mem_base, &device_mem_size); in pc_memory_init()
929 if (pcms->cxl_devices_state.is_enabled) { in pc_memory_init()
930 MemoryRegion *mr = &pcms->cxl_devices_state.host_mr; in pc_memory_init()
933 cxl_base = pc_get_cxl_range_start(pcms); in pc_memory_init()
937 if (pcms->cxl_devices_state.fixed_windows) { in pc_memory_init()
942 for (it = pcms->cxl_devices_state.fixed_windows; it; it = it->next) { in pc_memory_init()
956 pc_system_firmware_init(pcms, rom_memory); in pc_memory_init()
985 if (pcms->cxl_devices_state.is_enabled) { in pc_memory_init()
1008 pcms->memhp_io_base = ACPI_MEMORY_HOTPLUG_BASE; in pc_memory_init()
1017 PCMachineState *pcms = PC_MACHINE(qdev_get_machine()); in pc_pci_hole64_start() local
1018 PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms); in pc_pci_hole64_start()
1019 MachineState *ms = MACHINE(pcms); in pc_pci_hole64_start()
1023 if (pcms->cxl_devices_state.is_enabled) { in pc_pci_hole64_start()
1024 hole64_start = pc_get_cxl_range_end(pcms); in pc_pci_hole64_start()
1026 pc_get_device_memory_range(pcms, &hole64_start, &size); in pc_pci_hole64_start()
1029 hole64_start = pc_above_4g_end(pcms); in pc_pci_hole64_start()
1125 void pc_basic_device_init(struct PCMachineState *pcms, in pc_basic_device_init() argument
1138 X86MachineState *x86ms = X86_MACHINE(pcms); in pc_basic_device_init()
1149 if (pcms->hpet_enabled) { in pc_basic_device_init()
1181 object_property_add_alias(OBJECT(pcms), "rtc-time", OBJECT(rtc_state), in pc_basic_device_init()
1190 if (pcms->pcibus) { in pc_basic_device_init()
1191 pci_create_simple(pcms->pcibus, -1, "xen-platform"); in pc_basic_device_init()
1197 qemu_register_boot_set(pc_boot_set, pcms); in pc_basic_device_init()
1198 set_boot_dev(pcms, MC146818_RTC(rtc_state), in pc_basic_device_init()
1199 MACHINE(pcms)->boot_config.order, &error_fatal); in pc_basic_device_init()
1212 object_property_set_link(OBJECT(pcms->pcspk), "pit", in pc_basic_device_init()
1214 isa_realize_and_unref(pcms->pcspk, isa_bus, &error_fatal); in pc_basic_device_init()
1217 if (pcms->vmport == ON_OFF_AUTO_AUTO) { in pc_basic_device_init()
1218 pcms->vmport = (xen_enabled() || !pcms->i8042_enabled) in pc_basic_device_init()
1223 pc_superio_init(isa_bus, create_fdctrl, pcms->i8042_enabled, in pc_basic_device_init()
1224 pcms->vmport != ON_OFF_AUTO_ON, &error_fatal); in pc_basic_device_init()
1226 pcms->machine_done.notify = pc_machine_done; in pc_basic_device_init()
1227 qemu_add_machine_init_done_notifier(&pcms->machine_done); in pc_basic_device_init()
1301 PCMachineState *pcms = PC_MACHINE(hotplug_dev); in pc_memory_plug() local
1306 pc_dimm_plug(PC_DIMM(dev), MACHINE(pcms)); in pc_memory_plug()
1343 PCMachineState *pcms = PC_MACHINE(hotplug_dev); in pc_memory_unplug() local
1352 pc_dimm_unplug(PC_DIMM(dev), MACHINE(pcms)); in pc_memory_unplug()
1395 PCMachineState *pcms = PC_MACHINE(hotplug_dev); in pc_machine_device_pre_plug_cb() local
1397 if (pcms->iommu) { in pc_machine_device_pre_plug_cb()
1402 pcms->iommu = dev; in pc_machine_device_pre_plug_cb()
1471 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_vmport() local
1472 OnOffAuto vmport = pcms->vmport; in pc_machine_get_vmport()
1480 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_vmport() local
1482 visit_type_OnOffAuto(v, name, &pcms->vmport, errp); in pc_machine_set_vmport()
1487 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_fd_bootchk() local
1489 return pcms->fd_bootchk; in pc_machine_get_fd_bootchk()
1494 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_fd_bootchk() local
1496 pcms->fd_bootchk = value; in pc_machine_set_fd_bootchk()
1501 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_smbus() local
1503 return pcms->smbus_enabled; in pc_machine_get_smbus()
1508 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_smbus() local
1510 pcms->smbus_enabled = value; in pc_machine_set_smbus()
1515 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_sata() local
1517 return pcms->sata_enabled; in pc_machine_get_sata()
1522 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_sata() local
1524 pcms->sata_enabled = value; in pc_machine_set_sata()
1529 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_hpet() local
1531 return pcms->hpet_enabled; in pc_machine_get_hpet()
1536 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_hpet() local
1538 pcms->hpet_enabled = value; in pc_machine_set_hpet()
1543 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_i8042() local
1545 return pcms->i8042_enabled; in pc_machine_get_i8042()
1550 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_i8042() local
1552 pcms->i8042_enabled = value; in pc_machine_set_i8042()
1557 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_default_bus_bypass_iommu() local
1559 return pcms->default_bus_bypass_iommu; in pc_machine_get_default_bus_bypass_iommu()
1565 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_default_bus_bypass_iommu() local
1567 pcms->default_bus_bypass_iommu = value; in pc_machine_set_default_bus_bypass_iommu()
1573 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_smbios_ep() local
1574 SmbiosEntryPointType smbios_entry_point_type = pcms->smbios_entry_point_type; in pc_machine_get_smbios_ep()
1582 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_smbios_ep() local
1584 visit_type_SmbiosEntryPointType(v, name, &pcms->smbios_entry_point_type, errp); in pc_machine_set_smbios_ep()
1591 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_max_ram_below_4g() local
1592 uint64_t value = pcms->max_ram_below_4g; in pc_machine_get_max_ram_below_4g()
1601 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_max_ram_below_4g() local
1619 pcms->max_ram_below_4g = value; in pc_machine_set_max_ram_below_4g()
1626 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_get_max_fw_size() local
1627 uint64_t value = pcms->max_fw_size; in pc_machine_get_max_fw_size()
1636 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_set_max_fw_size() local
1660 pcms->max_fw_size = value; in pc_machine_set_max_fw_size()
1666 PCMachineState *pcms = PC_MACHINE(obj); in pc_machine_initfn() local
1667 PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms); in pc_machine_initfn()
1670 pcms->vmport = ON_OFF_AUTO_AUTO; in pc_machine_initfn()
1672 pcms->vmport = ON_OFF_AUTO_OFF; in pc_machine_initfn()
1674 pcms->max_ram_below_4g = 0; /* use default */ in pc_machine_initfn()
1675 pcms->smbios_entry_point_type = pcmc->default_smbios_ep_type; in pc_machine_initfn()
1676 pcms->south_bridge = pcmc->default_south_bridge; in pc_machine_initfn()
1679 pcms->acpi_build_enabled = pcmc->has_acpi_build; in pc_machine_initfn()
1680 pcms->smbus_enabled = true; in pc_machine_initfn()
1681 pcms->sata_enabled = true; in pc_machine_initfn()
1682 pcms->i8042_enabled = true; in pc_machine_initfn()
1683 pcms->max_fw_size = 8 * MiB; in pc_machine_initfn()
1685 pcms->hpet_enabled = true; in pc_machine_initfn()
1687 pcms->fd_bootchk = true; in pc_machine_initfn()
1688 pcms->default_bus_bypass_iommu = false; in pc_machine_initfn()
1690 pc_system_flash_create(pcms); in pc_machine_initfn()
1691 pcms->pcspk = isa_new(TYPE_PC_SPEAKER); in pc_machine_initfn()
1692 object_property_add_alias(OBJECT(pcms), "pcspk-audiodev", in pc_machine_initfn()
1693 OBJECT(pcms->pcspk), "audiodev"); in pc_machine_initfn()
1695 cxl_machine_init(obj, &pcms->cxl_devices_state); in pc_machine_initfn()