From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: RFC: [PATCH 1/3] Enhance platform support for PCI Date: Mon, 23 Feb 2015 11:14:05 +0000 Message-ID: <54EB0B7D.6060909@linaro.org> References: <54E71BDE.5020106@caviumnetworks.com> <54E7229C.7000301@linaro.org> <54E72452.3090801@caviumnetworks.com> <54E72688.9010005@linaro.org> <54E729F1.6000804@caviumnetworks.com> <54E73010.2050902@caviumnetworks.com> <1424439941.30924.243.camel@citrix.com> <54E74135.4040302@caviumnetworks.com> <1424443185.30924.268.camel@citrix.com> <54EB0813.20909@caviumnetworks.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <54EB0813.20909@caviumnetworks.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Manish Jaggi , xen-devel@lists.xen.org, Ian Campbell , Prasun.kapoor@cavium.com, Jan Beulich , "Kumar, Vijaya" , "Stefano Stabellini (Stefano.Stabellini@citrix.com)" List-Id: xen-devel@lists.xenproject.org On 23/02/2015 10:59, Manish Jaggi wrote: > > On 20/02/15 8:09 pm, Ian Campbell wrote: >> On Fri, 2015-02-20 at 19:44 +0530, Manish Jaggi wrote: >>>> Another option might be a new hypercall (assuming one doesn't already >>>> exist) to register a PCI bus which would take e.g. the PCI CFG base >>>> address and return a new u16 segment id to be used for all subsequent >>>> PCI related calls. This would require the dom0 OS to hook its >>>> pci_bus_add function, which might be doable (more doable than handling >>>> xen_segment_id DT properties I think). >>> This seems ok, i will try it out. >> I recommend you let this subthread (e.g. the conversation with Jan) >> settle upon a preferred course of action before implementing any one >> suggestion. > Ian we have also to consider for NUMA / multi node where there are two > or more its nodes. > pci0{ > > msi-parent = <&its0>; > } > > pci1{ > > msi-parent = <&its1>; > } > > This requires parsing pci nodes in xen and create a mapping between pci > nodes and its. Xe would need to be aware of PCI nodes in device tree > prior to dom0 sending a hypercall. Adding a property to pci node in > device tree should be a good approach. Why do you need it early? Wouldn't be sufficient to retrieve those information when the hypercall pci_device_add is called? What about ACPI case? Does everything necessary live in static table? Regards, -- Julien Grall