[U-Boot] [PATCH 034/126] serial: ns16550: Add a PCI device/function field

Simon Glass sjg at chromium.org
Wed Sep 25 14:56:18 UTC 2019

When this UART is used early in boot (before PCI is set up) it is
convenient to store the PCI BDF of the UART so that it can be manually
configured. This is useful when it is used as a debug UART, for example.

Add a new field to hold this information, so that drivers can simply use
the existing platform data.

Signed-off-by: Simon Glass <sjg at chromium.org>

 include/ns16550.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/ns16550.h b/include/ns16550.h
index 22b89e4d6d1..701efeea855 100644
--- a/include/ns16550.h
+++ b/include/ns16550.h
@@ -52,6 +52,7 @@
  * @reg_width:		IO accesses size of registers (in bytes)
  * @reg_shift:		Shift size of registers (0=byte, 1=16bit, 2=32bit...)
  * @clock:		UART base clock speed in Hz
+ * @bdf:		PCI slot/function (pci_dev_t)
 struct ns16550_platdata {
 	unsigned long base;
@@ -60,6 +61,9 @@ struct ns16550_platdata {
 	int reg_offset;
 	int clock;
 	u32 fcr;
+#if defined(CONFIG_PCI) && defined(CONFIG_SPL)
+	int bdf;
 struct udevice;

More information about the U-Boot mailing list