Skip to content

Raspberry Pi boots up too fast to enumerate all PCIe devices #7172

@geerlingguy

Description

@geerlingguy

Describe the bug

Often when testing complex multi-device PCIe scenarios behind a switch, one or more devices won't fully enumerate, and debugging why is a little perplexing.

For example, running four RTX 5000 GPUs behind a PCIe switch often results in one or all of them not showing up: geerlingguy/raspberry-pi-pcie-devices#791

I've also noticed this sometimes with just two or even sometimes one PCIe device, since I test a lot of exotic cards, which may need a little time to get going. At least that's my theory.

This is definitely an edge case, but it would be nice to have a means to debug it and at least confirm the theory.

There used to be a boot_delay option in config.txt which might've helped with this, but that is not present anymore.

Steps to reproduce the behaviour

  1. Plug in multiple modern graphics cards behind a PCIe switch connected to the Pi's external PCIe lane.
  2. Boot Raspberry Pi OS.
  3. Run lspci, and sometimes only one or zero devices are listed.

Device (s)

Raspberry Pi CM5

System

https://pastebin.com/tk7fyjSg

jgeerling@cm5:~ $ cat /etc/rpi-issue
Raspberry Pi reference 2025-11-24
Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 6e49e5317491c159c114681ddb4ac0623d855611, stage4

jgeerling@cm5:~ $ uname -a
Linux cm5 6.12.47+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.47-1+rpt1 (2025-09-16) aarch64 GNU/Linux

(But I've also been testing on 6.17 and 6.18 with various kernels...)

Logs

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions