From: Marek Vasut <marek.vasut@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/4] pci: Update documentation to make 'compatible' string optional
Date: Wed, 10 Oct 2018 21:27:07 +0200 [thread overview]
Message-ID: <20181010192709.19302-2-marek.vasut+renesas@gmail.com> (raw)
In-Reply-To: <20181010192709.19302-1-marek.vasut+renesas@gmail.com>
Reword the documentation to make it clear the compatible string is now
optional, yet still matching on it takes precedence over PCI IDs and
PCI classes.
Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
---
doc/driver-model/pci-info.txt | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/doc/driver-model/pci-info.txt b/doc/driver-model/pci-info.txt
index e1701d1fbc..14364c5c75 100644
--- a/doc/driver-model/pci-info.txt
+++ b/doc/driver-model/pci-info.txt
@@ -34,11 +34,15 @@ under that bus.
Note that this is all done on a lazy basis, as needed, so until something is
touched on PCI (eg: a call to pci_find_devices()) it will not be probed.
-PCI devices can appear in the flattened device tree. If they do this serves to
-specify the driver to use for the device. In this case they will be bound at
-first. Each PCI device node must have a compatible string list as well as a
-<reg> property, as defined by the IEEE Std 1275-1994 PCI bus binding document
-v2.1. Note we must describe PCI devices with the same bus hierarchy as the
+PCI devices can appear in the flattened device tree. If they do, their node
+often contains extra information which cannot be derived from the PCI IDs or
+PCI class of the device. Each PCI device node must have a <reg> property, as
+defined by the IEEE Std 1275-1994 PCI bus binding document v2.1. Compatible
+string list is optional and generally not needed, since PCI is discoverable
+bus, albeit there are justified exceptions. If the compatible string is
+present, matching on it takes precedence over PCI IDs and PCI classes.
+
+Note we must describe PCI devices with the same bus hierarchy as the
hardware, otherwise driver model cannot detect the correct parent/children
relationship during PCI bus enumeration thus PCI devices won't be bound to
their drivers accordingly. A working example like below:
--
2.18.0
next prev parent reply other threads:[~2018-10-10 19:27 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-10 19:27 [U-Boot] [PATCH 1/4] pci: Support parsing PCI controller DT subnodes Marek Vasut
2018-10-10 19:27 ` Marek Vasut [this message]
2018-10-11 3:21 ` [U-Boot] [PATCH 2/4] pci: Update documentation to make 'compatible' string optional Bin Meng
2018-10-22 1:30 ` [U-Boot] [U-Boot, " Tom Rini
2018-10-10 19:27 ` [U-Boot] [PATCH 3/4] test: Add PCI device entry without compat string and with DT node Marek Vasut
2018-10-11 3:22 ` Bin Meng
2018-10-22 1:31 ` [U-Boot] [U-Boot, " Tom Rini
2018-10-10 19:27 ` [U-Boot] [PATCH 4/4] test: Add test for PCI device " Marek Vasut
2018-10-11 3:22 ` Bin Meng
2018-10-22 1:31 ` [U-Boot] [U-Boot, " Tom Rini
2018-10-11 3:21 ` [U-Boot] [PATCH 1/4] pci: Support parsing PCI controller DT subnodes Bin Meng
2018-10-22 1:30 ` [U-Boot] [U-Boot, " Tom Rini
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=20181010192709.19302-2-marek.vasut+renesas@gmail.com \
--to=marek.vasut@gmail.com \
--cc=u-boot@lists.denx.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox