Message ID | 20220105212338.49899-11-danielhb413@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | user creatable pnv-phb3/pnv-phb4 devices | expand |
On 1/5/22 22:23, Daniel Henrique Barboza wrote: > The TYPE_PNV_PHB3_ROOT_BUS name is used as the default bus name when > the dev has no 'id'. However, pnv-phb3-root-bus is a bit too long to be > used as a bus name. > > Most common QEMU buses and PCI controllers are named based on their bus > type (e.g. pSeries spapr-pci-host-bridge is called 'pci'). The most > common name for a PCIE bus controller in QEMU is 'pcie'. Naming it > 'pcie' would break the documented use of the pnv-phb3 device, since > 'pcie.0' would now refer to the root bus instead of the first root port. > > There's nothing particularly wrong with the 'root-bus' name used before, > aside from the fact that 'root-bus' is being used for pnv-phb3 and > pnv-phb4 created buses, which is not quite correct since these buses > aren't implemented the same way in QEMU - you can't plug a > pnv-phb4-root-port into a pnv-phb3 root bus, for example. > > This patch renames it as 'pnv-phb3-root', which is a compromise between > the existing and the previously used name. Creating 3 phbs without ID > will result in an "info qtree" output similar to this: > > bus: main-system-bus > type System > dev: pnv-phb3, id "" > index = 2 (0x2) > chip-id = 0 (0x0) > x-config-reg-migration-enabled = true > bypass-iommu = false > bus: pnv-phb3-root.2 > type pnv-phb3-root > (...) > dev: pnv-phb3, id "" > index = 1 (0x1) > chip-id = 0 (0x0) > x-config-reg-migration-enabled = true > bypass-iommu = false > bus: pnv-phb3-root.1 > type pnv-phb3-root > (...) > dev: pnv-phb3, id "" > index = 0 (0x0) > chip-id = 0 (0x0) > x-config-reg-migration-enabled = true > bypass-iommu = false > bus: pnv-phb3-root.0 > type pnv-phb3-root > > Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> Reviewed-by: Cédric Le Goater <clg@kaod.org> Thanks, C. > --- > include/hw/pci-host/pnv_phb3.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/hw/pci-host/pnv_phb3.h b/include/hw/pci-host/pnv_phb3.h > index 2e423c3890..af6ec83cf6 100644 > --- a/include/hw/pci-host/pnv_phb3.h > +++ b/include/hw/pci-host/pnv_phb3.h > @@ -105,7 +105,7 @@ struct PnvPBCQState { > /* > * PHB3 PCIe Root port > */ > -#define TYPE_PNV_PHB3_ROOT_BUS "pnv-phb3-root-bus" > +#define TYPE_PNV_PHB3_ROOT_BUS "pnv-phb3-root" > > #define TYPE_PNV_PHB3_ROOT_PORT "pnv-phb3-root-port" > >
diff --git a/include/hw/pci-host/pnv_phb3.h b/include/hw/pci-host/pnv_phb3.h index 2e423c3890..af6ec83cf6 100644 --- a/include/hw/pci-host/pnv_phb3.h +++ b/include/hw/pci-host/pnv_phb3.h @@ -105,7 +105,7 @@ struct PnvPBCQState { /* * PHB3 PCIe Root port */ -#define TYPE_PNV_PHB3_ROOT_BUS "pnv-phb3-root-bus" +#define TYPE_PNV_PHB3_ROOT_BUS "pnv-phb3-root" #define TYPE_PNV_PHB3_ROOT_PORT "pnv-phb3-root-port"
The TYPE_PNV_PHB3_ROOT_BUS name is used as the default bus name when the dev has no 'id'. However, pnv-phb3-root-bus is a bit too long to be used as a bus name. Most common QEMU buses and PCI controllers are named based on their bus type (e.g. pSeries spapr-pci-host-bridge is called 'pci'). The most common name for a PCIE bus controller in QEMU is 'pcie'. Naming it 'pcie' would break the documented use of the pnv-phb3 device, since 'pcie.0' would now refer to the root bus instead of the first root port. There's nothing particularly wrong with the 'root-bus' name used before, aside from the fact that 'root-bus' is being used for pnv-phb3 and pnv-phb4 created buses, which is not quite correct since these buses aren't implemented the same way in QEMU - you can't plug a pnv-phb4-root-port into a pnv-phb3 root bus, for example. This patch renames it as 'pnv-phb3-root', which is a compromise between the existing and the previously used name. Creating 3 phbs without ID will result in an "info qtree" output similar to this: bus: main-system-bus type System dev: pnv-phb3, id "" index = 2 (0x2) chip-id = 0 (0x0) x-config-reg-migration-enabled = true bypass-iommu = false bus: pnv-phb3-root.2 type pnv-phb3-root (...) dev: pnv-phb3, id "" index = 1 (0x1) chip-id = 0 (0x0) x-config-reg-migration-enabled = true bypass-iommu = false bus: pnv-phb3-root.1 type pnv-phb3-root (...) dev: pnv-phb3, id "" index = 0 (0x0) chip-id = 0 (0x0) x-config-reg-migration-enabled = true bypass-iommu = false bus: pnv-phb3-root.0 type pnv-phb3-root Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> --- include/hw/pci-host/pnv_phb3.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)