From: "Pali Rohár" <pali@kernel.org> To: "Toke Høiland-Jørgensen" <toke@redhat.com> Cc: "Thomas Petazzoni" <thomas.petazzoni@bootlin.com>, "Bjorn Helgaas" <helgaas@kernel.org>, vtolkm@gmail.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, "Rob Herring" <robh@kernel.org>, "Ilias Apalodimas" <ilias.apalodimas@linaro.org>, "Marek Behún" <marek.behun@nic.cz>, "Jason Cooper" <jason@lakedaemon.net> Subject: Re: PCI trouble on mvebu (Turris Omnia) Date: Fri, 30 Oct 2020 11:15:40 +0100 [thread overview] Message-ID: <20201030101540.ypsslr7bir5lwtjc@pali> (raw) In-Reply-To: <877dr8oc7m.fsf@toke.dk> On Friday 30 October 2020 00:15:57 Toke Høiland-Jørgensen wrote: > Thomas Petazzoni <thomas.petazzoni@bootlin.com> writes: > > > Hello, > > > > On Thu, 29 Oct 2020 14:30:22 -0500 > > Bjorn Helgaas <helgaas@kernel.org> wrote: > > > >> We could quirk these NICs to avoid the retrain, but since aardvark and > >> mvebu have no obvious connection and WLE200/WLE900 and MT76 have no > >> obvious connection, I doubt there's a simple hardware defect that > >> explains all these. > > > > aardvark and mvebu have one very strong connection: they are the only > > two drivers making use of the PCI Bridge emulation logic in > > drivers/pci/pci-bridge-emul.c: > > > > drivers/pci$ git grep pci-bridge-emul > > akefile:obj-$(CONFIG_PCI_BRIDGE_EMUL) += pci-bridge-emul.o > > controller/pci-aardvark.c:#include "../pci-bridge-emul.h" > > controller/pci-mvebu.c:#include "../pci-bridge-emul.h" > > pci-bridge-emul.c:#include "pci-bridge-emul.h" > > > > I haven't read the whole thread, but it is important to keep in mind > > that on those two platforms, the PCI Bridge seen by Linux is *not* a > > real HW bridge. It is faked by the the pci-bridge-emul code. So if this > > code has defects/bugs in how it emulates a PCI Bridge behavior, you > > might see weird things. > > Ohh, that's interesting. Why does it need to emulate it? I could speculate, they wanted to decrease cost of hw, so they did not include bridge into hw and let user to emulate it (if is needed). > And could this cause things weird interactions like what I'm seeing, > where a somewhat buggy device in slot 2 affects the ability to retrain > the link also in slot 1, but only if there's no device in slot 3? I doubt, slots and registers are independent. Every slot/card has own (emulated) bridge.
WARNING: multiple messages have this Message-ID (diff)
From: "Pali Rohár" <pali@kernel.org> To: "Toke Høiland-Jørgensen" <toke@redhat.com> Cc: "Rob Herring" <robh@kernel.org>, "Jason Cooper" <jason@lakedaemon.net>, linux-pci@vger.kernel.org, "Ilias Apalodimas" <ilias.apalodimas@linaro.org>, "Marek Behún" <marek.behun@nic.cz>, "Bjorn Helgaas" <helgaas@kernel.org>, "Thomas Petazzoni" <thomas.petazzoni@bootlin.com>, vtolkm@gmail.com, linux-arm-kernel@lists.infradead.org Subject: Re: PCI trouble on mvebu (Turris Omnia) Date: Fri, 30 Oct 2020 11:15:40 +0100 [thread overview] Message-ID: <20201030101540.ypsslr7bir5lwtjc@pali> (raw) In-Reply-To: <877dr8oc7m.fsf@toke.dk> On Friday 30 October 2020 00:15:57 Toke Høiland-Jørgensen wrote: > Thomas Petazzoni <thomas.petazzoni@bootlin.com> writes: > > > Hello, > > > > On Thu, 29 Oct 2020 14:30:22 -0500 > > Bjorn Helgaas <helgaas@kernel.org> wrote: > > > >> We could quirk these NICs to avoid the retrain, but since aardvark and > >> mvebu have no obvious connection and WLE200/WLE900 and MT76 have no > >> obvious connection, I doubt there's a simple hardware defect that > >> explains all these. > > > > aardvark and mvebu have one very strong connection: they are the only > > two drivers making use of the PCI Bridge emulation logic in > > drivers/pci/pci-bridge-emul.c: > > > > drivers/pci$ git grep pci-bridge-emul > > akefile:obj-$(CONFIG_PCI_BRIDGE_EMUL) += pci-bridge-emul.o > > controller/pci-aardvark.c:#include "../pci-bridge-emul.h" > > controller/pci-mvebu.c:#include "../pci-bridge-emul.h" > > pci-bridge-emul.c:#include "pci-bridge-emul.h" > > > > I haven't read the whole thread, but it is important to keep in mind > > that on those two platforms, the PCI Bridge seen by Linux is *not* a > > real HW bridge. It is faked by the the pci-bridge-emul code. So if this > > code has defects/bugs in how it emulates a PCI Bridge behavior, you > > might see weird things. > > Ohh, that's interesting. Why does it need to emulate it? I could speculate, they wanted to decrease cost of hw, so they did not include bridge into hw and let user to emulate it (if is needed). > And could this cause things weird interactions like what I'm seeing, > where a somewhat buggy device in slot 2 affects the ability to retrain > the link also in slot 1, but only if there's no device in slot 3? I doubt, slots and registers are independent. Every slot/card has own (emulated) bridge. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-10-30 10:15 UTC|newest] Thread overview: 124+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-10-27 15:43 PCI trouble on mvebu (Turris Omnia) Toke Høiland-Jørgensen 2020-10-27 15:43 ` Toke Høiland-Jørgensen 2020-10-27 17:20 ` Bjorn Helgaas 2020-10-27 17:20 ` Bjorn Helgaas 2020-10-27 17:44 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-27 17:44 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-27 18:59 ` Toke Høiland-Jørgensen 2020-10-27 18:59 ` Toke Høiland-Jørgensen 2020-10-27 20:20 ` Toke Høiland-Jørgensen 2020-10-27 20:20 ` Toke Høiland-Jørgensen 2020-10-27 21:22 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-27 21:22 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-27 21:31 ` Toke Høiland-Jørgensen 2020-10-27 21:31 ` Toke Høiland-Jørgensen 2020-10-27 22:01 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-27 22:01 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-27 22:12 ` Toke Høiland-Jørgensen 2020-10-27 22:12 ` Toke Høiland-Jørgensen 2020-10-27 18:56 ` Toke Høiland-Jørgensen 2020-10-27 18:56 ` Toke Høiland-Jørgensen 2020-10-28 13:36 ` Toke Høiland-Jørgensen 2020-10-28 13:36 ` Toke Høiland-Jørgensen 2020-10-28 14:42 ` Bjorn Helgaas 2020-10-28 14:42 ` Bjorn Helgaas 2020-10-28 15:08 ` Toke Høiland-Jørgensen 2020-10-28 15:08 ` Toke Høiland-Jørgensen 2020-10-28 16:40 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-28 16:40 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-28 23:16 ` Bjorn Helgaas 2020-10-28 23:16 ` Bjorn Helgaas 2020-10-29 10:09 ` Pali Rohár 2020-10-29 10:09 ` Pali Rohár 2020-10-29 10:56 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-29 10:56 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-29 11:12 ` Toke Høiland-Jørgensen 2020-10-29 11:12 ` Toke Høiland-Jørgensen 2020-10-29 19:30 ` Bjorn Helgaas 2020-10-29 19:30 ` Bjorn Helgaas 2020-10-29 19:56 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-29 19:56 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-29 19:57 ` Andrew Lunn 2020-10-29 19:57 ` Andrew Lunn 2020-10-29 21:55 ` Thomas Petazzoni 2020-10-29 21:55 ` Thomas Petazzoni 2020-10-29 20:18 ` Toke Høiland-Jørgensen 2020-10-29 20:18 ` Toke Høiland-Jørgensen 2020-10-29 22:09 ` Toke Høiland-Jørgensen 2020-10-29 22:09 ` Toke Høiland-Jørgensen 2020-10-29 20:58 ` Marek Behun 2020-10-29 20:58 ` Marek Behun 2020-10-30 10:08 ` Pali Rohár 2020-10-30 10:08 ` Pali Rohár 2020-10-30 10:45 ` Marek Behun 2020-10-30 10:45 ` Marek Behun 2020-10-29 21:54 ` Thomas Petazzoni 2020-10-29 21:54 ` Thomas Petazzoni 2020-10-29 23:15 ` Toke Høiland-Jørgensen 2020-10-29 23:15 ` Toke Høiland-Jørgensen 2020-10-30 8:23 ` Thomas Petazzoni 2020-10-30 8:23 ` Thomas Petazzoni 2020-10-30 10:15 ` Pali Rohár [this message] 2020-10-30 10:15 ` Pali Rohár 2020-10-29 10:41 ` Toke Høiland-Jørgensen 2020-10-29 10:41 ` Toke Høiland-Jørgensen 2020-10-29 11:18 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-29 11:18 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-30 11:23 ` Pali Rohár 2020-10-30 11:23 ` Pali Rohár 2020-10-30 13:02 ` Toke Høiland-Jørgensen 2020-10-30 13:02 ` Toke Høiland-Jørgensen 2020-10-30 14:23 ` Pali Rohár 2020-10-30 14:23 ` Pali Rohár 2020-10-30 14:54 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-30 14:54 ` ™֟☻̭҇ Ѽ ҉ ® 2020-10-31 12:49 ` Toke Høiland-Jørgensen 2020-10-31 12:49 ` Toke Høiland-Jørgensen 2020-11-02 15:24 ` Pali Rohár 2020-11-02 15:24 ` Pali Rohár 2020-11-02 15:54 ` Toke Høiland-Jørgensen 2020-11-02 15:54 ` Toke Høiland-Jørgensen 2020-11-02 16:18 ` ™֟☻̭҇ Ѽ ҉ ® 2020-11-02 16:18 ` ™֟☻̭҇ Ѽ ҉ ® 2020-11-02 16:33 ` Toke Høiland-Jørgensen 2020-11-02 16:33 ` Toke Høiland-Jørgensen 2021-03-15 19:58 ` Pali Rohár 2021-03-15 19:58 ` Pali Rohár 2021-03-16 9:25 ` Pali Rohár 2021-03-16 9:25 ` Pali Rohár 2021-03-18 22:43 ` Toke Høiland-Jørgensen 2021-03-18 22:43 ` Toke Høiland-Jørgensen 2021-03-18 23:16 ` Pali Rohár 2021-03-18 23:16 ` Pali Rohár 2021-03-26 12:50 ` Pali Rohár 2021-03-26 12:50 ` Pali Rohár 2021-03-26 15:25 ` Toke Høiland-Jørgensen 2021-03-26 15:25 ` Toke Høiland-Jørgensen 2021-03-26 15:34 ` Pali Rohár 2021-03-26 15:34 ` Pali Rohár 2021-03-26 16:54 ` Toke Høiland-Jørgensen 2021-03-26 16:54 ` Toke Høiland-Jørgensen 2021-03-26 17:11 ` Pali Rohár 2021-03-26 17:11 ` Pali Rohár 2021-03-26 17:51 ` Toke Høiland-Jørgensen 2021-03-26 17:51 ` Toke Høiland-Jørgensen 2021-03-29 17:09 ` Pali Rohár 2021-03-29 17:09 ` Pali Rohár 2021-03-31 14:02 ` Toke Høiland-Jørgensen 2021-03-31 14:02 ` Toke Høiland-Jørgensen 2021-03-31 16:15 ` Pali Rohár 2021-03-31 16:15 ` Pali Rohár 2021-03-31 16:53 ` Toke Høiland-Jørgensen 2021-03-31 16:53 ` Toke Høiland-Jørgensen 2020-10-29 1:21 ` Marek Behun 2020-10-29 1:21 ` Marek Behun 2020-10-29 15:12 ` Rob Herring 2020-10-29 15:12 ` Rob Herring 2020-10-27 18:03 ` Marek Behun 2020-10-27 18:03 ` Marek Behun 2020-10-27 19:00 ` Toke Høiland-Jørgensen 2020-10-27 19:00 ` Toke Høiland-Jørgensen 2020-10-27 20:19 ` Marek Behun 2020-10-27 20:19 ` Marek Behun 2020-10-27 20:49 ` Toke Høiland-Jørgensen 2020-10-27 20:49 ` Toke Høiland-Jørgensen
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20201030101540.ypsslr7bir5lwtjc@pali \ --to=pali@kernel.org \ --cc=helgaas@kernel.org \ --cc=ilias.apalodimas@linaro.org \ --cc=jason@lakedaemon.net \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-pci@vger.kernel.org \ --cc=marek.behun@nic.cz \ --cc=robh@kernel.org \ --cc=thomas.petazzoni@bootlin.com \ --cc=toke@redhat.com \ --cc=vtolkm@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.