All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mason <slash.tmp@free.fr>
To: linux-pci <linux-pci@vger.kernel.org>
Cc: Koen Vandeputte <koen.vandeputte@ncentric.com>
Subject: Re: [PATCH v2] PCI: dwc: fix enumeration end when reaching root subordinate
Date: Mon, 15 Jan 2018 12:50:48 +0100	[thread overview]
Message-ID: <fcf1e2d5-b31c-9e4f-72e8-54e1e7bb040e@free.fr> (raw)
In-Reply-To: <1516008968-26285-1-git-send-email-koen.vandeputte@ncentric.com>

On 15/01/2018 10:36, Koen Vandeputte wrote:

> The subordinate value indicates the highest bus number which can be
> reached downstream though a certain device.
> 
> Commit a20c7f36bd3d ("PCI: Do not allocate more buses than available in
> parent")
> ensures that downstream devices cannot assign busnumbers higher than the
> upstream device subordinate number, which was indeed illogical.
> 
> By default, dw_pcie_setup_rc() inits the Root Complex subordinate to a
> value of 0x01.
> 
> Due to this combined with above commit, enumeration stops digging deeper
> downstream as soon as bus num 0x01 has been assigned, which is always
> the case for a bridge device.
> 
> This results in all devices behind a bridge bus to remain undetected, as
> these would be connected to bus 0x02 or higher.
> 
> Fix this by initializing the RC to a subordinate value of 0xff, which is
> not altering hardware behaviour in any way, but informs probing
> function pci_scan_bridge() later on which reads this value back from
> register.
> 
> Following nasty errors during boot are also fixed by this:
> 
> [    0.459145] pci_bus 0000:02: busn_res: can not insert [bus 02-ff]
> under [bus 01] (conflicts with (null) [bus 01])
> ...
> [    0.464515] pci_bus 0000:03: [bus 03] partially hidden behind bridge
> 0000:01 [bus 01]
> ...
> [    0.464892] pci_bus 0000:04: [bus 04] partially hidden behind bridge
> 0000:01 [bus 01]
> ...
> [    0.466488] pci_bus 0000:05: [bus 05] partially hidden behind bridge
> 0000:01 [bus 01]
> [    0.466506] pci_bus 0000:02: busn_res: [bus 02-ff] end is updated to
> 05
> [    0.466517] pci_bus 0000:02: busn_res: can not insert [bus 02-05]
> under [bus 01] (conflicts with (null) [bus 01])
> [    0.466534] pci_bus 0000:02: [bus 02-05] partially hidden behind
> bridge 0000:01 [bus 01]

FWIW, I find that this wrap-around looks ugly :-p

Regards.

  reply	other threads:[~2018-01-15 11:50 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-15  9:36 [PATCH v2] PCI: dwc: fix enumeration end when reaching root subordinate Koen Vandeputte
2018-01-15 11:50 ` Mason [this message]
2018-01-15 19:47 ` Fabio Estevam
2018-01-15 19:52 ` Mika Westerberg
2018-02-05 19:14 ` Lorenzo Pieralisi
2018-02-05 20:06   ` Mika Westerberg
2018-02-05 22:12     ` Fabio Estevam
2018-02-14 15:41   ` Fabio Estevam
2018-02-14 15:49     ` Lucas Stach
2018-02-06 10:44 ` [v2] " Sebastian Reichel
2018-02-20 15:39 ` [PATCH v2] " Lorenzo Pieralisi
2018-03-02 22:57   ` Fabio Estevam
2018-03-05  9:49     ` Lorenzo Pieralisi
2018-03-05 11:55       ` Fabio Estevam
2018-03-05 12:24         ` Lorenzo Pieralisi
2018-03-05 13:08           ` Kishon Vijay Abraham I
2018-03-06  8:16             ` Shawn Guo
2018-03-06 10:13               ` Niklas Cassel
2018-03-07 17:13     ` Lorenzo Pieralisi
2018-03-07 17:23       ` Fabio Estevam
2018-03-12 13:31 ` Fabio Estevam

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=fcf1e2d5-b31c-9e4f-72e8-54e1e7bb040e@free.fr \
    --to=slash.tmp@free.fr \
    --cc=koen.vandeputte@ncentric.com \
    --cc=linux-pci@vger.kernel.org \
    /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: link
Be 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.