This series contains some cleanups I came across when working on the PC machines. It consists of reducing the usage of global variables and eliminating some redundancies.
One notable change is that the SMRAM memory region gets moved from the i440fx and q35 host bridges into the x86 machine. This will simplify cleaning up these host bridges which will be done in a separate series. Testing done: * `make check` ' `make check-avocado` * `qemu-system-x86_64 -M q35 -m 2G -cdrom \ manjaro-kde-21.3.2-220704-linux515.iso` * `qemu-system-x86_64 -M pc -m 2G -cdrom manjaro-kde-21.3.2-220704-linux515.iso` v3: * Add three patches regarding init_pam() and SMRAM. * Drop 'hw/i386/pc_q35: Resolve redundant q35_host variable' since Phil posted a similar patch in a more comprehensive series: https://lore.kernel.org/qemu-devel/20230203180914.49112-13-phi...@linaro.org/ * Drop 'hw/isa/lpc_ich9: Reuse memory and io address space of PCI bus' since it inadvertantly changed the memory hierarchy. * Drop ICH9 cleanups again in favor of a separate series. v2: * Factor out 'hw/i386/pc_q35: Reuse machine parameter' from 'hw/i386/pc_q35: Resolve redundant q35_host variable' (Zoltan) * Lower type of phb to Object in 'hw/i386/pc_q35: Resolve redundant q35_host variable' (Zoltan) * Add ICH9 cleanups Bernhard Beschow (9): hw/pci-host/i440fx: Inline sysbus_add_io() hw/pci-host/q35: Inline sysbus_add_io() hw/i386/pc_q35: Reuse machine parameter hw/i386/pc_{q35,piix}: Reuse MachineClass::desc as SMB product name hw/i386/pc_{q35,piix}: Minimize usage of get_system_memory() hw/i386/pc: Initialize ram_memory variable directly hw/pci-host/pam: Make init_pam() usage more readable hw/i386/x86: Make TYPE_X86_MACHINE the owner of smram target/i386/tcg/sysemu/tcg-cpu: Avoid own opinion about smram size include/hw/i386/pc.h | 1 - include/hw/i386/x86.h | 2 ++ include/hw/pci-host/i440fx.h | 7 ++++--- include/hw/pci-host/pam.h | 5 +++-- include/hw/pci-host/q35.h | 4 +++- hw/i386/pc.c | 2 -- hw/i386/pc_piix.c | 10 +++++----- hw/i386/pc_q35.c | 16 +++++++++------- hw/i386/x86.c | 4 ++++ hw/pci-host/i440fx.c | 28 +++++++++++++--------------- hw/pci-host/pam.c | 12 ++++++------ hw/pci-host/q35.c | 31 ++++++++++++++++--------------- target/i386/tcg/sysemu/tcg-cpu.c | 3 +-- 13 files changed, 66 insertions(+), 59 deletions(-) -- 2.39.1