[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 20/21] PPC: e500: Select MPIC v4.2 on ppce500 platfo
From: |
Alexander Graf |
Subject: |
[Qemu-devel] [PATCH 20/21] PPC: e500: Select MPIC v4.2 on ppce500 platform |
Date: |
Fri, 25 Jan 2013 13:53:03 +0100 |
From: Scott Wood <address@hidden>
The compatible string is changed to fsl,mpic on all e500 platforms, to
advertise the existence of BRR1. This matches what the device tree will
have on real hardware.
With MPIC v4.2 max_cpu can be increased from 15 to 32.
Signed-off-by: Scott Wood <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>
---
hw/ppc/e500.c | 4 ++--
hw/ppc/e500.h | 2 ++
hw/ppc/e500plat.c | 4 +++-
hw/ppc/mpc8544ds.c | 2 ++
4 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c
index 530f929..b7474c0 100644
--- a/hw/ppc/e500.c
+++ b/hw/ppc/e500.c
@@ -297,7 +297,7 @@ static int ppce500_load_device_tree(CPUPPCState *env,
snprintf(mpic, sizeof(mpic), "%s/address@hidden", soc,
MPC8544_MPIC_REGS_OFFSET);
qemu_devtree_add_subnode(fdt, mpic);
qemu_devtree_setprop_string(fdt, mpic, "device_type", "open-pic");
- qemu_devtree_setprop_string(fdt, mpic, "compatible", "chrp,open-pic");
+ qemu_devtree_setprop_string(fdt, mpic, "compatible", "fsl,mpic");
qemu_devtree_setprop_cells(fdt, mpic, "reg", MPC8544_MPIC_REGS_OFFSET,
0x40000);
qemu_devtree_setprop_cell(fdt, mpic, "#address-cells", 0);
@@ -545,7 +545,7 @@ void ppce500_init(PPCE500Params *params)
mpic = g_new(qemu_irq, 256);
dev = qdev_create(NULL, "openpic");
qdev_prop_set_uint32(dev, "nb_cpus", smp_cpus);
- qdev_prop_set_uint32(dev, "model", OPENPIC_MODEL_FSL_MPIC_20);
+ qdev_prop_set_uint32(dev, "model", params->mpic_version);
qdev_init_nofail(dev);
s = SYS_BUS_DEVICE(dev);
diff --git a/hw/ppc/e500.h b/hw/ppc/e500.h
index f5ff273..226c93d 100644
--- a/hw/ppc/e500.h
+++ b/hw/ppc/e500.h
@@ -16,6 +16,8 @@ typedef struct PPCE500Params {
/* required -- must at least add toplevel board compatible */
void (*fixup_devtree)(struct PPCE500Params *params, void *fdt);
+
+ int mpic_version;
} PPCE500Params;
void ppce500_init(PPCE500Params *params);
diff --git a/hw/ppc/e500plat.c b/hw/ppc/e500plat.c
index 2dcc4a9..25ac4b1 100644
--- a/hw/ppc/e500plat.c
+++ b/hw/ppc/e500plat.c
@@ -15,6 +15,7 @@
#include "../boards.h"
#include "sysemu/device_tree.h"
#include "hw/pci/pci.h"
+#include "hw/openpic.h"
static void e500plat_fixup_devtree(PPCE500Params *params, void *fdt)
{
@@ -44,6 +45,7 @@ static void e500plat_init(QEMUMachineInitArgs *args)
.pci_first_slot = 0x1,
.pci_nr_slots = PCI_SLOT_MAX - 1,
.fixup_devtree = e500plat_fixup_devtree,
+ .mpic_version = OPENPIC_MODEL_FSL_MPIC_42,
};
ppce500_init(¶ms);
@@ -53,7 +55,7 @@ static QEMUMachine e500plat_machine = {
.name = "ppce500",
.desc = "generic paravirt e500 platform",
.init = e500plat_init,
- .max_cpus = 15,
+ .max_cpus = 32,
DEFAULT_MACHINE_OPTIONS,
};
diff --git a/hw/ppc/mpc8544ds.c b/hw/ppc/mpc8544ds.c
index 8e05e55..e25c70b 100644
--- a/hw/ppc/mpc8544ds.c
+++ b/hw/ppc/mpc8544ds.c
@@ -14,6 +14,7 @@
#include "e500.h"
#include "../boards.h"
#include "sysemu/device_tree.h"
+#include "hw/openpic.h"
static void mpc8544ds_fixup_devtree(PPCE500Params *params, void *fdt)
{
@@ -43,6 +44,7 @@ static void mpc8544ds_init(QEMUMachineInitArgs *args)
.pci_first_slot = 0x11,
.pci_nr_slots = 2,
.fixup_devtree = mpc8544ds_fixup_devtree,
+ .mpic_version = OPENPIC_MODEL_FSL_MPIC_20,
};
ppce500_init(¶ms);
--
1.6.0.2
- [Qemu-devel] [PATCH 12/21] cuda: Move ADB bus into CUDA state, (continued)
- [Qemu-devel] [PATCH 12/21] cuda: Move ADB bus into CUDA state, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 05/21] mac_nvram: Clean up public API, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 11/21] adb: QOM'ify ADB devices, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 15/21] pseries: Adjust default VIO address allocations to play better with libvirt, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 13/21] target-ppc: Give a meaningful error if too many threads are specified, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 10/21] adb: QOM'ify Apple Desktop Bus, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 18/21] openpic: add basic support for MPIC v4.2, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 20/21] PPC: e500: Select MPIC v4.2 on ppce500 platform,
Alexander Graf <=
- [Qemu-devel] [PATCH 14/21] pseries: Improve handling of multiple PCI host bridges, Alexander Graf, 2013/01/25
- Re: [Qemu-devel] [PULL 00/21] ppc patch queue 2013-01-25, Andreas Färber, 2013/01/25
- [Qemu-devel] [PATCH 21/21] PPC: Move ppc specific hw emulation to hw/ppc, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 19/21] PPC: e500: fix mpic_iack address, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 17/21] openpic: fix timer address decoding, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 09/21] cuda: QOM'ify CUDA, Alexander Graf, 2013/01/25
- [Qemu-devel] [PATCH 16/21] openpic: fix remaining issues from idr-to-destmask conversion, Alexander Graf, 2013/01/25