aboutsummaryrefslogtreecommitdiff
path: root/configs
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2021-07-11 22:20:51 +0100
committerPeter Maydell <peter.maydell@linaro.org>2021-07-11 22:20:51 +0100
commitd1987c8114921eb30859854de664f879b5626da7 (patch)
treefc52e32918b955c996e73018e31f26caf119cc92 /configs
parent86108e23d798bcd3fce35ad271b198f8a8611746 (diff)
parent411ad8dd80077e98ed465775b044caf1a9482f6c (diff)
Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging
* More SVM fixes (Lara) * Module annotation database (Gerd) * Memory leak fixes (myself) * Build fixes (myself) * --with-devices-* support (Alex) # gpg: Signature made Fri 09 Jul 2021 17:23:52 BST # gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83 # gpg: issuer "pbonzini@redhat.com" # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full] # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full] # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1 # Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83 * remotes/bonzini-gitlab/tags/for-upstream: (48 commits) meson: Use input/output for entitlements target configure: allow the selection of alternate config in the build configs: rename default-configs to configs and reorganise hw/arm: move CONFIG_V7M out of default-devices hw/arm: add dependency on OR_IRQ for XLNX_VERSAL meson: Introduce target-specific Kconfig meson: switch function tests from compilation to linking vl: fix leak of qdict_crumple return value target/i386: fix exceptions for MOV to DR target/i386: Added DR6 and DR7 consistency checks target/i386: Added MSRPM and IOPM size check monitor/tcg: move tcg hmp commands to accel/tcg, register them dynamically usb: build usb-host as module monitor/usb: register 'info usbhost' dynamically usb: drop usb_host_dev_is_scsi_storage hook monitor: allow register hmp commands accel: build tcg modular accel: add tcg module annotations accel: build qtest modular accel: add qtest module annotations ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'configs')
-rw-r--r--configs/devices/aarch64-softmmu/default.mak8
-rw-r--r--configs/devices/aarch64-softmmu/minimal.mak9
-rw-r--r--configs/devices/alpha-softmmu/default.mak10
-rw-r--r--configs/devices/arm-softmmu/default.mak44
-rw-r--r--configs/devices/avr-softmmu/default.mak5
-rw-r--r--configs/devices/cris-softmmu/default.mak5
-rw-r--r--configs/devices/hppa-softmmu/default.mak9
-rw-r--r--configs/devices/i386-softmmu/default.mak31
-rw-r--r--configs/devices/m68k-softmmu/default.mak11
-rw-r--r--configs/devices/microblaze-softmmu/default.mak7
-rw-r--r--configs/devices/microblazeel-softmmu/default.mak3
-rw-r--r--configs/devices/mips-softmmu/common.mak41
-rw-r--r--configs/devices/mips-softmmu/default.mak3
-rw-r--r--configs/devices/mips64-softmmu/default.mak4
-rw-r--r--configs/devices/mips64el-softmmu/default.mak15
-rw-r--r--configs/devices/mipsel-softmmu/default.mak3
-rw-r--r--configs/devices/nios2-softmmu/default.mak8
-rw-r--r--configs/devices/or1k-softmmu/default.mak5
-rw-r--r--configs/devices/ppc-softmmu/default.mak20
-rw-r--r--configs/devices/ppc64-softmmu/default.mak10
-rw-r--r--configs/devices/riscv32-softmmu/default.mak15
-rw-r--r--configs/devices/riscv64-softmmu/default.mak16
-rw-r--r--configs/devices/rx-softmmu/default.mak3
-rw-r--r--configs/devices/s390x-softmmu/default.mak13
-rw-r--r--configs/devices/sh4-softmmu/default.mak11
-rw-r--r--configs/devices/sh4eb-softmmu/default.mak3
-rw-r--r--configs/devices/sparc-softmmu/default.mak11
-rw-r--r--configs/devices/sparc64-softmmu/default.mak12
-rw-r--r--configs/devices/tricore-softmmu/default.mak1
-rw-r--r--configs/devices/x86_64-softmmu/default.mak3
-rw-r--r--configs/devices/xtensa-softmmu/default.mak9
-rw-r--r--configs/devices/xtensaeb-softmmu/default.mak3
-rw-r--r--configs/targets/aarch64-linux-user.mak5
-rw-r--r--configs/targets/aarch64-softmmu.mak5
-rw-r--r--configs/targets/aarch64_be-linux-user.mak6
-rw-r--r--configs/targets/alpha-linux-user.mak4
-rw-r--r--configs/targets/alpha-softmmu.mak3
-rw-r--r--configs/targets/arm-linux-user.mak6
-rw-r--r--configs/targets/arm-softmmu.mak4
-rw-r--r--configs/targets/armeb-linux-user.mak7
-rw-r--r--configs/targets/avr-softmmu.mak2
-rw-r--r--configs/targets/cris-linux-user.mak1
-rw-r--r--configs/targets/cris-softmmu.mak1
-rw-r--r--configs/targets/hexagon-linux-user.mak1
-rw-r--r--configs/targets/hppa-linux-user.mak5
-rw-r--r--configs/targets/hppa-softmmu.mak4
-rw-r--r--configs/targets/i386-bsd-user.mak2
-rw-r--r--configs/targets/i386-linux-user.mak4
-rw-r--r--configs/targets/i386-softmmu.mak3
-rw-r--r--configs/targets/m68k-linux-user.mak6
-rw-r--r--configs/targets/m68k-softmmu.mak3
-rw-r--r--configs/targets/microblaze-linux-user.mak5
-rw-r--r--configs/targets/microblaze-softmmu.mak4
-rw-r--r--configs/targets/microblazeel-linux-user.mak4
-rw-r--r--configs/targets/microblazeel-softmmu.mak3
-rw-r--r--configs/targets/mips-linux-user.mak6
-rw-r--r--configs/targets/mips-softmmu.mak4
-rw-r--r--configs/targets/mips64-linux-user.mak7
-rw-r--r--configs/targets/mips64-softmmu.mak4
-rw-r--r--configs/targets/mips64el-linux-user.mak6
-rw-r--r--configs/targets/mips64el-softmmu.mak4
-rw-r--r--configs/targets/mipsel-linux-user.mak5
-rw-r--r--configs/targets/mipsel-softmmu.mak3
-rw-r--r--configs/targets/mipsn32-linux-user.mak8
-rw-r--r--configs/targets/mipsn32el-linux-user.mak7
-rw-r--r--configs/targets/nios2-linux-user.mak1
-rw-r--r--configs/targets/nios2-softmmu.mak1
-rw-r--r--configs/targets/or1k-linux-user.mak2
-rw-r--r--configs/targets/or1k-softmmu.mak2
-rw-r--r--configs/targets/ppc-linux-user.mak5
-rw-r--r--configs/targets/ppc-softmmu.mak4
-rw-r--r--configs/targets/ppc64-linux-user.mak7
-rw-r--r--configs/targets/ppc64-softmmu.mak6
-rw-r--r--configs/targets/ppc64abi32-linux-user.mak8
-rw-r--r--configs/targets/ppc64le-linux-user.mak6
-rw-r--r--configs/targets/riscv32-linux-user.mak5
-rw-r--r--configs/targets/riscv32-softmmu.mak5
-rw-r--r--configs/targets/riscv64-linux-user.mak5
-rw-r--r--configs/targets/riscv64-softmmu.mak5
-rw-r--r--configs/targets/rx-softmmu.mak3
-rw-r--r--configs/targets/s390x-linux-user.mak5
-rw-r--r--configs/targets/s390x-softmmu.mak4
-rw-r--r--configs/targets/sh4-linux-user.mak5
-rw-r--r--configs/targets/sh4-softmmu.mak2
-rw-r--r--configs/targets/sh4eb-linux-user.mak6
-rw-r--r--configs/targets/sh4eb-softmmu.mak3
-rw-r--r--configs/targets/sparc-linux-user.mak5
-rw-r--r--configs/targets/sparc-softmmu.mak3
-rw-r--r--configs/targets/sparc32plus-linux-user.mak8
-rw-r--r--configs/targets/sparc64-linux-user.mak7
-rw-r--r--configs/targets/sparc64-softmmu.mak4
-rw-r--r--configs/targets/tricore-softmmu.mak1
-rw-r--r--configs/targets/x86_64-bsd-user.mak3
-rw-r--r--configs/targets/x86_64-linux-user.mak5
-rw-r--r--configs/targets/x86_64-softmmu.mak4
-rw-r--r--configs/targets/xtensa-linux-user.mak4
-rw-r--r--configs/targets/xtensa-softmmu.mak2
-rw-r--r--configs/targets/xtensaeb-linux-user.mak5
-rw-r--r--configs/targets/xtensaeb-softmmu.mak3
99 files changed, 637 insertions, 0 deletions
diff --git a/configs/devices/aarch64-softmmu/default.mak b/configs/devices/aarch64-softmmu/default.mak
new file mode 100644
index 0000000000..cf43ac8da1
--- /dev/null
+++ b/configs/devices/aarch64-softmmu/default.mak
@@ -0,0 +1,8 @@
+# Default configuration for aarch64-softmmu
+
+# We support all the 32 bit boards so need all their config
+include ../arm-softmmu/default.mak
+
+CONFIG_XLNX_ZYNQMP_ARM=y
+CONFIG_XLNX_VERSAL=y
+CONFIG_SBSA_REF=y
diff --git a/configs/devices/aarch64-softmmu/minimal.mak b/configs/devices/aarch64-softmmu/minimal.mak
new file mode 100644
index 0000000000..0ebc1dca56
--- /dev/null
+++ b/configs/devices/aarch64-softmmu/minimal.mak
@@ -0,0 +1,9 @@
+#
+# A minimal version of the config that only supports only a few
+# virtual machines. This avoids bringing in any of numerous legacy
+# features from the 32bit platform (although virt still supports 32bit
+# itself)
+#
+
+CONFIG_ARM_VIRT=y
+CONFIG_SBSA_REF=y
diff --git a/configs/devices/alpha-softmmu/default.mak b/configs/devices/alpha-softmmu/default.mak
new file mode 100644
index 0000000000..d186fe8e9b
--- /dev/null
+++ b/configs/devices/alpha-softmmu/default.mak
@@ -0,0 +1,10 @@
+# Default configuration for alpha-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_PCI_DEVICES=n
+#CONFIG_TEST_DEVICES=n
+
+# Boards:
+#
+CONFIG_DP264=y
diff --git a/configs/devices/arm-softmmu/default.mak b/configs/devices/arm-softmmu/default.mak
new file mode 100644
index 0000000000..6985a25377
--- /dev/null
+++ b/configs/devices/arm-softmmu/default.mak
@@ -0,0 +1,44 @@
+# Default configuration for arm-softmmu
+
+# CONFIG_PCI_DEVICES=n
+# CONFIG_TEST_DEVICES=n
+
+CONFIG_ARM_VIRT=y
+CONFIG_CUBIEBOARD=y
+CONFIG_EXYNOS4=y
+CONFIG_HIGHBANK=y
+CONFIG_INTEGRATOR=y
+CONFIG_FSL_IMX31=y
+CONFIG_MUSICPAL=y
+CONFIG_MUSCA=y
+CONFIG_CHEETAH=y
+CONFIG_SX1=y
+CONFIG_NSERIES=y
+CONFIG_STELLARIS=y
+CONFIG_STM32VLDISCOVERY=y
+CONFIG_REALVIEW=y
+CONFIG_VERSATILE=y
+CONFIG_VEXPRESS=y
+CONFIG_ZYNQ=y
+CONFIG_MAINSTONE=y
+CONFIG_GUMSTIX=y
+CONFIG_SPITZ=y
+CONFIG_TOSA=y
+CONFIG_Z2=y
+CONFIG_NPCM7XX=y
+CONFIG_COLLIE=y
+CONFIG_ASPEED_SOC=y
+CONFIG_NETDUINO2=y
+CONFIG_NETDUINOPLUS2=y
+CONFIG_MPS2=y
+CONFIG_RASPI=y
+CONFIG_DIGIC=y
+CONFIG_SABRELITE=y
+CONFIG_EMCRAFT_SF2=y
+CONFIG_MICROBIT=y
+CONFIG_FSL_IMX25=y
+CONFIG_FSL_IMX7=y
+CONFIG_FSL_IMX6UL=y
+CONFIG_SEMIHOSTING=y
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
+CONFIG_ALLWINNER_H3=y
diff --git a/configs/devices/avr-softmmu/default.mak b/configs/devices/avr-softmmu/default.mak
new file mode 100644
index 0000000000..80218add98
--- /dev/null
+++ b/configs/devices/avr-softmmu/default.mak
@@ -0,0 +1,5 @@
+# Default configuration for avr-softmmu
+
+# Boards:
+#
+CONFIG_ARDUINO=y
diff --git a/configs/devices/cris-softmmu/default.mak b/configs/devices/cris-softmmu/default.mak
new file mode 100644
index 0000000000..5932cf4d06
--- /dev/null
+++ b/configs/devices/cris-softmmu/default.mak
@@ -0,0 +1,5 @@
+# Default configuration for cris-softmmu
+
+# Boards:
+#
+CONFIG_AXIS=y
diff --git a/configs/devices/hppa-softmmu/default.mak b/configs/devices/hppa-softmmu/default.mak
new file mode 100644
index 0000000000..b64c5eb3ff
--- /dev/null
+++ b/configs/devices/hppa-softmmu/default.mak
@@ -0,0 +1,9 @@
+# Default configuration for hppa-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_PCI_DEVICES=n
+
+# Boards:
+#
+CONFIG_DINO=y
diff --git a/configs/devices/i386-softmmu/default.mak b/configs/devices/i386-softmmu/default.mak
new file mode 100644
index 0000000000..84d1a2487c
--- /dev/null
+++ b/configs/devices/i386-softmmu/default.mak
@@ -0,0 +1,31 @@
+# Default configuration for i386-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_AMD_IOMMU=n
+#CONFIG_APPLESMC=n
+#CONFIG_FDC=n
+#CONFIG_HPET=n
+#CONFIG_HYPERV=n
+#CONFIG_ISA_DEBUG=n
+#CONFIG_ISA_IPMI_BT=n
+#CONFIG_ISA_IPMI_KCS=n
+#CONFIG_PCI_IPMI_KCS=n
+#CONFIG_PCI_IPMI_BT=n
+#CONFIG_IPMI_SSIF=n
+#CONFIG_PCI_DEVICES=n
+#CONFIG_PVPANIC=n
+#CONFIG_QXL=n
+#CONFIG_SEV=n
+#CONFIG_SGA=n
+#CONFIG_TEST_DEVICES=n
+#CONFIG_TPM_CRB=n
+#CONFIG_TPM_TIS_ISA=n
+#CONFIG_VTD=n
+
+# Boards:
+#
+CONFIG_ISAPC=y
+CONFIG_I440FX=y
+CONFIG_Q35=y
+CONFIG_MICROVM=y
diff --git a/configs/devices/m68k-softmmu/default.mak b/configs/devices/m68k-softmmu/default.mak
new file mode 100644
index 0000000000..7f8619e427
--- /dev/null
+++ b/configs/devices/m68k-softmmu/default.mak
@@ -0,0 +1,11 @@
+# Default configuration for m68k-softmmu
+
+CONFIG_SEMIHOSTING=y
+
+# Boards:
+#
+CONFIG_AN5206=y
+CONFIG_MCF5208=y
+CONFIG_NEXTCUBE=y
+CONFIG_Q800=y
+CONFIG_M68K_VIRT=y
diff --git a/configs/devices/microblaze-softmmu/default.mak b/configs/devices/microblaze-softmmu/default.mak
new file mode 100644
index 0000000000..db8c6e4bba
--- /dev/null
+++ b/configs/devices/microblaze-softmmu/default.mak
@@ -0,0 +1,7 @@
+# Default configuration for microblaze-softmmu
+
+# Boards:
+#
+CONFIG_PETALOGIX_S3ADSP1800=y
+CONFIG_PETALOGIX_ML605=y
+CONFIG_XLNX_ZYNQMP_PMU=y
diff --git a/configs/devices/microblazeel-softmmu/default.mak b/configs/devices/microblazeel-softmmu/default.mak
new file mode 100644
index 0000000000..29f7f13816
--- /dev/null
+++ b/configs/devices/microblazeel-softmmu/default.mak
@@ -0,0 +1,3 @@
+# Default configuration for microblazeel-softmmu
+
+include ../microblaze-softmmu/default.mak
diff --git a/configs/devices/mips-softmmu/common.mak b/configs/devices/mips-softmmu/common.mak
new file mode 100644
index 0000000000..ea78fe7275
--- /dev/null
+++ b/configs/devices/mips-softmmu/common.mak
@@ -0,0 +1,41 @@
+# Common mips*-softmmu CONFIG defines
+
+# CONFIG_SEMIHOSTING is always required on this architecture
+CONFIG_SEMIHOSTING=y
+
+CONFIG_ISA_BUS=y
+CONFIG_PCI=y
+CONFIG_PCI_DEVICES=y
+CONFIG_VGA_ISA=y
+CONFIG_VGA_ISA_MM=y
+CONFIG_VGA_CIRRUS=y
+CONFIG_VMWARE_VGA=y
+CONFIG_SERIAL=y
+CONFIG_SERIAL_ISA=y
+CONFIG_PARALLEL=y
+CONFIG_I8254=y
+CONFIG_PCSPK=y
+CONFIG_PCKBD=y
+CONFIG_FDC=y
+CONFIG_ACPI=y
+CONFIG_ACPI_X86=y
+CONFIG_ACPI_MEMORY_HOTPLUG=y
+CONFIG_ACPI_NVDIMM=y
+CONFIG_ACPI_CPU_HOTPLUG=y
+CONFIG_APM=y
+CONFIG_I8257=y
+CONFIG_PIIX4=y
+CONFIG_IDE_ISA=y
+CONFIG_IDE_PIIX=y
+CONFIG_PFLASH_CFI01=y
+CONFIG_I8259=y
+CONFIG_MC146818RTC=y
+CONFIG_EMPTY_SLOT=y
+CONFIG_MIPS_CPS=y
+CONFIG_MIPS_ITU=y
+CONFIG_MALTA=y
+CONFIG_PCNET_PCI=y
+CONFIG_MIPSSIM=y
+CONFIG_ACPI_SMBUS=y
+CONFIG_SMBUS_EEPROM=y
+CONFIG_TEST_DEVICES=y
diff --git a/configs/devices/mips-softmmu/default.mak b/configs/devices/mips-softmmu/default.mak
new file mode 100644
index 0000000000..c23d95a83a
--- /dev/null
+++ b/configs/devices/mips-softmmu/default.mak
@@ -0,0 +1,3 @@
+# Default configuration for mips-softmmu
+
+include common.mak
diff --git a/configs/devices/mips64-softmmu/default.mak b/configs/devices/mips64-softmmu/default.mak
new file mode 100644
index 0000000000..566672f3c2
--- /dev/null
+++ b/configs/devices/mips64-softmmu/default.mak
@@ -0,0 +1,4 @@
+# Default configuration for mips64-softmmu
+
+include ../mips-softmmu/common.mak
+CONFIG_JAZZ=y
diff --git a/configs/devices/mips64el-softmmu/default.mak b/configs/devices/mips64el-softmmu/default.mak
new file mode 100644
index 0000000000..c511a061ba
--- /dev/null
+++ b/configs/devices/mips64el-softmmu/default.mak
@@ -0,0 +1,15 @@
+# Default configuration for mips64el-softmmu
+
+include ../mips-softmmu/common.mak
+CONFIG_IDE_VIA=y
+CONFIG_FULOONG=y
+CONFIG_LOONGSON3V=y
+CONFIG_ATI_VGA=y
+CONFIG_RTL8139_PCI=y
+CONFIG_JAZZ=y
+CONFIG_VT82C686=y
+CONFIG_AHCI=y
+CONFIG_MIPS_BOSTON=y
+CONFIG_FITLOADER=y
+CONFIG_PCI_EXPRESS=y
+CONFIG_PCI_EXPRESS_XILINX=y
diff --git a/configs/devices/mipsel-softmmu/default.mak b/configs/devices/mipsel-softmmu/default.mak
new file mode 100644
index 0000000000..009ccb0e2d
--- /dev/null
+++ b/configs/devices/mipsel-softmmu/default.mak
@@ -0,0 +1,3 @@
+# Default configuration for mipsel-softmmu
+
+include ../mips-softmmu/common.mak
diff --git a/configs/devices/nios2-softmmu/default.mak b/configs/devices/nios2-softmmu/default.mak
new file mode 100644
index 0000000000..1bc4082ea9
--- /dev/null
+++ b/configs/devices/nios2-softmmu/default.mak
@@ -0,0 +1,8 @@
+# Default configuration for nios2-softmmu
+
+CONFIG_SEMIHOSTING=y
+
+# Boards:
+#
+CONFIG_NIOS2_10M50=y
+CONFIG_NIOS2_GENERIC_NOMMU=y
diff --git a/configs/devices/or1k-softmmu/default.mak b/configs/devices/or1k-softmmu/default.mak
new file mode 100644
index 0000000000..168101c39a
--- /dev/null
+++ b/configs/devices/or1k-softmmu/default.mak
@@ -0,0 +1,5 @@
+# Default configuration for or1k-softmmu
+
+# Boards:
+#
+CONFIG_OR1K_SIM=y
diff --git a/configs/devices/ppc-softmmu/default.mak b/configs/devices/ppc-softmmu/default.mak
new file mode 100644
index 0000000000..4535993d8d
--- /dev/null
+++ b/configs/devices/ppc-softmmu/default.mak
@@ -0,0 +1,20 @@
+# Default configuration for ppc-softmmu
+
+# For embedded PPCs:
+CONFIG_DS1338=y
+CONFIG_E500=y
+CONFIG_PPC405=y
+CONFIG_PPC440=y
+CONFIG_VIRTEX=y
+
+# For Sam460ex
+CONFIG_SAM460EX=y
+
+# For Macs
+CONFIG_MAC_OLDWORLD=y
+CONFIG_MAC_NEWWORLD=y
+
+CONFIG_PEGASOS2=y
+
+# For PReP
+CONFIG_PREP=y
diff --git a/configs/devices/ppc64-softmmu/default.mak b/configs/devices/ppc64-softmmu/default.mak
new file mode 100644
index 0000000000..b90e5bf455
--- /dev/null
+++ b/configs/devices/ppc64-softmmu/default.mak
@@ -0,0 +1,10 @@
+# Default configuration for ppc64-softmmu
+
+# Include all 32-bit boards
+include ../ppc-softmmu/default.mak
+
+# For PowerNV
+CONFIG_POWERNV=y
+
+# For pSeries
+CONFIG_PSERIES=y
diff --git a/configs/devices/riscv32-softmmu/default.mak b/configs/devices/riscv32-softmmu/default.mak
new file mode 100644
index 0000000000..d847bd5692
--- /dev/null
+++ b/configs/devices/riscv32-softmmu/default.mak
@@ -0,0 +1,15 @@
+# Default configuration for riscv32-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_PCI_DEVICES=n
+CONFIG_SEMIHOSTING=y
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
+
+# Boards:
+#
+CONFIG_SPIKE=y
+CONFIG_SIFIVE_E=y
+CONFIG_SIFIVE_U=y
+CONFIG_RISCV_VIRT=y
+CONFIG_OPENTITAN=y
diff --git a/configs/devices/riscv64-softmmu/default.mak b/configs/devices/riscv64-softmmu/default.mak
new file mode 100644
index 0000000000..bc69301fa4
--- /dev/null
+++ b/configs/devices/riscv64-softmmu/default.mak
@@ -0,0 +1,16 @@
+# Default configuration for riscv64-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_PCI_DEVICES=n
+CONFIG_SEMIHOSTING=y
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
+
+# Boards:
+#
+CONFIG_SPIKE=y
+CONFIG_SIFIVE_E=y
+CONFIG_SIFIVE_U=y
+CONFIG_RISCV_VIRT=y
+CONFIG_MICROCHIP_PFSOC=y
+CONFIG_SHAKTI_C=y
diff --git a/configs/devices/rx-softmmu/default.mak b/configs/devices/rx-softmmu/default.mak
new file mode 100644
index 0000000000..df2b4e4f42
--- /dev/null
+++ b/configs/devices/rx-softmmu/default.mak
@@ -0,0 +1,3 @@
+# Default configuration for rx-softmmu
+
+CONFIG_RX_GDBSIM=y
diff --git a/configs/devices/s390x-softmmu/default.mak b/configs/devices/s390x-softmmu/default.mak
new file mode 100644
index 0000000000..f2287a133f
--- /dev/null
+++ b/configs/devices/s390x-softmmu/default.mak
@@ -0,0 +1,13 @@
+# Default configuration for s390x-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_TERMINAL3270=n
+#CONFIG_VFIO_AP=n
+#CONFIG_VFIO_CCW=n
+#CONFIG_VIRTIO_PCI=n
+#CONFIG_WDT_DIAG288=n
+
+# Boards:
+#
+CONFIG_S390_CCW_VIRTIO=y
diff --git a/configs/devices/sh4-softmmu/default.mak b/configs/devices/sh4-softmmu/default.mak
new file mode 100644
index 0000000000..565e8b0b5d
--- /dev/null
+++ b/configs/devices/sh4-softmmu/default.mak
@@ -0,0 +1,11 @@
+# Default configuration for sh4eb-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_PCI_DEVICES=n
+#CONFIG_TEST_DEVICES=n
+
+# Boards:
+#
+CONFIG_R2D=y
+CONFIG_SHIX=y
diff --git a/configs/devices/sh4eb-softmmu/default.mak b/configs/devices/sh4eb-softmmu/default.mak
new file mode 100644
index 0000000000..f18d1f6519
--- /dev/null
+++ b/configs/devices/sh4eb-softmmu/default.mak
@@ -0,0 +1,3 @@
+# Default configuration for sh4eb-softmmu
+
+include ../sh4-softmmu/default.mak
diff --git a/configs/devices/sparc-softmmu/default.mak b/configs/devices/sparc-softmmu/default.mak
new file mode 100644
index 0000000000..ee85218115
--- /dev/null
+++ b/configs/devices/sparc-softmmu/default.mak
@@ -0,0 +1,11 @@
+# Default configuration for sparc-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_TCX=n
+#CONFIG_CG3=n
+
+# Boards:
+#
+CONFIG_SUN4M=y
+CONFIG_LEON3=y
diff --git a/configs/devices/sparc64-softmmu/default.mak b/configs/devices/sparc64-softmmu/default.mak
new file mode 100644
index 0000000000..e50030a229
--- /dev/null
+++ b/configs/devices/sparc64-softmmu/default.mak
@@ -0,0 +1,12 @@
+# Default configuration for sparc64-softmmu
+
+# Uncomment the following lines to disable these optional devices:
+#
+#CONFIG_PCI_DEVICES=n
+#CONFIG_SUNHME=n
+#CONFIG_TEST_DEVICES=n
+
+# Boards:
+#
+CONFIG_SUN4U=y
+CONFIG_NIAGARA=y
diff --git a/configs/devices/tricore-softmmu/default.mak b/configs/devices/tricore-softmmu/default.mak
new file mode 100644
index 0000000000..5cc91cebce
--- /dev/null
+++ b/configs/devices/tricore-softmmu/default.mak
@@ -0,0 +1 @@
+CONFIG_TRIBOARD=y
diff --git a/configs/devices/x86_64-softmmu/default.mak b/configs/devices/x86_64-softmmu/default.mak
new file mode 100644
index 0000000000..ddfc2ea626
--- /dev/null
+++ b/configs/devices/x86_64-softmmu/default.mak
@@ -0,0 +1,3 @@
+# Default configuration for x86_64-softmmu
+
+include ../i386-softmmu/default.mak
diff --git a/configs/devices/xtensa-softmmu/default.mak b/configs/devices/xtensa-softmmu/default.mak
new file mode 100644
index 0000000000..4fe1bf00c9
--- /dev/null
+++ b/configs/devices/xtensa-softmmu/default.mak
@@ -0,0 +1,9 @@
+# Default configuration for Xtensa
+
+CONFIG_SEMIHOSTING=y
+
+# Boards:
+#
+CONFIG_XTENSA_SIM=y
+CONFIG_XTENSA_VIRT=y
+CONFIG_XTENSA_XTFPGA=y
diff --git a/configs/devices/xtensaeb-softmmu/default.mak b/configs/devices/xtensaeb-softmmu/default.mak
new file mode 100644
index 0000000000..00eafcc292
--- /dev/null
+++ b/configs/devices/xtensaeb-softmmu/default.mak
@@ -0,0 +1,3 @@
+# Default configuration for Xtensa
+
+include ../xtensa-softmmu/default.mak
diff --git a/configs/targets/aarch64-linux-user.mak b/configs/targets/aarch64-linux-user.mak
new file mode 100644
index 0000000000..4713253709
--- /dev/null
+++ b/configs/targets/aarch64-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=aarch64
+TARGET_BASE_ARCH=arm
+TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml
+TARGET_HAS_BFLT=y
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
diff --git a/configs/targets/aarch64-softmmu.mak b/configs/targets/aarch64-softmmu.mak
new file mode 100644
index 0000000000..7703127674
--- /dev/null
+++ b/configs/targets/aarch64-softmmu.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=aarch64
+TARGET_BASE_ARCH=arm
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml
+TARGET_NEED_FDT=y
diff --git a/configs/targets/aarch64_be-linux-user.mak b/configs/targets/aarch64_be-linux-user.mak
new file mode 100644
index 0000000000..fae831558d
--- /dev/null
+++ b/configs/targets/aarch64_be-linux-user.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=aarch64
+TARGET_BASE_ARCH=arm
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml
+TARGET_HAS_BFLT=y
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
diff --git a/configs/targets/alpha-linux-user.mak b/configs/targets/alpha-linux-user.mak
new file mode 100644
index 0000000000..7e62fd796a
--- /dev/null
+++ b/configs/targets/alpha-linux-user.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=alpha
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_ALIGNED_ONLY=y
diff --git a/configs/targets/alpha-softmmu.mak b/configs/targets/alpha-softmmu.mak
new file mode 100644
index 0000000000..e4b874a19e
--- /dev/null
+++ b/configs/targets/alpha-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=alpha
+TARGET_ALIGNED_ONLY=y
+TARGET_SUPPORTS_MTTCG=y
diff --git a/configs/targets/arm-linux-user.mak b/configs/targets/arm-linux-user.mak
new file mode 100644
index 0000000000..e741ffd4d3
--- /dev/null
+++ b/configs/targets/arm-linux-user.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=arm
+TARGET_SYSTBL_ABI=common,oabi
+TARGET_SYSTBL=syscall.tbl
+TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml
+TARGET_HAS_BFLT=y
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
diff --git a/configs/targets/arm-softmmu.mak b/configs/targets/arm-softmmu.mak
new file mode 100644
index 0000000000..84a98f4818
--- /dev/null
+++ b/configs/targets/arm-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=arm
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml
+TARGET_NEED_FDT=y
diff --git a/configs/targets/armeb-linux-user.mak b/configs/targets/armeb-linux-user.mak
new file mode 100644
index 0000000000..255e44e8b0
--- /dev/null
+++ b/configs/targets/armeb-linux-user.mak
@@ -0,0 +1,7 @@
+TARGET_ARCH=arm
+TARGET_SYSTBL_ABI=common,oabi
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml
+TARGET_HAS_BFLT=y
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
diff --git a/configs/targets/avr-softmmu.mak b/configs/targets/avr-softmmu.mak
new file mode 100644
index 0000000000..e3f921c019
--- /dev/null
+++ b/configs/targets/avr-softmmu.mak
@@ -0,0 +1,2 @@
+TARGET_ARCH=avr
+TARGET_XML_FILES= gdb-xml/avr-cpu.xml
diff --git a/configs/targets/cris-linux-user.mak b/configs/targets/cris-linux-user.mak
new file mode 100644
index 0000000000..e483c42066
--- /dev/null
+++ b/configs/targets/cris-linux-user.mak
@@ -0,0 +1 @@
+TARGET_ARCH=cris
diff --git a/configs/targets/cris-softmmu.mak b/configs/targets/cris-softmmu.mak
new file mode 100644
index 0000000000..e483c42066
--- /dev/null
+++ b/configs/targets/cris-softmmu.mak
@@ -0,0 +1 @@
+TARGET_ARCH=cris
diff --git a/configs/targets/hexagon-linux-user.mak b/configs/targets/hexagon-linux-user.mak
new file mode 100644
index 0000000000..003ed0a408
--- /dev/null
+++ b/configs/targets/hexagon-linux-user.mak
@@ -0,0 +1 @@
+TARGET_ARCH=hexagon
diff --git a/configs/targets/hppa-linux-user.mak b/configs/targets/hppa-linux-user.mak
new file mode 100644
index 0000000000..f01e0a7b9e
--- /dev/null
+++ b/configs/targets/hppa-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=hppa
+TARGET_SYSTBL_ABI=common,32
+TARGET_SYSTBL=syscall.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/hppa-softmmu.mak b/configs/targets/hppa-softmmu.mak
new file mode 100644
index 0000000000..e3e71eb21b
--- /dev/null
+++ b/configs/targets/hppa-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=hppa
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
+TARGET_SUPPORTS_MTTCG=y
diff --git a/configs/targets/i386-bsd-user.mak b/configs/targets/i386-bsd-user.mak
new file mode 100644
index 0000000000..0283bb62a0
--- /dev/null
+++ b/configs/targets/i386-bsd-user.mak
@@ -0,0 +1,2 @@
+TARGET_ARCH=i386
+TARGET_XML_FILES= gdb-xml/i386-32bit.xml
diff --git a/configs/targets/i386-linux-user.mak b/configs/targets/i386-linux-user.mak
new file mode 100644
index 0000000000..5b2546a430
--- /dev/null
+++ b/configs/targets/i386-linux-user.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=i386
+TARGET_SYSTBL_ABI=i386
+TARGET_SYSTBL=syscall_32.tbl
+TARGET_XML_FILES= gdb-xml/i386-32bit.xml
diff --git a/configs/targets/i386-softmmu.mak b/configs/targets/i386-softmmu.mak
new file mode 100644
index 0000000000..5babf71895
--- /dev/null
+++ b/configs/targets/i386-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=i386
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/i386-32bit.xml
diff --git a/configs/targets/m68k-linux-user.mak b/configs/targets/m68k-linux-user.mak
new file mode 100644
index 0000000000..805d16c6ab
--- /dev/null
+++ b/configs/targets/m68k-linux-user.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=m68k
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml
+TARGET_HAS_BFLT=y
diff --git a/configs/targets/m68k-softmmu.mak b/configs/targets/m68k-softmmu.mak
new file mode 100644
index 0000000000..5df1a2b7d7
--- /dev/null
+++ b/configs/targets/m68k-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=m68k
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml
diff --git a/configs/targets/microblaze-linux-user.mak b/configs/targets/microblaze-linux-user.mak
new file mode 100644
index 0000000000..2a25bf2fa3
--- /dev/null
+++ b/configs/targets/microblaze-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=microblaze
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_HAS_BFLT=y
diff --git a/configs/targets/microblaze-softmmu.mak b/configs/targets/microblaze-softmmu.mak
new file mode 100644
index 0000000000..33f2a00402
--- /dev/null
+++ b/configs/targets/microblaze-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=microblaze
+TARGET_WORDS_BIGENDIAN=y
+TARGET_SUPPORTS_MTTCG=y
+TARGET_NEED_FDT=y
diff --git a/configs/targets/microblazeel-linux-user.mak b/configs/targets/microblazeel-linux-user.mak
new file mode 100644
index 0000000000..d0e775d840
--- /dev/null
+++ b/configs/targets/microblazeel-linux-user.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=microblaze
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_HAS_BFLT=y
diff --git a/configs/targets/microblazeel-softmmu.mak b/configs/targets/microblazeel-softmmu.mak
new file mode 100644
index 0000000000..af40391f2f
--- /dev/null
+++ b/configs/targets/microblazeel-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=microblaze
+TARGET_SUPPORTS_MTTCG=y
+TARGET_NEED_FDT=y
diff --git a/configs/targets/mips-linux-user.mak b/configs/targets/mips-linux-user.mak
new file mode 100644
index 0000000000..19f5779831
--- /dev/null
+++ b/configs/targets/mips-linux-user.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=mips
+TARGET_ABI_MIPSO32=y
+TARGET_SYSTBL_ABI=o32
+TARGET_SYSTBL=syscall_o32.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/mips-softmmu.mak b/configs/targets/mips-softmmu.mak
new file mode 100644
index 0000000000..8a49999a47
--- /dev/null
+++ b/configs/targets/mips-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=mips
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
+TARGET_SUPPORTS_MTTCG=y
diff --git a/configs/targets/mips64-linux-user.mak b/configs/targets/mips64-linux-user.mak
new file mode 100644
index 0000000000..32fd1acdf2
--- /dev/null
+++ b/configs/targets/mips64-linux-user.mak
@@ -0,0 +1,7 @@
+TARGET_ARCH=mips64
+TARGET_ABI_MIPSN64=y
+TARGET_BASE_ARCH=mips
+TARGET_SYSTBL_ABI=n64
+TARGET_SYSTBL=syscall_n64.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/mips64-softmmu.mak b/configs/targets/mips64-softmmu.mak
new file mode 100644
index 0000000000..ece25b9624
--- /dev/null
+++ b/configs/targets/mips64-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=mips64
+TARGET_BASE_ARCH=mips
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/mips64el-linux-user.mak b/configs/targets/mips64el-linux-user.mak
new file mode 100644
index 0000000000..f348f35997
--- /dev/null
+++ b/configs/targets/mips64el-linux-user.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=mips64
+TARGET_ABI_MIPSN64=y
+TARGET_BASE_ARCH=mips
+TARGET_SYSTBL_ABI=n64
+TARGET_SYSTBL=syscall_n64.tbl
+TARGET_ALIGNED_ONLY=y
diff --git a/configs/targets/mips64el-softmmu.mak b/configs/targets/mips64el-softmmu.mak
new file mode 100644
index 0000000000..5a52aa4b64
--- /dev/null
+++ b/configs/targets/mips64el-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=mips64
+TARGET_BASE_ARCH=mips
+TARGET_ALIGNED_ONLY=y
+TARGET_NEED_FDT=y
diff --git a/configs/targets/mipsel-linux-user.mak b/configs/targets/mipsel-linux-user.mak
new file mode 100644
index 0000000000..e23793070c
--- /dev/null
+++ b/configs/targets/mipsel-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=mips
+TARGET_ABI_MIPSO32=y
+TARGET_SYSTBL_ABI=o32
+TARGET_SYSTBL=syscall_o32.tbl
+TARGET_ALIGNED_ONLY=y
diff --git a/configs/targets/mipsel-softmmu.mak b/configs/targets/mipsel-softmmu.mak
new file mode 100644
index 0000000000..c7c41f4fb7
--- /dev/null
+++ b/configs/targets/mipsel-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=mips
+TARGET_ALIGNED_ONLY=y
+TARGET_SUPPORTS_MTTCG=y
diff --git a/configs/targets/mipsn32-linux-user.mak b/configs/targets/mipsn32-linux-user.mak
new file mode 100644
index 0000000000..b8c2441ad0
--- /dev/null
+++ b/configs/targets/mipsn32-linux-user.mak
@@ -0,0 +1,8 @@
+TARGET_ARCH=mips64
+TARGET_ABI_MIPSN32=y
+TARGET_ABI32=y
+TARGET_BASE_ARCH=mips
+TARGET_SYSTBL_ABI=n32
+TARGET_SYSTBL=syscall_n32.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/mipsn32el-linux-user.mak b/configs/targets/mipsn32el-linux-user.mak
new file mode 100644
index 0000000000..f31a9c394b
--- /dev/null
+++ b/configs/targets/mipsn32el-linux-user.mak
@@ -0,0 +1,7 @@
+TARGET_ARCH=mips64
+TARGET_ABI_MIPSN32=y
+TARGET_ABI32=y
+TARGET_BASE_ARCH=mips
+TARGET_SYSTBL_ABI=n32
+TARGET_SYSTBL=syscall_n32.tbl
+TARGET_ALIGNED_ONLY=y
diff --git a/configs/targets/nios2-linux-user.mak b/configs/targets/nios2-linux-user.mak
new file mode 100644
index 0000000000..9a372f0717
--- /dev/null
+++ b/configs/targets/nios2-linux-user.mak
@@ -0,0 +1 @@
+TARGET_ARCH=nios2
diff --git a/configs/targets/nios2-softmmu.mak b/configs/targets/nios2-softmmu.mak
new file mode 100644
index 0000000000..9a372f0717
--- /dev/null
+++ b/configs/targets/nios2-softmmu.mak
@@ -0,0 +1 @@
+TARGET_ARCH=nios2
diff --git a/configs/targets/or1k-linux-user.mak b/configs/targets/or1k-linux-user.mak
new file mode 100644
index 0000000000..1dfb93e46d
--- /dev/null
+++ b/configs/targets/or1k-linux-user.mak
@@ -0,0 +1,2 @@
+TARGET_ARCH=openrisc
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/or1k-softmmu.mak b/configs/targets/or1k-softmmu.mak
new file mode 100644
index 0000000000..1dfb93e46d
--- /dev/null
+++ b/configs/targets/or1k-softmmu.mak
@@ -0,0 +1,2 @@
+TARGET_ARCH=openrisc
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/ppc-linux-user.mak b/configs/targets/ppc-linux-user.mak
new file mode 100644
index 0000000000..ca4187e4aa
--- /dev/null
+++ b/configs/targets/ppc-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=ppc
+TARGET_SYSTBL_ABI=common,nospu,32
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml
diff --git a/configs/targets/ppc-softmmu.mak b/configs/targets/ppc-softmmu.mak
new file mode 100644
index 0000000000..f4eef1819a
--- /dev/null
+++ b/configs/targets/ppc-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=ppc
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml
+TARGET_NEED_FDT=y
diff --git a/configs/targets/ppc64-linux-user.mak b/configs/targets/ppc64-linux-user.mak
new file mode 100644
index 0000000000..3133346676
--- /dev/null
+++ b/configs/targets/ppc64-linux-user.mak
@@ -0,0 +1,7 @@
+TARGET_ARCH=ppc64
+TARGET_BASE_ARCH=ppc
+TARGET_ABI_DIR=ppc
+TARGET_SYSTBL_ABI=common,nospu,64
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml
diff --git a/configs/targets/ppc64-softmmu.mak b/configs/targets/ppc64-softmmu.mak
new file mode 100644
index 0000000000..84fbf46be9
--- /dev/null
+++ b/configs/targets/ppc64-softmmu.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=ppc64
+TARGET_BASE_ARCH=ppc
+TARGET_WORDS_BIGENDIAN=y
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml
+TARGET_NEED_FDT=y
diff --git a/configs/targets/ppc64abi32-linux-user.mak b/configs/targets/ppc64abi32-linux-user.mak
new file mode 100644
index 0000000000..0945451081
--- /dev/null
+++ b/configs/targets/ppc64abi32-linux-user.mak
@@ -0,0 +1,8 @@
+TARGET_ARCH=ppc64
+TARGET_ABI32=y
+TARGET_BASE_ARCH=ppc
+TARGET_ABI_DIR=ppc
+TARGET_SYSTBL_ABI=common,nospu,32
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml
diff --git a/configs/targets/ppc64le-linux-user.mak b/configs/targets/ppc64le-linux-user.mak
new file mode 100644
index 0000000000..426d5a28d6
--- /dev/null
+++ b/configs/targets/ppc64le-linux-user.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=ppc64
+TARGET_BASE_ARCH=ppc
+TARGET_ABI_DIR=ppc
+TARGET_SYSTBL_ABI=common,nospu,64
+TARGET_SYSTBL=syscall.tbl
+TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml
diff --git a/configs/targets/riscv32-linux-user.mak b/configs/targets/riscv32-linux-user.mak
new file mode 100644
index 0000000000..bd2f1fd497
--- /dev/null
+++ b/configs/targets/riscv32-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=riscv32
+TARGET_BASE_ARCH=riscv
+TARGET_ABI_DIR=riscv
+TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-virtual.xml
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
diff --git a/configs/targets/riscv32-softmmu.mak b/configs/targets/riscv32-softmmu.mak
new file mode 100644
index 0000000000..d8b71cddcd
--- /dev/null
+++ b/configs/targets/riscv32-softmmu.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=riscv32
+TARGET_BASE_ARCH=riscv
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-virtual.xml
+TARGET_NEED_FDT=y
diff --git a/configs/targets/riscv64-linux-user.mak b/configs/targets/riscv64-linux-user.mak
new file mode 100644
index 0000000000..4aca7662ce
--- /dev/null
+++ b/configs/targets/riscv64-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=riscv64
+TARGET_BASE_ARCH=riscv
+TARGET_ABI_DIR=riscv
+TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-virtual.xml
+CONFIG_ARM_COMPATIBLE_SEMIHOSTING=y
diff --git a/configs/targets/riscv64-softmmu.mak b/configs/targets/riscv64-softmmu.mak
new file mode 100644
index 0000000000..7c0e7eeb42
--- /dev/null
+++ b/configs/targets/riscv64-softmmu.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=riscv64
+TARGET_BASE_ARCH=riscv
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-virtual.xml
+TARGET_NEED_FDT=y
diff --git a/configs/targets/rx-softmmu.mak b/configs/targets/rx-softmmu.mak
new file mode 100644
index 0000000000..0c458b2d07
--- /dev/null
+++ b/configs/targets/rx-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=rx
+TARGET_XML_FILES= gdb-xml/rx-core.xml
+TARGET_NEED_FDT=y
diff --git a/configs/targets/s390x-linux-user.mak b/configs/targets/s390x-linux-user.mak
new file mode 100644
index 0000000000..9e31ce6457
--- /dev/null
+++ b/configs/targets/s390x-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=s390x
+TARGET_SYSTBL_ABI=common,64
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml
diff --git a/configs/targets/s390x-softmmu.mak b/configs/targets/s390x-softmmu.mak
new file mode 100644
index 0000000000..fd9fbd870d
--- /dev/null
+++ b/configs/targets/s390x-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=s390x
+TARGET_WORDS_BIGENDIAN=y
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml
diff --git a/configs/targets/sh4-linux-user.mak b/configs/targets/sh4-linux-user.mak
new file mode 100644
index 0000000000..0152d6621e
--- /dev/null
+++ b/configs/targets/sh4-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=sh4
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_HAS_BFLT=y
diff --git a/configs/targets/sh4-softmmu.mak b/configs/targets/sh4-softmmu.mak
new file mode 100644
index 0000000000..95896376c4
--- /dev/null
+++ b/configs/targets/sh4-softmmu.mak
@@ -0,0 +1,2 @@
+TARGET_ARCH=sh4
+TARGET_ALIGNED_ONLY=y
diff --git a/configs/targets/sh4eb-linux-user.mak b/configs/targets/sh4eb-linux-user.mak
new file mode 100644
index 0000000000..9b6fb4c1bb
--- /dev/null
+++ b/configs/targets/sh4eb-linux-user.mak
@@ -0,0 +1,6 @@
+TARGET_ARCH=sh4
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
+TARGET_HAS_BFLT=y
diff --git a/configs/targets/sh4eb-softmmu.mak b/configs/targets/sh4eb-softmmu.mak
new file mode 100644
index 0000000000..382e9a80f8
--- /dev/null
+++ b/configs/targets/sh4eb-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=sh4
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/sparc-linux-user.mak b/configs/targets/sparc-linux-user.mak
new file mode 100644
index 0000000000..53dc7aaed5
--- /dev/null
+++ b/configs/targets/sparc-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=sparc
+TARGET_SYSTBL_ABI=common,32
+TARGET_SYSTBL=syscall.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/sparc-softmmu.mak b/configs/targets/sparc-softmmu.mak
new file mode 100644
index 0000000000..9ba3d7b07f
--- /dev/null
+++ b/configs/targets/sparc-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=sparc
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/sparc32plus-linux-user.mak b/configs/targets/sparc32plus-linux-user.mak
new file mode 100644
index 0000000000..e4c51df3dc
--- /dev/null
+++ b/configs/targets/sparc32plus-linux-user.mak
@@ -0,0 +1,8 @@
+TARGET_ARCH=sparc64
+TARGET_ABI32=y
+TARGET_BASE_ARCH=sparc
+TARGET_ABI_DIR=sparc
+TARGET_SYSTBL_ABI=common,32
+TARGET_SYSTBL=syscall.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/sparc64-linux-user.mak b/configs/targets/sparc64-linux-user.mak
new file mode 100644
index 0000000000..9d23ab4a26
--- /dev/null
+++ b/configs/targets/sparc64-linux-user.mak
@@ -0,0 +1,7 @@
+TARGET_ARCH=sparc64
+TARGET_BASE_ARCH=sparc
+TARGET_ABI_DIR=sparc
+TARGET_SYSTBL_ABI=common,64
+TARGET_SYSTBL=syscall.tbl
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/sparc64-softmmu.mak b/configs/targets/sparc64-softmmu.mak
new file mode 100644
index 0000000000..8dd3217800
--- /dev/null
+++ b/configs/targets/sparc64-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=sparc64
+TARGET_BASE_ARCH=sparc
+TARGET_ALIGNED_ONLY=y
+TARGET_WORDS_BIGENDIAN=y
diff --git a/configs/targets/tricore-softmmu.mak b/configs/targets/tricore-softmmu.mak
new file mode 100644
index 0000000000..96b10af853
--- /dev/null
+++ b/configs/targets/tricore-softmmu.mak
@@ -0,0 +1 @@
+TARGET_ARCH=tricore
diff --git a/configs/targets/x86_64-bsd-user.mak b/configs/targets/x86_64-bsd-user.mak
new file mode 100644
index 0000000000..799cd4acd4
--- /dev/null
+++ b/configs/targets/x86_64-bsd-user.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=x86_64
+TARGET_BASE_ARCH=i386
+TARGET_XML_FILES= gdb-xml/i386-64bit.xml
diff --git a/configs/targets/x86_64-linux-user.mak b/configs/targets/x86_64-linux-user.mak
new file mode 100644
index 0000000000..9ceefbb615
--- /dev/null
+++ b/configs/targets/x86_64-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=x86_64
+TARGET_BASE_ARCH=i386
+TARGET_SYSTBL_ABI=common,64
+TARGET_SYSTBL=syscall_64.tbl
+TARGET_XML_FILES= gdb-xml/i386-64bit.xml
diff --git a/configs/targets/x86_64-softmmu.mak b/configs/targets/x86_64-softmmu.mak
new file mode 100644
index 0000000000..75e42bc840
--- /dev/null
+++ b/configs/targets/x86_64-softmmu.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=x86_64
+TARGET_BASE_ARCH=i386
+TARGET_SUPPORTS_MTTCG=y
+TARGET_XML_FILES= gdb-xml/i386-64bit.xml
diff --git a/configs/targets/xtensa-linux-user.mak b/configs/targets/xtensa-linux-user.mak
new file mode 100644
index 0000000000..420b30a68d
--- /dev/null
+++ b/configs/targets/xtensa-linux-user.mak
@@ -0,0 +1,4 @@
+TARGET_ARCH=xtensa
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_HAS_BFLT=y
diff --git a/configs/targets/xtensa-softmmu.mak b/configs/targets/xtensa-softmmu.mak
new file mode 100644
index 0000000000..f075557bfa
--- /dev/null
+++ b/configs/targets/xtensa-softmmu.mak
@@ -0,0 +1,2 @@
+TARGET_ARCH=xtensa
+TARGET_SUPPORTS_MTTCG=y
diff --git a/configs/targets/xtensaeb-linux-user.mak b/configs/targets/xtensaeb-linux-user.mak
new file mode 100644
index 0000000000..1ea0f1ba91
--- /dev/null
+++ b/configs/targets/xtensaeb-linux-user.mak
@@ -0,0 +1,5 @@
+TARGET_ARCH=xtensa
+TARGET_SYSTBL_ABI=common
+TARGET_SYSTBL=syscall.tbl
+TARGET_WORDS_BIGENDIAN=y
+TARGET_HAS_BFLT=y
diff --git a/configs/targets/xtensaeb-softmmu.mak b/configs/targets/xtensaeb-softmmu.mak
new file mode 100644
index 0000000000..405cf5acbb
--- /dev/null
+++ b/configs/targets/xtensaeb-softmmu.mak
@@ -0,0 +1,3 @@
+TARGET_ARCH=xtensa
+TARGET_WORDS_BIGENDIAN=y
+TARGET_SUPPORTS_MTTCG=y