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"
>
>