|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 00/22] Use MSI chip framework to configure MSI/MSI-X in all platforms
On Fri, Sep 26, 2014 at 11:42:23AM +0800, Yijing Wang wrote:
> >> I am actually in disagreement with you, Thierry. I don't like the general
> >> direction
> >> of the patches, or at least I don't like the fact that we don't have a
> >> portable
> >> way of setting up the msi_chip without having to rely on weak
> >> architectural hooks.
> >
> > Oh, good. That's actually one of the things I said I wasn't happy with
> > either. =)
>
> Hm, I decide to drop weak arch_find_msi_chip(), no one likes it.
> Let's find a better solution :)
>
> >
> >> I'm surprised no one considers the case of a platform having more than one
> >> host
> >> bridge and possibly more than one MSI unit. With the current proposed
> >> patchset I
> >> can't see how that would work.
> >
> > The PCI core can already deal with that. An MSI chip can be set per bus
> > and the weak pcibios_add_bus() can be used to set that. Often it might
> > not even be necessary to do it via pcibios_add_bus() if you create the
> > root bus directly, since you can attach the MSI chip at that time.
>
> Yes, PCI hostbridge driver find the matched msi chip during its
> initialization,
> and assign the msi chip to PCI bus in pcibios_add_bus().
>
> >
> >> What I would like to see is a way of creating the pci_host_bridge
> >> structure outside
> >> the pci_create_root_bus(). That would then allow us to pass this sort of
> >> platform
> >> details like associated msi_chip into the host bridge and the child busses
> >> will
> >> have an easy way of finding the information needed by finding the root bus
> >> and then
> >> the host bridge structure. Then the generic pci_scan_root_bus() can be
> >> used by (mostly)
> >> everyone and the drivers can remove their kludges that try to work around
> >> the
> >> current limitations.
>
> So I think maybe save msi chip in PCI arch sysdata is a good candidate.
Except that arch sysdata at the moment is an opaque pointer. I am all in favour
in
changing the type of sysdata from void* into pci_host_bridge* and arches can
wrap their old
sysdata around the pci_host_bridge*.
Best regards,
Liviu
>
> >
> > I think both issues are orthogonal. Last time I checked a lot of work
> > was still necessary to unify host bridges enough so that it could be
> > shared across architectures. But perhaps some of that work has
> > happened in the meantime.
> >
> > But like I said, when you create the root bus, you can easily attach the
> > MSI chip to it.
> >
> > Thierry
> >
>
>
> --
> Thanks!
> Yijing
>
>
--
-------------------
.oooO
( )
\ ( Oooo.
\_) ( )
) /
(_/
One small step
for me ...
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |