lspci XHCI "Memory at" for RPi4 (u-boot based context): FreeBSD vs. ubuntu vs. "Memory behind bridge" addresses
Mark Millard
marklmi at yahoo.com
Sun Oct 4 01:27:36 UTC 2020
On 2020-Oct-3, at 13:01, Mark Millard <marklmi at yahoo.com> wrote:
> [Be warned that I'm reporting differences that I do not
> understand. I may end up being told "nothing of interest
> in these differences".]
>
> In the later lspci -v output diff, there is the following for
> the XHCI (-: FreeBSD, +: ubuntu):
>
> - Memory at f8000000 (64-bit, non-prefetchable)
> . . .
> + Memory at 600000000 (64-bit, non-prefetchable) [size=4K]
Looks like this is the two lspci's disagreeing about what
to show for "Memory at":
ubuntu "fdt print /" output:
pcie at 7d500000 {
. . .
#address-cells = <0x00000003>;
. . .
#size-cells = <0x00000002>;
. . .
ranges = <0x02000000 0x00000000 0xf8000000 0x00000006 0x00000000 0x00000000 0x04000000>;
Note that both the figures are in ranges:
0x00000000 0xf8000000
and:
0x00000006 0x00000000
. As for FreeBSD, the same is true:
pcie at 7d500000 {
#address-cells = <0x3>;
. . .
#size-cells = <0x2>;
. . .
ranges = <0x2000000 0x0 0xf8000000 0x6 0x0 0x0 0x4000000>;
. . .
So:
0x0 0xf8000000
and:
0x6 0x0
> Odder(?) is comparison of the FreeBSD address with what is
> listed by both OS's for "Memory behind bridge":
>
> Memory behind bridge: f8000000-f80fffff [size=1M]
> . . .
> - Memory at f8000000 (64-bit, non-prefetchable)
>
> ubuntu gets a distinct address (600000000) and FreeBSD gets
> an exact match to the start of the "Memory behind bridge".
> (There may be a possible 32-bit address vs. 64-bit address
> distinction?)
Looks like this part is not odd.
> [There are also IRQ differences (81/82 for FreeBSD; 41/42 for
> ubuntu) and ubuntu lists the kernel drivers used.]
>
> For reference:
>
> # diff -u ~/rpi4-lspci_v-*.txt | more
> --- /root/rpi4-lspci_v-fbsd.txt 2020-10-03 12:19:57.162261000 -0700
> +++ /root/rpi4-lspci_v-ubuntu.txt 2020-10-03 12:21:01.448646000 -0700
> @@ -1,5 +1,5 @@
> -00:00.0 PCI bridge: Broadcom Inc. and subsidiaries Device 2711 (prog-if 00 [Normal decode])
> - Flags: bus master, fast devsel, latency 0, IRQ 81
> +00:00.0 PCI bridge: Broadcom Inc. and subsidiaries Device 2711 (rev 10) (prog-if 00 [Normal decode])
> + Flags: bus master, fast devsel, latency 0, IRQ 41
> Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
> I/O behind bridge: 00000000-00000fff [size=4K]
> Memory behind bridge: f8000000-f80fffff [size=1M]
> @@ -9,13 +9,15 @@
> Capabilities: [100] Advanced Error Reporting
> Capabilities: [180] Vendor Specific Information: ID=0000 Rev=0 Len=028 <?>
> Capabilities: [240] L1 PM Substates
> + Kernel driver in use: pcieport
>
> 01:00.0 USB controller: VIA Technologies, Inc. VL805 USB 3.0 Host Controller (rev 01) (prog-if 30 [XHCI])
> Subsystem: VIA Technologies, Inc. VL805 USB 3.0 Host Controller
> - Flags: bus master, fast devsel, latency 0, IRQ 82
> - Memory at f8000000 (64-bit, non-prefetchable)
> + Flags: bus master, fast devsel, latency 0, IRQ 42
> + Memory at 600000000 (64-bit, non-prefetchable) [size=4K]
> Capabilities: [80] Power Management version 3
> Capabilities: [90] MSI: Enable+ Count=1/4 Maskable- 64bit+
> Capabilities: [c4] Express Endpoint, MSI 00
> Capabilities: [100] Advanced Error Reporting
> + Kernel driver in use: xhci_hcd
>
>
>
> Is this odd? Expected/reasonable?
f8000000 vs. 600000000 Looks to be an odd lspci -v variation,
with FreeBSD apparently showing the figure as if -b had been
supplied on the command line ("Bus-centric view"): ubuntu
shows f8000000 when the -b is supplied.
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-arm
mailing list