xemu/include
Daniel Henrique Barboza 8ec1e4f1ef ppc/pnv: add phb-id/chip-id PnvPHB3RootBus properties
We rely on the phb-id and chip-id, which are PHB properties, to assign
chassis and slot to the root port. For default devices this is no big
deal: the root port is being created under pnv_phb_realize() and the
values are being passed on via the 'index' and 'chip-id' of the
pnv_phb_attach_root_port() helper.

If we want to implement user created root ports we have a problem. The
user created root port will not be aware of which PHB it belongs to,
unless we're willing to violate QOM best practices and access the PHB
via dev->parent_bus->parent. What we can do is to access the root bus
parent bus.

Since we're already assigning the root port as QOM child of the bus, and
the bus is initiated using PHB properties, let's add phb-id and chip-id
as properties of the bus. This will allow us trivial access to them, for
both user-created and default root ports, without doing anything too
shady with QOM.

Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Reviewed-by: Frederic Barrat <fbarrat@linux.ibm.com>
Message-Id: <20220811163950.578927-2-danielhb413@gmail.com>
2022-08-31 14:08:05 -03:00
..
authz Prefer 'on' | 'off' over 'yes' | 'no' for bool options 2021-01-29 17:07:53 +00:00
block nvme: Fix misleading macro when mixed with ternary operator 2022-07-15 10:40:33 +02:00
chardev Clean up ill-advised or unusual header guards 2022-05-11 16:50:01 +02:00
crypto crypto: Make block callbacks return 0 on success 2022-07-12 12:14:55 +02:00
disas target/loongarch: Add disassembler 2022-06-06 18:09:03 +00:00
exec linux-user/aarch64: Reset target data on MADV_DONTNEED 2022-08-11 11:34:17 +02:00
fpu fpu: Add rebias bool, value and operation 2022-08-31 14:08:05 -03:00
hw ppc/pnv: add phb-id/chip-id PnvPHB3RootBus properties 2022-08-31 14:08:05 -03:00
io io: add a QIOChannelNull equivalent to /dev/null 2022-06-22 18:11:21 +01:00
libdecnumber Replace config-time define HOST_WORDS_BIGENDIAN 2022-04-06 10:50:37 +02:00
migration migration: Remove load_state_old and minimum_version_id_old 2022-03-02 18:20:45 +00:00
monitor softmmu/dirtylimit: Implement dirty page rate limit 2022-07-20 12:15:08 +01:00
net Replace config-time define HOST_WORDS_BIGENDIAN 2022-04-06 10:50:37 +02:00
qapi include: move qdict_{crumple,flatten} declarations 2022-04-21 17:03:51 +04:00
qemu include/qemu/host-utils.h: Simplify the compiler check in mulu128() 2022-08-04 13:49:47 +02:00
qom qom/object: Remove circular include dependency 2022-06-28 10:53:32 +02:00
scsi scsi-disk: add SCSI_DISK_QUIRK_MODE_PAGE_VENDOR_SPECIFIC_APPLE quirk for Macintosh 2022-07-13 16:58:58 +02:00
semihosting semihosting: Remove qemu_semihosting_log_out 2022-07-12 22:32:12 +02:00
standard-headers hw/i386: pass RNG seed via setup_data entry 2022-07-22 19:26:34 +02:00
sysemu qapi: Add exit-failure PanicAction 2022-07-29 09:48:01 +01:00
tcg tcg: Add tcg_gen_mov_ptr 2022-06-02 08:09:46 -07:00
ui ui/console: allow display device to be labeled with given id 2022-07-01 12:33:51 +02:00
user misc: fix commonly doubled up words 2022-08-01 11:58:02 +02:00
elf.h elf: Add machine type value for LoongArch 2021-12-21 13:17:06 -08:00
glib-compat.h compiler.h: replace QEMU_NORETURN with G_NORETURN 2022-04-21 17:03:51 +04:00
qemu-io.h Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
qemu-main.h Simplify softmmu/main.c 2022-04-21 16:56:55 +04:00