ppc: Deprecate qemu-system-ppcemb
qemu-system-ppcemb has been once split of qemu-system-ppc to support CPU page sizes < 4096 for some of the embedded 4xx PowerPC CPUs. However, there was hardly any OS available in the wild that really used such small page sizes (Linux uses 4096 on PPC), so there is no known recent use case for this separate build anymore. It's rather cumbersome to maintain a separate set of config switches for this, and it's wasting compile and test time of all the developers who have to build all QEMU targets to verify that their changes did not break anything. Except for the small CPU page sizes, qemu-system-ppc can be used as a full replacement for qemu-system-ppcemb since it contains all the embedded 4xx PPC boards and CPUs, too. Thus let's start the deprecation process for qemu-system-ppcemb to see whether somebody still needs the small page sizes or whether we could finally remove this unloved separate build. Signed-off-by: Thomas Huth <thuth@redhat.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
9eff7830c4
commit
64b47457da
@ -202,6 +202,13 @@ static void ref405ep_init(MachineState *machine)
|
|||||||
DriveInfo *dinfo;
|
DriveInfo *dinfo;
|
||||||
MemoryRegion *sysmem = get_system_memory();
|
MemoryRegion *sysmem = get_system_memory();
|
||||||
|
|
||||||
|
#ifdef TARGET_PPCEMB
|
||||||
|
if (!qtest_enabled()) {
|
||||||
|
warn_report("qemu-system-ppcemb is deprecated, "
|
||||||
|
"please use qemu-system-ppc instead.");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* XXX: fix this */
|
/* XXX: fix this */
|
||||||
memory_region_allocate_system_memory(&ram_memories[0], NULL, "ef405ep.ram",
|
memory_region_allocate_system_memory(&ram_memories[0], NULL, "ef405ep.ram",
|
||||||
0x08000000);
|
0x08000000);
|
||||||
@ -497,6 +504,13 @@ static void taihu_405ep_init(MachineState *machine)
|
|||||||
int fl_idx, fl_sectors;
|
int fl_idx, fl_sectors;
|
||||||
DriveInfo *dinfo;
|
DriveInfo *dinfo;
|
||||||
|
|
||||||
|
#ifdef TARGET_PPCEMB
|
||||||
|
if (!qtest_enabled()) {
|
||||||
|
warn_report("qemu-system-ppcemb is deprecated, "
|
||||||
|
"please use qemu-system-ppc instead.");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* RAM is soldered to the board so the size cannot be changed */
|
/* RAM is soldered to the board so the size cannot be changed */
|
||||||
ram_size = 0x08000000;
|
ram_size = 0x08000000;
|
||||||
memory_region_allocate_system_memory(ram, NULL, "taihu_405ep.ram",
|
memory_region_allocate_system_memory(ram, NULL, "taihu_405ep.ram",
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
|
#include "qemu/error-report.h"
|
||||||
#include "net/net.h"
|
#include "net/net.h"
|
||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
#include "hw/pci/pci.h"
|
#include "hw/pci/pci.h"
|
||||||
@ -27,6 +28,7 @@
|
|||||||
#include "hw/ppc/ppc.h"
|
#include "hw/ppc/ppc.h"
|
||||||
#include "ppc405.h"
|
#include "ppc405.h"
|
||||||
#include "sysemu/sysemu.h"
|
#include "sysemu/sysemu.h"
|
||||||
|
#include "sysemu/qtest.h"
|
||||||
#include "hw/sysbus.h"
|
#include "hw/sysbus.h"
|
||||||
|
|
||||||
#define BINARY_DEVICE_TREE_FILE "bamboo.dtb"
|
#define BINARY_DEVICE_TREE_FILE "bamboo.dtb"
|
||||||
@ -191,6 +193,13 @@ static void bamboo_init(MachineState *machine)
|
|||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef TARGET_PPCEMB
|
||||||
|
if (!qtest_enabled()) {
|
||||||
|
warn_report("qemu-system-ppcemb is deprecated, "
|
||||||
|
"please use qemu-system-ppc instead.");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
qemu_register_reset(main_cpu_reset, cpu);
|
qemu_register_reset(main_cpu_reset, cpu);
|
||||||
ppc_booke_timers_init(cpu, 400000000, 0);
|
ppc_booke_timers_init(cpu, 400000000, 0);
|
||||||
ppc_dcr_init(env, NULL, NULL);
|
ppc_dcr_init(env, NULL, NULL);
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
#include "hw/char/serial.h"
|
#include "hw/char/serial.h"
|
||||||
#include "hw/block/flash.h"
|
#include "hw/block/flash.h"
|
||||||
#include "sysemu/sysemu.h"
|
#include "sysemu/sysemu.h"
|
||||||
|
#include "sysemu/qtest.h"
|
||||||
#include "hw/devices.h"
|
#include "hw/devices.h"
|
||||||
#include "hw/boards.h"
|
#include "hw/boards.h"
|
||||||
#include "sysemu/device_tree.h"
|
#include "sysemu/device_tree.h"
|
||||||
@ -210,6 +211,13 @@ static void virtex_init(MachineState *machine)
|
|||||||
int kernel_size;
|
int kernel_size;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
#ifdef TARGET_PPCEMB
|
||||||
|
if (!qtest_enabled()) {
|
||||||
|
warn_report("qemu-system-ppcemb is deprecated, "
|
||||||
|
"please use qemu-system-ppc instead.");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* init CPUs */
|
/* init CPUs */
|
||||||
cpu = ppc440_init_xilinx(&ram_size, 1, machine->cpu_type, 400000000);
|
cpu = ppc440_init_xilinx(&ram_size, 1, machine->cpu_type, 400000000);
|
||||||
env = &cpu->env;
|
env = &cpu->env;
|
||||||
|
@ -2773,6 +2773,12 @@ The ``host_net_remove'' command is replaced by the ``netdev_del'' command.
|
|||||||
The ``ivshmem'' device type is replaced by either the ``ivshmem-plain''
|
The ``ivshmem'' device type is replaced by either the ``ivshmem-plain''
|
||||||
or ``ivshmem-doorbell`` device types.
|
or ``ivshmem-doorbell`` device types.
|
||||||
|
|
||||||
|
@subsection Page size support < 4k for embedded PowerPC CPUs (since 2.12.0)
|
||||||
|
|
||||||
|
qemu-system-ppcemb will be removed. qemu-system-ppc (or qemu-system-ppc64)
|
||||||
|
should be used instead. That means that embedded 4xx PowerPC CPUs will not
|
||||||
|
support page sizes < 4096 any longer.
|
||||||
|
|
||||||
@section System emulator machines
|
@section System emulator machines
|
||||||
|
|
||||||
@subsection Xilinx EP108 (since 2.11.0)
|
@subsection Xilinx EP108 (since 2.11.0)
|
||||||
|
Loading…
Reference in New Issue
Block a user