linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] PCI: fix pci-mvebu after conversion to common bridge emul code
@ 2019-02-20  9:48 Thomas Petazzoni
  2019-02-20  9:48 ` [PATCH 1/2] PCI: pci-bridge-emul: Create per-bridge copy of register behavior Thomas Petazzoni
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Thomas Petazzoni @ 2019-02-20  9:48 UTC (permalink / raw)
  To: Bjorn Helgaas, Lorenzo Pieralisi, linux-pci
  Cc: Russell King, linux-arm-kernel, Jason Cooper, Andrew Lunn,
	Sebastian Hesselbarth, Gregory Clement, Luís Mendes,
	Leigh Brown, Thomas Petazzoni

Hello,

This set of two patches aim at fixing some regression reported by two
users (Luis and Leigh), that were introduced by the conversion of the
pci-mvebu driver to the common PCI bridge emulation code shared
between pci-aardvark and pci-mvebu.

Due to this conversion, some registers of the PCI configuration that
used to be read-only are now read-write, making the Linux PCI core
believe that some features are implemented by the PCI bridge. Namely
in the case of pci-mvebu, the prefetchable memory base/limit registers
were read-only, while they are now read-write. Due to this, the Linux
PCI core now believes it can configure a prefetchable memory area, but
this is not supported by pci-mvebu, which does not have the logic to
create the appropriate MBUs windows.

This set of two commits allow PCI controller code to tell the PCI
bridge emulation logic about their capabilities. Because we envision
that other capabilities than prefetchable memory support might need to
be communicated from the PCI controller code to the PCI bridge
emulation code in the future, we introduce a "flags" argument, even if
for now only one flag is supported.

Lorenzo, let me know what you think about this approach. I am open to
suggestions if the proposed approach is not satisfying.

Both patches have been confirmed by Luis and Leigh to fix the
regression, but I'll let them give a formal Tested-by.

Best regards,

Thomas Petazzoni

Thomas Petazzoni (2):
  PCI: pci-bridge-emul: Create per-bridge copy of register behavior
  PCI: pci-bridge-emul: Extend pci_bridge_emul_init() with flags

 drivers/pci/controller/pci-aardvark.c |  2 +-
 drivers/pci/controller/pci-mvebu.c    |  2 +-
 drivers/pci/pci-bridge-emul.c         | 86 ++++++++++++++++++---------
 drivers/pci/pci-bridge-emul.h         | 13 +++-
 4 files changed, 73 insertions(+), 30 deletions(-)

-- 
2.20.1


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2019-02-22 12:45 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-20  9:48 [PATCH 0/2] PCI: fix pci-mvebu after conversion to common bridge emul code Thomas Petazzoni
2019-02-20  9:48 ` [PATCH 1/2] PCI: pci-bridge-emul: Create per-bridge copy of register behavior Thomas Petazzoni
2019-02-21 23:01   ` Luís Mendes
2019-02-20  9:48 ` [PATCH 2/2] PCI: pci-bridge-emul: Extend pci_bridge_emul_init() with flags Thomas Petazzoni
2019-02-21 23:03   ` Luís Mendes
2019-02-21 23:23 ` [PATCH 0/2] PCI: fix pci-mvebu after conversion to common bridge emul code Bjorn Helgaas
2019-02-22  8:11   ` Leigh Brown
2019-02-22  8:35   ` Thomas Petazzoni
2019-02-22 11:05     ` Lorenzo Pieralisi
2019-02-22 12:45       ` Thomas Petazzoni
2019-02-22  8:06 ` Leigh Brown
2019-02-22 11:22 ` Lorenzo Pieralisi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).