[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <73341fe4-9017-7dcb-7ae3-a993428c11fc@siemens.com>
Date: Wed, 24 Aug 2016 07:13:12 -0400
From: Jan Kiszka <jan.kiszka@...mens.com>
To: Thomas Gleixner <tglx@...utronix.de>,
Bjorn Helgaas <helgaas@...nel.org>
Cc: LKML <linux-kernel@...r.kernel.org>, x86@...nel.org,
Bjorn Helgaas <bhelgaas@...gle.com>, linux-pci@...r.kernel.org,
Benedikt Spranger <b.spranger@...utronix.de>,
Lukas Wunner <lukas@...ner.de>
Subject: Re: x86/PCI: Scan all functions during probing
On 2016-08-24 04:39, Thomas Gleixner wrote:
> On Thu, 18 Aug 2016, Bjorn Helgaas wrote:
>> I looked up the spec: PCI (not PCIe) r3.0, sec 3.2.2.3.4, says:
>>
>> A single-function device may optionally respond to all function
>> numbers as the same function or may ... respond only to function 0
>> and not respond to the other function numbers.
>>
>> I'm concerned that a single-function device that responds to all
>> function numbers might break with this patch.
>>
>> [multi-function devices] are also required to always implement
>> function 0 in the device.
>>
>> Here's the reason we can advance by 8 in the "Go find them" loop.
>>
>> If a single function device is detected (i.e., bit 7 in the Header
>> Type register of function 0 is 0), no more functions for that Device
>> Number will be checked. If a multi-function device is detected
>> (i.e., bit 7 in the Header Type register of function 0 is 1), then
>> all remaining Function Numbers will be checked.
>>
>> This patch does the opposite of what the first sentence recommends.
>
> Fair enough. We'll need to find a way to deal with that in jailhouse then.
Wouldn't it also be an option to have this fine-grained scanning only
activated if we detect to run over Jailhouse (which we have to anyway)?
Such code hasn't been proposed for upstream yet, but we will eventually.
Jan
--
Siemens AG, Corporate Technology, CT RDA ITP SES-DE
Corporate Competence Center Embedded Linux
Powered by blists - more mailing lists