From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adam Jackson Subject: Re: radeon: RFC speed cap detection on ppc64 Date: Mon, 22 Oct 2012 11:27:54 -0400 Message-ID: <508565FA.4040908@redhat.com> References: <50819140.8030806@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <50819140.8030806@linux.vnet.ibm.com> Sender: linux-pci-owner@vger.kernel.org To: Lucas Kannebley Tavares Cc: dri-devel@lists.freedesktop.org, Benjamin Herrenschmidt , linux-pci@vger.kernel.org, Nishanth Aravamudan , linux-kernel@vger.kernel.org, Brian King , Bjorn Helgaas List-Id: dri-devel@lists.freedesktop.org On 10/19/12 1:43 PM, Lucas Kannebley Tavares wrote: > The radeon driver does speed cap detection on the root PCI device for > the maximum speed with which the adapter can communicate. On ppc64 > systems, however, the root device belongs to the Hypervisor, so the > current code would case a null pointer dereference. > > I propose to look for the outmost bus with a parent node and get speed > caps from it, though I suppose the cleaner way would be to inspect all > devices along the way and choose the smallest speed cap. That (walking all parent nodes) is probably the safest thing to do. I'm not sure whether it's optimal. It would likely depend on whether you can meaningfully have a bridge that's faster on the downstream side than on the upstream. - ajax