* [Qemu-devel] [0/5] Assorted pseries fixes and updates
@ 2012-07-31 6:09 David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 1/5] pseries: Update SLOF David Gibson
` (4 more replies)
0 siblings, 5 replies; 9+ messages in thread
From: David Gibson @ 2012-07-31 6:09 UTC (permalink / raw)
To: agraf; +Cc: qemu-ppc, qemu-devel
Hi Alex,
I'm now back from vacation, and have more or less got back on top of
my qemu tree. Here's my first batch of new patches, an assortment of
fairly simple fixes and cleanups for the pseries code.
Please apply.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 1/5] pseries: Update SLOF
2012-07-31 6:09 [Qemu-devel] [0/5] Assorted pseries fixes and updates David Gibson
@ 2012-07-31 6:09 ` David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested David Gibson
` (3 subsequent siblings)
4 siblings, 0 replies; 9+ messages in thread
From: David Gibson @ 2012-07-31 6:09 UTC (permalink / raw)
To: agraf; +Cc: qemu-ppc, qemu-devel, David Gibson
This patch updates the SLOF version, introducing a number of fixes:
* add proper graphics support
* fix bugs with graphical terminal under grub2
* fix bugs in handling of 64-bit unit addresses
* fix VSCSI representation to be closer to PowerVM
* fix bugs which caused grub2 to crash
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
pc-bios/README | 2 +-
pc-bios/slof.bin | Bin 880496 -> 878088 bytes
roms/SLOF | 2 +-
3 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pc-bios/README b/pc-bios/README
index e56e9e5..e71bcd0 100644
--- a/pc-bios/README
+++ b/pc-bios/README
@@ -17,7 +17,7 @@
- SLOF (Slimline Open Firmware) is a free IEEE 1275 Open Firmware
implementation for certain IBM POWER hardware. The sources are at
https://github.com/dgibson/SLOF, and the image currently in qemu is
- built from git tag qemu-slof-20120217.
+ built from git tag qemu-slof-20120719.
- sgabios (the Serial Graphics Adapter option ROM) provides a means for
legacy x86 software to communicate with an attached serial console as
diff --git a/pc-bios/slof.bin b/pc-bios/slof.bin
index 449a7bb2afaf604f6c089612e99086df0800d7dc..320b8f001cf9962318812a5b9109242e210fe499 100644
GIT binary patch
delta 149136
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
delta 156060
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
diff --git a/roms/SLOF b/roms/SLOF
index d153364..7279655 160000
--- a/roms/SLOF
+++ b/roms/SLOF
@@ -1 +1 @@
-Subproject commit d153364253548d6cd91403711f84996e6a7dab31
+Subproject commit 7279655af2eba855bd2df61303d25abd1eeb2300
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested
2012-07-31 6:09 [Qemu-devel] [0/5] Assorted pseries fixes and updates David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 1/5] pseries: Update SLOF David Gibson
@ 2012-07-31 6:09 ` David Gibson
2012-07-31 7:35 ` Benjamin Herrenschmidt
2012-07-31 7:36 ` Benjamin Herrenschmidt
2012-07-31 6:09 ` [Qemu-devel] [PATCH 3/5] pseries: Add support for -vga option David Gibson
` (2 subsequent siblings)
4 siblings, 2 replies; 9+ messages in thread
From: David Gibson @ 2012-07-31 6:09 UTC (permalink / raw)
To: agraf; +Cc: qemu-ppc, qemu-devel, David Gibson
The pseries machine currently ignores the -usb command line option.
This patch corrects the problem by having it instantiate a PCI OHCI
USB host controller when -usb is specified.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
hw/spapr.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/hw/spapr.c b/hw/spapr.c
index ab5a0c2..740881b 100644
--- a/hw/spapr.c
+++ b/hw/spapr.c
@@ -45,6 +45,7 @@
#include "kvm.h"
#include "kvm_ppc.h"
#include "pci.h"
+#include "usb.h"
#include "exec-memory.h"
@@ -710,6 +711,12 @@ static void ppc_spapr_init(ram_addr_t ram_size,
spapr_vscsi_create(spapr->vio_bus);
}
+ /* USB */
+ if (usb_enabled) {
+ pci_create_simple(QLIST_FIRST(&spapr->phbs)->host_state.bus,
+ -1, "pci-ohci");
+ }
+
if (rma_size < (MIN_RMA_SLOF << 20)) {
fprintf(stderr, "qemu: pSeries SLOF firmware requires >= "
"%ldM guest RMA (Real Mode Area memory)\n", MIN_RMA_SLOF);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 3/5] pseries: Add support for -vga option
2012-07-31 6:09 [Qemu-devel] [0/5] Assorted pseries fixes and updates David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 1/5] pseries: Update SLOF David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested David Gibson
@ 2012-07-31 6:09 ` David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 4/5] pseries: Remove extraneous prints David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 5/5] pseries: Add support for new KVM hash table control call David Gibson
4 siblings, 0 replies; 9+ messages in thread
From: David Gibson @ 2012-07-31 6:09 UTC (permalink / raw)
To: agraf; +Cc: qemu-ppc, qemu-devel, David Gibson
From: Ben Herrenschmidt <benh@kernel.crashing.org>
Also instantiate the USB keyboard and mouse when that option is used
(you can still use -device to create individual devices without all
the defaults)
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
hw/spapr.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 49 insertions(+), 1 deletion(-)
diff --git a/hw/spapr.c b/hw/spapr.c
index 740881b..bf38823 100644
--- a/hw/spapr.c
+++ b/hw/spapr.c
@@ -46,6 +46,7 @@
#include "kvm_ppc.h"
#include "pci.h"
#include "usb.h"
+#include "pc.h"
#include "exec-memory.h"
@@ -83,6 +84,7 @@
#define PHANDLE_XICP 0x00001111
sPAPREnvironment *spapr;
+static bool spapr_has_graphics;
qemu_irq spapr_allocate_irq(uint32_t hint, uint32_t *irq_num,
enum xics_irq_type type)
@@ -258,6 +260,9 @@ static void *spapr_create_fdt_skel(const char *cpu_model,
_FDT((fdt_property(fdt, "qemu,boot-kernel", &kprop, sizeof(kprop))));
}
_FDT((fdt_property_string(fdt, "qemu,boot-device", boot_device)));
+ _FDT((fdt_property_cell(fdt, "qemu,graphic-width", graphic_width)));
+ _FDT((fdt_property_cell(fdt, "qemu,graphic-height", graphic_height)));
+ _FDT((fdt_property_cell(fdt, "qemu,graphic-depth", graphic_depth)));
_FDT((fdt_end_node(fdt)));
@@ -504,7 +509,9 @@ static void spapr_finalize_fdt(sPAPREnvironment *spapr,
}
}
- spapr_populate_chosen_stdout(fdt, spapr->vio_bus);
+ if (!spapr_has_graphics) {
+ spapr_populate_chosen_stdout(fdt, spapr->vio_bus);
+ }
_FDT((fdt_pack(fdt)));
@@ -557,6 +564,37 @@ static void spapr_cpu_reset(void *opaque)
cpu_reset(CPU(cpu));
}
+static bool spapr_vga_init(sPAPREnvironment *spapr)
+{
+ PCIBus *pci_bus = QLIST_FIRST(&spapr->phbs)->host_state.bus;
+
+ if (!pci_bus && (vga_interface_type != VGA_NONE)) {
+ fprintf(stderr, "Can't instantiate VGA interface without a PCI bus\n");
+ exit(1);
+ }
+
+ /* Default is nothing */
+#if 0 /* Enable this once we merge a SLOF which works with Cirrus */
+ if (cirrus_vga_enabled) {
+ pci_cirrus_vga_init(pci_bus);
+ } else
+#endif
+ if (vmsvga_enabled) {
+ fprintf(stderr, "Warning: vmware_vga not available,"
+ " using standard VGA instead\n");
+ pci_vga_init(pci_bus);
+#ifdef CONFIG_SPICE
+ } else if (qxl_enabled) {
+ pci_create_simple(pci_bus, -1, "qxl-vga");
+#endif
+ } else if (std_vga_enabled) {
+ pci_vga_init(pci_bus);
+ } else {
+ return false;
+ }
+ return true;
+}
+
/* pSeries LPAR / sPAPR hardware init */
static void ppc_spapr_init(ram_addr_t ram_size,
const char *boot_device,
@@ -711,10 +749,20 @@ static void ppc_spapr_init(ram_addr_t ram_size,
spapr_vscsi_create(spapr->vio_bus);
}
+ /* Graphics */
+ if (spapr_vga_init(spapr)) {
+ spapr_has_graphics = true;
+ usb_enabled = 1;
+ }
+
/* USB */
if (usb_enabled) {
pci_create_simple(QLIST_FIRST(&spapr->phbs)->host_state.bus,
-1, "pci-ohci");
+ if (spapr_has_graphics) {
+ usbdevice_create("keyboard");
+ usbdevice_create("mouse");
+ }
}
if (rma_size < (MIN_RMA_SLOF << 20)) {
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 4/5] pseries: Remove extraneous prints
2012-07-31 6:09 [Qemu-devel] [0/5] Assorted pseries fixes and updates David Gibson
` (2 preceding siblings ...)
2012-07-31 6:09 ` [Qemu-devel] [PATCH 3/5] pseries: Add support for -vga option David Gibson
@ 2012-07-31 6:09 ` David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 5/5] pseries: Add support for new KVM hash table control call David Gibson
4 siblings, 0 replies; 9+ messages in thread
From: David Gibson @ 2012-07-31 6:09 UTC (permalink / raw)
To: agraf; +Cc: qemu-ppc, qemu-devel, David Gibson
The pseries machine prints several messages to stderr whenever it starts up
and another whenever the vm is reset. It's not normal for qemu machines to
do this though, so this patch removes them. We can put them back
conditional on a DEBUG symbol if we really need them in future.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
hw/spapr.c | 18 ------------------
1 file changed, 18 deletions(-)
diff --git a/hw/spapr.c b/hw/spapr.c
index bf38823..693441e 100644
--- a/hw/spapr.c
+++ b/hw/spapr.c
@@ -540,8 +540,6 @@ static void spapr_reset(void *opaque)
{
sPAPREnvironment *spapr = (sPAPREnvironment *)opaque;
- fprintf(stderr, "sPAPR reset\n");
-
/* flush out the hash table */
memset(spapr->htab, 0, spapr->htab_size);
@@ -771,14 +769,6 @@ static void ppc_spapr_init(ram_addr_t ram_size,
exit(1);
}
- fprintf(stderr, "sPAPR memory map:\n");
- fprintf(stderr, "RTAS : 0x%08lx..%08lx\n",
- (unsigned long)spapr->rtas_addr,
- (unsigned long)(spapr->rtas_addr + spapr->rtas_size - 1));
- fprintf(stderr, "FDT : 0x%08lx..%08lx\n",
- (unsigned long)spapr->fdt_addr,
- (unsigned long)(spapr->fdt_addr + FDT_MAX_SIZE - 1));
-
if (kernel_filename) {
uint64_t lowaddr = 0;
@@ -794,8 +784,6 @@ static void ppc_spapr_init(ram_addr_t ram_size,
kernel_filename);
exit(1);
}
- fprintf(stderr, "Kernel : 0x%08x..%08lx\n",
- KERNEL_LOAD_ADDR, KERNEL_LOAD_ADDR + kernel_size - 1);
/* load initrd */
if (initrd_filename) {
@@ -810,8 +798,6 @@ static void ppc_spapr_init(ram_addr_t ram_size,
initrd_filename);
exit(1);
}
- fprintf(stderr, "Ramdisk : 0x%08lx..%08lx\n",
- (long)initrd_base, (long)(initrd_base + initrd_size - 1));
} else {
initrd_base = 0;
initrd_size = 0;
@@ -825,10 +811,6 @@ static void ppc_spapr_init(ram_addr_t ram_size,
exit(1);
}
g_free(filename);
- fprintf(stderr, "Firmware load : 0x%08x..%08lx\n",
- 0, fw_size);
- fprintf(stderr, "Firmware runtime : 0x%08lx..%08lx\n",
- load_limit, (unsigned long)spapr->fdt_addr);
spapr->entry_point = 0x100;
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 5/5] pseries: Add support for new KVM hash table control call
2012-07-31 6:09 [Qemu-devel] [0/5] Assorted pseries fixes and updates David Gibson
` (3 preceding siblings ...)
2012-07-31 6:09 ` [Qemu-devel] [PATCH 4/5] pseries: Remove extraneous prints David Gibson
@ 2012-07-31 6:09 ` David Gibson
4 siblings, 0 replies; 9+ messages in thread
From: David Gibson @ 2012-07-31 6:09 UTC (permalink / raw)
To: agraf; +Cc: qemu-ppc, qemu-devel
From: Ben Herrenschmidt <benh@kernel.crashing.org>
This adds support for then new "reset htab" ioctl which allows qemu
to properly cleanup the MMU hash table when the guest is reset. With
the corresponding kernel support, reset of a guest now works properly.
This also paves the way for indicating a different size hash table
to the kernel and for the kernel to be able to impose limits on
the requested size.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
hw/spapr.c | 294 ++++++++++++++++++++++++++++++--------------------
hw/spapr.h | 4 +-
target-ppc/kvm.c | 51 +++++++--
target-ppc/kvm_ppc.h | 20 ++++
4 files changed, 243 insertions(+), 126 deletions(-)
diff --git a/hw/spapr.c b/hw/spapr.c
index 693441e..2453bae 100644
--- a/hw/spapr.c
+++ b/hw/spapr.c
@@ -83,6 +83,8 @@
#define PHANDLE_XICP 0x00001111
+#define HTAB_SIZE(spapr) (1ULL << ((spapr)->htab_shift))
+
sPAPREnvironment *spapr;
static bool spapr_has_graphics;
@@ -111,12 +113,13 @@ qemu_irq spapr_allocate_irq(uint32_t hint, uint32_t *irq_num,
return qirq;
}
-static int spapr_set_associativity(void *fdt, sPAPREnvironment *spapr)
+static int spapr_fixup_cpu_dt(void *fdt, sPAPREnvironment *spapr)
{
int ret = 0, offset;
CPUPPCState *env;
char cpu_model[32];
int smt = kvmppc_smt_threads();
+ uint32_t pft_size_prop[] = {0, cpu_to_be32(spapr->htab_shift)};
assert(spapr->cpu_model);
@@ -140,8 +143,16 @@ static int spapr_set_associativity(void *fdt, sPAPREnvironment *spapr)
return offset;
}
- ret = fdt_setprop(fdt, offset, "ibm,associativity", associativity,
- sizeof(associativity));
+ if (nb_numa_nodes > 1) {
+ ret = fdt_setprop(fdt, offset, "ibm,associativity", associativity,
+ sizeof(associativity));
+ if (ret < 0) {
+ return ret;
+ }
+ }
+
+ ret = fdt_setprop(fdt, offset, "ibm,pft-size",
+ pft_size_prop, sizeof(pft_size_prop));
if (ret < 0) {
return ret;
}
@@ -183,45 +194,36 @@ static size_t create_page_sizes_prop(CPUPPCState *env, uint32_t *prop,
return (p - prop) * sizeof(uint32_t);
}
+#define _FDT(exp) \
+ do { \
+ int ret = (exp); \
+ if (ret < 0) { \
+ fprintf(stderr, "qemu: error creating device tree: %s: %s\n", \
+ #exp, fdt_strerror(ret)); \
+ exit(1); \
+ } \
+ } while (0)
+
+
static void *spapr_create_fdt_skel(const char *cpu_model,
- target_phys_addr_t rma_size,
target_phys_addr_t initrd_base,
target_phys_addr_t initrd_size,
target_phys_addr_t kernel_size,
const char *boot_device,
- const char *kernel_cmdline,
- long hash_shift)
+ const char *kernel_cmdline)
{
void *fdt;
CPUPPCState *env;
- uint64_t mem_reg_property[2];
uint32_t start_prop = cpu_to_be32(initrd_base);
uint32_t end_prop = cpu_to_be32(initrd_base + initrd_size);
- uint32_t pft_size_prop[] = {0, cpu_to_be32(hash_shift)};
char hypertas_prop[] = "hcall-pft\0hcall-term\0hcall-dabr\0hcall-interrupt"
"\0hcall-tce\0hcall-vio\0hcall-splpar\0hcall-bulk";
char qemu_hypertas_prop[] = "hcall-memop1";
+ uint32_t refpoints[] = {cpu_to_be32(0x4), cpu_to_be32(0x4)};
uint32_t interrupt_server_ranges_prop[] = {0, cpu_to_be32(smp_cpus)};
- int i;
char *modelname;
- int smt = kvmppc_smt_threads();
+ int i, smt = kvmppc_smt_threads();
unsigned char vec5[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x80};
- uint32_t refpoints[] = {cpu_to_be32(0x4), cpu_to_be32(0x4)};
- uint32_t associativity[] = {cpu_to_be32(0x4), cpu_to_be32(0x0),
- cpu_to_be32(0x0), cpu_to_be32(0x0),
- cpu_to_be32(0x0)};
- char mem_name[32];
- target_phys_addr_t node0_size, mem_start;
-
-#define _FDT(exp) \
- do { \
- int ret = (exp); \
- if (ret < 0) { \
- fprintf(stderr, "qemu: error creating device tree: %s: %s\n", \
- #exp, fdt_strerror(ret)); \
- exit(1); \
- } \
- } while (0)
fdt = g_malloc0(FDT_MAX_SIZE);
_FDT((fdt_create(fdt, FDT_MAX_SIZE)));
@@ -266,55 +268,6 @@ static void *spapr_create_fdt_skel(const char *cpu_model,
_FDT((fdt_end_node(fdt)));
- /* memory node(s) */
- node0_size = (nb_numa_nodes > 1) ? node_mem[0] : ram_size;
- if (rma_size > node0_size) {
- rma_size = node0_size;
- }
-
- /* RMA */
- mem_reg_property[0] = 0;
- mem_reg_property[1] = cpu_to_be64(rma_size);
- _FDT((fdt_begin_node(fdt, "memory@0")));
- _FDT((fdt_property_string(fdt, "device_type", "memory")));
- _FDT((fdt_property(fdt, "reg", mem_reg_property,
- sizeof(mem_reg_property))));
- _FDT((fdt_property(fdt, "ibm,associativity", associativity,
- sizeof(associativity))));
- _FDT((fdt_end_node(fdt)));
-
- /* RAM: Node 0 */
- if (node0_size > rma_size) {
- mem_reg_property[0] = cpu_to_be64(rma_size);
- mem_reg_property[1] = cpu_to_be64(node0_size - rma_size);
-
- sprintf(mem_name, "memory@" TARGET_FMT_lx, rma_size);
- _FDT((fdt_begin_node(fdt, mem_name)));
- _FDT((fdt_property_string(fdt, "device_type", "memory")));
- _FDT((fdt_property(fdt, "reg", mem_reg_property,
- sizeof(mem_reg_property))));
- _FDT((fdt_property(fdt, "ibm,associativity", associativity,
- sizeof(associativity))));
- _FDT((fdt_end_node(fdt)));
- }
-
- /* RAM: Node 1 and beyond */
- mem_start = node0_size;
- for (i = 1; i < nb_numa_nodes; i++) {
- mem_reg_property[0] = cpu_to_be64(mem_start);
- mem_reg_property[1] = cpu_to_be64(node_mem[i]);
- associativity[3] = associativity[4] = cpu_to_be32(i);
- sprintf(mem_name, "memory@" TARGET_FMT_lx, mem_start);
- _FDT((fdt_begin_node(fdt, mem_name)));
- _FDT((fdt_property_string(fdt, "device_type", "memory")));
- _FDT((fdt_property(fdt, "reg", mem_reg_property,
- sizeof(mem_reg_property))));
- _FDT((fdt_property(fdt, "ibm,associativity", associativity,
- sizeof(associativity))));
- _FDT((fdt_end_node(fdt)));
- mem_start += node_mem[i];
- }
-
/* cpus */
_FDT((fdt_begin_node(fdt, "cpus")));
@@ -366,8 +319,6 @@ static void *spapr_create_fdt_skel(const char *cpu_model,
_FDT((fdt_property_cell(fdt, "timebase-frequency", tbfreq)));
_FDT((fdt_property_cell(fdt, "clock-frequency", cpufreq)));
_FDT((fdt_property_cell(fdt, "ibm,slb-size", env->slb_nr)));
- _FDT((fdt_property(fdt, "ibm,pft-size",
- pft_size_prop, sizeof(pft_size_prop))));
_FDT((fdt_property_string(fdt, "status", "okay")));
_FDT((fdt_property(fdt, "64-bit", NULL, 0)));
@@ -466,6 +417,68 @@ static void *spapr_create_fdt_skel(const char *cpu_model,
return fdt;
}
+static int spapr_populate_memory(sPAPREnvironment *spapr, void *fdt)
+{
+ uint32_t associativity[] = {cpu_to_be32(0x4), cpu_to_be32(0x0),
+ cpu_to_be32(0x0), cpu_to_be32(0x0),
+ cpu_to_be32(0x0)};
+ char mem_name[32];
+ target_phys_addr_t node0_size, mem_start;
+ uint64_t mem_reg_property[2];
+ int i, off;
+
+ /* memory node(s) */
+ node0_size = (nb_numa_nodes > 1) ? node_mem[0] : ram_size;
+ if (spapr->rma_size > node0_size) {
+ spapr->rma_size = node0_size;
+ }
+
+ /* RMA */
+ mem_reg_property[0] = 0;
+ mem_reg_property[1] = cpu_to_be64(spapr->rma_size);
+ off = fdt_add_subnode(fdt, 0, "memory@0");
+ _FDT(off);
+ _FDT((fdt_setprop_string(fdt, off, "device_type", "memory")));
+ _FDT((fdt_setprop(fdt, off, "reg", mem_reg_property,
+ sizeof(mem_reg_property))));
+ _FDT((fdt_setprop(fdt, off, "ibm,associativity", associativity,
+ sizeof(associativity))));
+
+ /* RAM: Node 0 */
+ if (node0_size > spapr->rma_size) {
+ mem_reg_property[0] = cpu_to_be64(spapr->rma_size);
+ mem_reg_property[1] = cpu_to_be64(node0_size - spapr->rma_size);
+
+ sprintf(mem_name, "memory@" TARGET_FMT_lx, spapr->rma_size);
+ off = fdt_add_subnode(fdt, 0, mem_name);
+ _FDT(off);
+ _FDT((fdt_setprop_string(fdt, off, "device_type", "memory")));
+ _FDT((fdt_setprop(fdt, off, "reg", mem_reg_property,
+ sizeof(mem_reg_property))));
+ _FDT((fdt_setprop(fdt, off, "ibm,associativity", associativity,
+ sizeof(associativity))));
+ }
+
+ /* RAM: Node 1 and beyond */
+ mem_start = node0_size;
+ for (i = 1; i < nb_numa_nodes; i++) {
+ mem_reg_property[0] = cpu_to_be64(mem_start);
+ mem_reg_property[1] = cpu_to_be64(node_mem[i]);
+ associativity[3] = associativity[4] = cpu_to_be32(i);
+ sprintf(mem_name, "memory@" TARGET_FMT_lx, mem_start);
+ off = fdt_add_subnode(fdt, 0, mem_name);
+ _FDT(off);
+ _FDT((fdt_setprop_string(fdt, off, "device_type", "memory")));
+ _FDT((fdt_setprop(fdt, off, "reg", mem_reg_property,
+ sizeof(mem_reg_property))));
+ _FDT((fdt_setprop(fdt, off, "ibm,associativity", associativity,
+ sizeof(associativity))));
+ mem_start += node_mem[i];
+ }
+
+ return 0;
+}
+
static void spapr_finalize_fdt(sPAPREnvironment *spapr,
target_phys_addr_t fdt_addr,
target_phys_addr_t rtas_addr,
@@ -480,6 +493,12 @@ static void spapr_finalize_fdt(sPAPREnvironment *spapr,
/* open out the base tree into a temp buffer for the final tweaks */
_FDT((fdt_open_into(spapr->fdt_skel, fdt, FDT_MAX_SIZE)));
+ ret = spapr_populate_memory(spapr, fdt);
+ if (ret < 0) {
+ fprintf(stderr, "couldn't setup memory nodes in fdt\n");
+ exit(1);
+ }
+
ret = spapr_populate_vdevice(spapr->vio_bus, fdt);
if (ret < 0) {
fprintf(stderr, "couldn't setup vio devices in fdt\n");
@@ -502,11 +521,9 @@ static void spapr_finalize_fdt(sPAPREnvironment *spapr,
}
/* Advertise NUMA via ibm,associativity */
- if (nb_numa_nodes > 1) {
- ret = spapr_set_associativity(fdt, spapr);
- if (ret < 0) {
- fprintf(stderr, "Couldn't set up NUMA device tree properties\n");
- }
+ ret = spapr_fixup_cpu_dt(fdt, spapr);
+ if (ret < 0) {
+ fprintf(stderr, "Couldn't finalize CPU device tree properties\n");
}
if (!spapr_has_graphics) {
@@ -536,30 +553,74 @@ static void emulate_spapr_hypercall(CPUPPCState *env)
env->gpr[3] = spapr_hypercall(env, env->gpr[3], &env->gpr[4]);
}
+static void spapr_reset_htab(sPAPREnvironment *spapr)
+{
+ long shift;
+
+ /* allocate hash page table. For now we always make this 16mb,
+ * later we should probably make it scale to the size of guest
+ * RAM */
+
+ shift = kvmppc_reset_htab(spapr->htab_shift);
+
+ if (shift > 0) {
+ /* Kernel handles htab, we don't need to allocate one */
+ spapr->htab_shift = shift;
+ } else {
+ if (!spapr->htab) {
+ /* Allocate an htab if we don't yet have one */
+ spapr->htab = qemu_memalign(HTAB_SIZE(spapr), HTAB_SIZE(spapr));
+ }
+
+ /* And clear it */
+ memset(spapr->htab, 0, HTAB_SIZE(spapr));
+ }
+
+ /* Update the RMA size if necessary */
+ if (spapr->vrma_adjust) {
+ spapr->rma_size = kvmppc_rma_size(ram_size, spapr->htab_shift);
+ }
+}
+
static void spapr_reset(void *opaque)
{
sPAPREnvironment *spapr = (sPAPREnvironment *)opaque;
- /* flush out the hash table */
- memset(spapr->htab, 0, spapr->htab_size);
+ /* Reset the hash table & recalc the RMA */
+ spapr_reset_htab(spapr);
/* Load the fdt */
spapr_finalize_fdt(spapr, spapr->fdt_addr, spapr->rtas_addr,
spapr->rtas_size);
-
- /* Set up the entry state */
- first_cpu->gpr[3] = spapr->fdt_addr;
- first_cpu->gpr[5] = 0;
- first_cpu->halted = 0;
- first_cpu->nip = spapr->entry_point;
-
}
static void spapr_cpu_reset(void *opaque)
{
PowerPCCPU *cpu = opaque;
+ CPUPPCState *env = &cpu->env;
cpu_reset(CPU(cpu));
+
+ env->external_htab = spapr->htab;
+ env->htab_base = -1;
+ env->htab_mask = HTAB_SIZE(spapr) - 1;
+
+ env->spr[SPR_SDR1] = (unsigned long)spapr->htab |
+ (spapr->htab_shift - 18);
+
+ if (kvm_enabled()) {
+ kvmppc_update_sdr1(env);
+ }
+
+ /* Set up the entry state */
+ if (env == first_cpu) {
+ env->gpr[3] = spapr->fdt_addr;
+ env->gpr[5] = 0;
+ env->halted = 0;
+ env->nip = spapr->entry_point;
+ }
+
+ tb_flush(env);
}
static bool spapr_vga_init(sPAPREnvironment *spapr)
@@ -606,11 +667,10 @@ static void ppc_spapr_init(ram_addr_t ram_size,
int i;
MemoryRegion *sysmem = get_system_memory();
MemoryRegion *ram = g_new(MemoryRegion, 1);
- target_phys_addr_t rma_alloc_size, rma_size;
+ target_phys_addr_t rma_alloc_size;
uint32_t initrd_base = 0;
long kernel_size = 0, initrd_size = 0;
long load_limit, rtas_limit, fw_size;
- long pteg_shift = 17;
char *filename;
spapr = g_malloc0(sizeof(*spapr));
@@ -625,20 +685,41 @@ static void ppc_spapr_init(ram_addr_t ram_size,
hw_error("qemu: Unable to create RMA\n");
exit(1);
}
+
if (rma_alloc_size && (rma_alloc_size < ram_size)) {
- rma_size = rma_alloc_size;
+ spapr->rma_size = rma_alloc_size;
} else {
- rma_size = ram_size;
+ spapr->rma_size = ram_size;
+
+ /* With KVM, we don't actually know whether KVM supports an
+ * unbounded RMA (PR KVM) or is limited by the hash table size
+ * (HV KVM using VRMA), so we always assume the latter
+ *
+ * In that case, we also limit the initial allocations for RTAS
+ * etc... to 256M since we have no way to know what the VRMA size
+ * is going to be as it depends on the size of the hash table
+ * isn't determined yet.
+ */
+ if (kvm_enabled()) {
+ spapr->vrma_adjust = 1;
+ spapr->rma_size = MIN(spapr->rma_size, 0x10000000);
+ }
}
/* We place the device tree and RTAS just below either the top of the RMA,
* or just below 2GB, whichever is lowere, so that it can be
* processed with 32-bit real mode code if necessary */
- rtas_limit = MIN(rma_size, 0x80000000);
+ rtas_limit = MIN(spapr->rma_size, 0x80000000);
spapr->rtas_addr = rtas_limit - RTAS_MAX_SIZE;
spapr->fdt_addr = spapr->rtas_addr - FDT_MAX_SIZE;
load_limit = spapr->fdt_addr - FW_OVERHEAD;
+ /* For now, always aim for a 16MB hash table */
+ /* FIXME: we should change this default based on RAM size */
+ spapr->htab_shift = 24;
+
+ qemu_register_reset(spapr_reset, spapr);
+
/* init CPUs */
if (cpu_model == NULL) {
cpu_model = kvm_enabled() ? "host" : "POWER7";
@@ -671,20 +752,8 @@ static void ppc_spapr_init(ram_addr_t ram_size,
memory_region_add_subregion(sysmem, nonrma_base, ram);
}
- /* allocate hash page table. For now we always make this 16mb,
- * later we should probably make it scale to the size of guest
- * RAM */
- spapr->htab_size = 1ULL << (pteg_shift + 7);
- spapr->htab = qemu_memalign(spapr->htab_size, spapr->htab_size);
-
for (env = first_cpu; env != NULL; env = env->next_cpu) {
- env->external_htab = spapr->htab;
- env->htab_base = -1;
- env->htab_mask = spapr->htab_size - 1;
-
/* Tell KVM that we're in PAPR mode */
- env->spr[SPR_SDR1] = (unsigned long)spapr->htab |
- ((pteg_shift + 7) - 18);
env->spr[SPR_HIOR] = 0;
if (kvm_enabled()) {
@@ -763,7 +832,7 @@ static void ppc_spapr_init(ram_addr_t ram_size,
}
}
- if (rma_size < (MIN_RMA_SLOF << 20)) {
+ if (spapr->rma_size < (MIN_RMA_SLOF << 20)) {
fprintf(stderr, "qemu: pSeries SLOF firmware requires >= "
"%ldM guest RMA (Real Mode Area memory)\n", MIN_RMA_SLOF);
exit(1);
@@ -820,14 +889,11 @@ static void ppc_spapr_init(ram_addr_t ram_size,
}
/* Prepare the device tree */
- spapr->fdt_skel = spapr_create_fdt_skel(cpu_model, rma_size,
+ spapr->fdt_skel = spapr_create_fdt_skel(cpu_model,
initrd_base, initrd_size,
kernel_size,
- boot_device, kernel_cmdline,
- pteg_shift + 7);
+ boot_device, kernel_cmdline);
assert(spapr->fdt_skel != NULL);
-
- qemu_register_reset(spapr_reset, spapr);
}
static QEMUMachine spapr_machine = {
diff --git a/hw/spapr.h b/hw/spapr.h
index 9153f29..7bac4c6 100644
--- a/hw/spapr.h
+++ b/hw/spapr.h
@@ -15,7 +15,9 @@ typedef struct sPAPREnvironment {
target_phys_addr_t ram_limit;
void *htab;
- long htab_size;
+ long htab_shift;
+ target_phys_addr_t rma_size;
+ int vrma_adjust;
target_phys_addr_t fdt_addr, rtas_addr;
long rtas_size;
void *fdt_skel;
diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c
index 829e180..ab30e6e 100644
--- a/target-ppc/kvm.c
+++ b/target-ppc/kvm.c
@@ -947,7 +947,6 @@ void kvmppc_set_papr(CPUPPCState *env)
{
struct kvm_enable_cap cap = {};
struct kvm_one_reg reg = {};
- struct kvm_sregs sregs = {};
int ret;
uint64_t hior = env->spr[SPR_HIOR];
@@ -975,23 +974,26 @@ void kvmppc_set_papr(CPUPPCState *env)
"please update your host kernel!\n");
}
+ return;
+
+fail:
+ cpu_abort(env, "This KVM version does not support PAPR\n");
+}
+
+int kvmppc_update_sdr1(CPUPPCState *env)
+{
+ struct kvm_sregs sregs = {};
+ int ret;
+
/* Set SDR1 so kernel space finds the HTAB */
ret = kvm_vcpu_ioctl(env, KVM_GET_SREGS, &sregs);
if (ret) {
- goto fail;
+ return ret;
}
sregs.u.s.sdr1 = env->spr[SPR_SDR1];
- ret = kvm_vcpu_ioctl(env, KVM_SET_SREGS, &sregs);
- if (ret) {
- goto fail;
- }
-
- return;
-
-fail:
- cpu_abort(env, "This KVM version does not support PAPR\n");
+ return kvm_vcpu_ioctl(env, KVM_SET_SREGS, &sregs);
}
int kvmppc_smt_threads(void)
@@ -1042,6 +1044,15 @@ off_t kvmppc_alloc_rma(const char *name, MemoryRegion *sysmem)
return size;
}
+uint64_t kvmppc_rma_size(uint64_t current_size, unsigned int hash_shift)
+{
+ if (cap_ppc_rma >= 2) {
+ return current_size;
+ }
+ return MIN(current_size,
+ getrampagesize() << (hash_shift - 7));
+}
+
void *kvmppc_create_spapr_tce(uint32_t liobn, uint32_t window_size, int *pfd)
{
struct kvm_create_spapr_tce args = {
@@ -1101,6 +1112,24 @@ int kvmppc_remove_spapr_tce(void *table, int fd, uint32_t window_size)
return 0;
}
+int kvmppc_reset_htab(int shift_hint)
+{
+ uint32_t shift = shift_hint;
+
+ if (kvm_enabled() &&
+ kvm_check_extension(kvm_state, KVM_CAP_PPC_ALLOC_HTAB)) {
+ int ret;
+ ret = kvm_vm_ioctl(kvm_state, KVM_PPC_ALLOCATE_HTAB, &shift);
+ if (ret < 0) {
+ return ret;
+ }
+ return shift;
+ }
+
+ /* For now.. */
+ return 0;
+}
+
static inline uint32_t mfpvr(void)
{
uint32_t pvr;
diff --git a/target-ppc/kvm_ppc.h b/target-ppc/kvm_ppc.h
index e2f8703..7f4ea8d 100644
--- a/target-ppc/kvm_ppc.h
+++ b/target-ppc/kvm_ppc.h
@@ -27,6 +27,9 @@ int kvmppc_smt_threads(void);
off_t kvmppc_alloc_rma(const char *name, MemoryRegion *sysmem);
void *kvmppc_create_spapr_tce(uint32_t liobn, uint32_t window_size, int *pfd);
int kvmppc_remove_spapr_tce(void *table, int pfd, uint32_t window_size);
+int kvmppc_reset_htab(int shift_hint);
+uint64_t kvmppc_rma_size(uint64_t current_size, unsigned int hash_shift);
+int kvmppc_update_sdr1(CPUPPCState *env);
#endif /* !CONFIG_USER_ONLY */
const ppc_def_t *kvmppc_host_cpu_def(void);
int kvmppc_fixup_cpu(CPUPPCState *env);
@@ -94,6 +97,23 @@ static inline int kvmppc_remove_spapr_tce(void *table, int pfd,
{
return -1;
}
+
+static inline int kvmppc_reset_htab(int shift_hint)
+{
+ return -1;
+}
+
+static inline uint64_t kvmppc_rma_size(uint64_t current_size,
+ unsigned int hash_shift)
+{
+ return ram_size;
+}
+
+static inline int kvmppc_update_sdr1(CPUPPCState *env)
+{
+ return 0;
+}
+
#endif /* !CONFIG_USER_ONLY */
static inline const ppc_def_t *kvmppc_host_cpu_def(void)
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested
2012-07-31 6:09 ` [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested David Gibson
@ 2012-07-31 7:35 ` Benjamin Herrenschmidt
2012-07-31 7:36 ` Benjamin Herrenschmidt
1 sibling, 0 replies; 9+ messages in thread
From: Benjamin Herrenschmidt @ 2012-07-31 7:35 UTC (permalink / raw)
To: David Gibson; +Cc: Li Zhang, qemu-ppc, agraf, qemu-devel
On Tue, 2012-07-31 at 16:09 +1000, David Gibson wrote:
> The pseries machine currently ignores the -usb command line option.
> This patch corrects the problem by having it instantiate a PCI OHCI
> USB host controller when -usb is specified.
>
> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Li Zhang <zhlcindy@gmail.com> has been owning that patch for a while and
I believe has a better version.
Li, what's the status with it ? Alex ?
Cheers,
Ben.
> ---
> hw/spapr.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/hw/spapr.c b/hw/spapr.c
> index ab5a0c2..740881b 100644
> --- a/hw/spapr.c
> +++ b/hw/spapr.c
> @@ -45,6 +45,7 @@
> #include "kvm.h"
> #include "kvm_ppc.h"
> #include "pci.h"
> +#include "usb.h"
>
> #include "exec-memory.h"
>
> @@ -710,6 +711,12 @@ static void ppc_spapr_init(ram_addr_t ram_size,
> spapr_vscsi_create(spapr->vio_bus);
> }
>
> + /* USB */
> + if (usb_enabled) {
> + pci_create_simple(QLIST_FIRST(&spapr->phbs)->host_state.bus,
> + -1, "pci-ohci");
> + }
> +
> if (rma_size < (MIN_RMA_SLOF << 20)) {
> fprintf(stderr, "qemu: pSeries SLOF firmware requires >= "
> "%ldM guest RMA (Real Mode Area memory)\n", MIN_RMA_SLOF);
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested
2012-07-31 6:09 ` [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested David Gibson
2012-07-31 7:35 ` Benjamin Herrenschmidt
@ 2012-07-31 7:36 ` Benjamin Herrenschmidt
2012-08-04 7:34 ` Li Zhang
1 sibling, 1 reply; 9+ messages in thread
From: Benjamin Herrenschmidt @ 2012-07-31 7:36 UTC (permalink / raw)
To: David Gibson; +Cc: Li Zhang, qemu-ppc, agraf, qemu-devel
On Tue, 2012-07-31 at 16:09 +1000, David Gibson wrote:
> The pseries machine currently ignores the -usb command line option.
> This patch corrects the problem by having it instantiate a PCI OHCI
> USB host controller when -usb is specified.
>
> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Same comment as the -vga patch, Li's been dealing with that lately,
Li, can you update us on the status of those patches ?
Cheers,
Ben.
> ---
> hw/spapr.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/hw/spapr.c b/hw/spapr.c
> index ab5a0c2..740881b 100644
> --- a/hw/spapr.c
> +++ b/hw/spapr.c
> @@ -45,6 +45,7 @@
> #include "kvm.h"
> #include "kvm_ppc.h"
> #include "pci.h"
> +#include "usb.h"
>
> #include "exec-memory.h"
>
> @@ -710,6 +711,12 @@ static void ppc_spapr_init(ram_addr_t ram_size,
> spapr_vscsi_create(spapr->vio_bus);
> }
>
> + /* USB */
> + if (usb_enabled) {
> + pci_create_simple(QLIST_FIRST(&spapr->phbs)->host_state.bus,
> + -1, "pci-ohci");
> + }
> +
> if (rma_size < (MIN_RMA_SLOF << 20)) {
> fprintf(stderr, "qemu: pSeries SLOF firmware requires >= "
> "%ldM guest RMA (Real Mode Area memory)\n", MIN_RMA_SLOF);
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested
2012-07-31 7:36 ` Benjamin Herrenschmidt
@ 2012-08-04 7:34 ` Li Zhang
0 siblings, 0 replies; 9+ messages in thread
From: Li Zhang @ 2012-08-04 7:34 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: qemu-devel, qemu-ppc, agraf, David Gibson
On Tue, Jul 31, 2012 at 3:36 PM, Benjamin Herrenschmidt
<benh@kernel.crashing.org> wrote:
> On Tue, 2012-07-31 at 16:09 +1000, David Gibson wrote:
>> The pseries machine currently ignores the -usb command line option.
>> This patch corrects the problem by having it instantiate a PCI OHCI
>> USB host controller when -usb is specified.
>>
>> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
>
> Same comment as the -vga patch, Li's been dealing with that lately,
> Li, can you update us on the status of those patches ?
Sorry to miss this mail.
I send out the v6 version. -:)
>
> Cheers,
> Ben.
>
>> ---
>> hw/spapr.c | 7 +++++++
>> 1 file changed, 7 insertions(+)
>>
>> diff --git a/hw/spapr.c b/hw/spapr.c
>> index ab5a0c2..740881b 100644
>> --- a/hw/spapr.c
>> +++ b/hw/spapr.c
>> @@ -45,6 +45,7 @@
>> #include "kvm.h"
>> #include "kvm_ppc.h"
>> #include "pci.h"
>> +#include "usb.h"
>>
>> #include "exec-memory.h"
>>
>> @@ -710,6 +711,12 @@ static void ppc_spapr_init(ram_addr_t ram_size,
>> spapr_vscsi_create(spapr->vio_bus);
>> }
>>
>> + /* USB */
>> + if (usb_enabled) {
>> + pci_create_simple(QLIST_FIRST(&spapr->phbs)->host_state.bus,
>> + -1, "pci-ohci");
>> + }
>> +
>> if (rma_size < (MIN_RMA_SLOF << 20)) {
>> fprintf(stderr, "qemu: pSeries SLOF firmware requires >= "
>> "%ldM guest RMA (Real Mode Area memory)\n", MIN_RMA_SLOF);
>
>
--
Best Regards
-Li
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2012-08-04 7:34 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-31 6:09 [Qemu-devel] [0/5] Assorted pseries fixes and updates David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 1/5] pseries: Update SLOF David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 2/5] pseries: Instantiate USB if requested David Gibson
2012-07-31 7:35 ` Benjamin Herrenschmidt
2012-07-31 7:36 ` Benjamin Herrenschmidt
2012-08-04 7:34 ` Li Zhang
2012-07-31 6:09 ` [Qemu-devel] [PATCH 3/5] pseries: Add support for -vga option David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 4/5] pseries: Remove extraneous prints David Gibson
2012-07-31 6:09 ` [Qemu-devel] [PATCH 5/5] pseries: Add support for new KVM hash table control call David Gibson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).