[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 16/24] ppc/pnv: Put "*-pnv-chip" and "pnv-xive" on the main syste
From: |
Markus Armbruster |
Subject: |
[PATCH 16/24] ppc/pnv: Put "*-pnv-chip" and "pnv-xive" on the main system bus |
Date: |
Mon, 18 May 2020 07:04:00 +0200 |
pnv_init() creates "power10_v1.0-pnv-chip", "power8_v2.0-pnv-chip",
"power8e_v2.1-pnv-chip", "power8nvl_v1.0-pnv-chip", or
"power9_v2.0-pnv-chip" sysbus devices in a way that leaves them
unplugged.
pnv_chip_power9_instance_init() creates a "pnv-xive" sysbus device in
a way that leaves it unplugged.
Create them the common way that puts them into the main system bus.
Affects machines powernv8, powernv9, and powernv10. Visible in "info
qtree". Here's the change for powernv9:
bus: main-system-bus
type System
+ dev: power9_v2.0-pnv-chip, id ""
+ chip-id = 0 (0x0)
+ ram-start = 0 (0x0)
+ ram-size = 1879048192 (0x70000000)
+ nr-cores = 1 (0x1)
+ cores-mask = 72057594037927935 (0xffffffffffffff)
+ nr-threads = 1 (0x1)
+ num-phbs = 6 (0x6)
+ mmio 000603fc00000000/0000000400000000
[...]
+ dev: pnv-xive, id ""
+ ic-bar = 1692157036462080 (0x6030203100000)
+ vc-bar = 1689949371891712 (0x6010000000000)
+ pc-bar = 1690499127705600 (0x6018000000000)
+ tm-bar = 1692157036986368 (0x6030203180000)
Cc: "Cédric Le Goater" <address@hidden>
Cc: David Gibson <address@hidden>
Cc: address@hidden
Signed-off-by: Markus Armbruster <address@hidden>
---
hw/ppc/pnv.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
index da637822f9..8d4fc8109a 100644
--- a/hw/ppc/pnv.c
+++ b/hw/ppc/pnv.c
@@ -818,7 +818,7 @@ static void pnv_init(MachineState *machine)
pnv->chips = g_new0(PnvChip *, pnv->num_chips);
for (i = 0; i < pnv->num_chips; i++) {
char chip_name[32];
- Object *chip = object_new(chip_typename);
+ Object *chip = OBJECT(qdev_create(NULL, chip_typename));
pnv->chips[i] = PNV_CHIP(chip);
@@ -1317,8 +1317,8 @@ static void pnv_chip_power9_instance_init(Object *obj)
PnvChipClass *pcc = PNV_CHIP_GET_CLASS(obj);
int i;
- object_initialize_child(obj, "xive", &chip9->xive, sizeof(chip9->xive),
- TYPE_PNV_XIVE, &error_abort, NULL);
+ sysbus_init_child_obj(obj, "xive", &chip9->xive, sizeof(chip9->xive),
+ TYPE_PNV_XIVE);
object_property_add_alias(obj, "xive-fabric", OBJECT(&chip9->xive),
"xive-fabric");
--
2.21.1
- Re: [PATCH 11/24] pnv/phb4: Bury unwanted "pnv-phb4-pec-stack" devices, (continued)
- [PATCH 17/24] pnv/psi: Correct the pnv-psi* devices not to be sysbus devices, Markus Armbruster, 2020/05/18
- [PATCH 23/24] sd: Hide the qdev-but-not-quite thing created by sd_init(), Markus Armbruster, 2020/05/18
- [PATCH 10/24] macio: Bury unwanted "macio-gpio" devices, Markus Armbruster, 2020/05/18
- [PATCH 16/24] ppc/pnv: Put "*-pnv-chip" and "pnv-xive" on the main system bus,
Markus Armbruster <=
- [PATCH 24/24] qdev: Assert onboard devices all get realized properly, Markus Armbruster, 2020/05/18
- [PATCH 22/24] qdev: Assert devices are plugged into a bus that can take them, Markus Armbruster, 2020/05/18
- [PATCH 06/24] armv7m: Bury unwanted "ARM,bitband-memory" devices, Markus Armbruster, 2020/05/18