summaryrefslogtreecommitdiffstats
path: root/hw/mips/Kconfig
diff options
context:
space:
mode:
authorHuacai Chen2020-04-27 11:33:14 +0200
committerPhilippe Mathieu-Daudé2021-01-04 23:36:03 +0100
commitc76b409fef19dc60a48f02a8e12e7fb46b07caf7 (patch)
treed0b02b32347566e2302fce5e1da28f13b0fd0438 /hw/mips/Kconfig
parenthw/mips: Add Loongson-3 boot parameter helpers (diff)
downloadqemu-c76b409fef19dc60a48f02a8e12e7fb46b07caf7.tar.gz
qemu-c76b409fef19dc60a48f02a8e12e7fb46b07caf7.tar.xz
qemu-c76b409fef19dc60a48f02a8e12e7fb46b07caf7.zip
hw/mips: Add Loongson-3 machine support
Add Loongson-3 based machine support, it use liointc as the interrupt controler and use GPEX as the pci controller. Currently it can work with both TCG and KVM. As the machine model is not based on any exiting physical hardware, the name of the machine is "loongson3-virt". It may be superseded in future by a real machine model. If this happens, then a regular deprecation procedure shall occur for "loongson3-virt" machine. We now already have a full functional Linux kernel (based on Linux-5.4.x LTS) here: https://github.com/chenhuacai/linux Of course the upstream kernel is also usable (the kvm host side and guest side have both been upstream in Linux-5.9): https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git How to use QEMU/Loongson-3? 1, Download kernel source from the above URL; 2, Build a kernel with arch/mips/configs/loongson3_defconfig; 3, Boot a Loongson-3A4000 host with this kernel (for KVM mode); 4, Build QEMU-master with this patchset; 5, modprobe kvm (only necessary for KVM mode); 6, Use QEMU with TCG: qemu-system-mips64el -M loongson3-virt,accel=tcg -cpu Loongson-3A1000 -kernel <path_to_kernel> -append ... Use QEMU with KVM: qemu-system-mips64el -M loongson3-virt,accel=kvm -cpu Loongson-3A4000 -kernel <path_to_kernel> -append ... The "-cpu" parameter is optional here and QEMU will use the correct type for TCG/KVM automatically. Co-developed-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Signed-off-by: Huacai Chen <chenhuacai@kernel.org> Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Message-Id: <20201221110538.3186646-5-chenhuacai@kernel.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> [PMD: Set TYPE_LOONGSON_MACHINE instance_size in TypeInfo, select FW_CFG_MIPS in Kconfig] Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Diffstat (limited to 'hw/mips/Kconfig')
-rw-r--r--hw/mips/Kconfig12
1 files changed, 12 insertions, 0 deletions
diff --git a/hw/mips/Kconfig b/hw/mips/Kconfig
index 64ef42dd3f..aadd436bf4 100644
--- a/hw/mips/Kconfig
+++ b/hw/mips/Kconfig
@@ -32,6 +32,18 @@ config FULOONG
bool
select PCI_BONITO
+config LOONGSON3V
+ bool
+ imply VIRTIO_VGA
+ imply QXL if SPICE
+ select SERIAL
+ select GOLDFISH_RTC
+ select LOONGSON_LIOINTC
+ select PCI_DEVICES
+ select PCI_EXPRESS_GENERIC_BRIDGE
+ select MSI_NONBROKEN
+ select FW_CFG_MIPS
+
config MIPS_CPS
bool
select PTIMER