[PATCH] PCI: mvebu: setup BAR0 to internal-regs
Shmuel H.
sh at tkos.co.il
Tue Jun 23 00:31:49 EDT 2020
Hi Thomas, Bjorn,
On 6/23/20 1:49 AM, Bjorn Helgaas wrote:
> On Mon, Jun 22, 2020 at 08:40:33PM +0200, Thomas Petazzoni wrote:
>> On Mon, 22 Jun 2020 12:25:16 -0500
>> Bjorn Helgaas <helgaas at kernel.org> wrote:
>>
>>>> As a result of the requirement above, without this patch, MSI won't
>>>> function and therefore some devices won't operate properly without
>>>> pci=nomsi.
>>> Does that mean MSIs never worked at all with mvebu?
>> They definitely worked. I think what happens is that this register was
>> normally setup by the vendor-specific bootloader, and thanks to
>> firmware initialization, Linux had MSIs working properly.
>>
>> With other bootloaders that initialize the PCIe block differently, or
>> even not at all, it became clear this init was missing in Linux.
> That would be very useful information to include in the commit log.
Thanks. I will add it to the commit message.
>
> Are there any other similar bugs lurking? Other registers where we
> implicitly rely on the bootloader to do something?
I don't think that any PCI driver writer can answer this question for
sure.
I can however confirm that this driver, on the a385, works with no
u-boot PCIe initialization. As for other subsystems PCI is dependent on
(e.g. SerDes, etc), I can't say for sure.
--
- Shmuel Hazan
mailto:sh at tkos.co.il | tel:+972-523-746-435 | http://tkos.co.il
More information about the linux-arm-kernel
mailing list