Add debug knobs to pcie_brcmstb#6745
Merged
pelwell merged 1 commit intoraspberrypi:rpi-6.12.yfrom Mar 28, 2025
Merged
Conversation
pelwell
reviewed
Mar 27, 2025
P33M
commented
Mar 27, 2025
Add two features that assist in diagnosing link instability issues. The debugfs additions allow for snapshots of the Physical Layer statistics registers to be taken, during either free-running capture or after a hardware-controlled capture interval. To arm the capture engine (and reset the stats counters), write an integer N to: /sys/kernel/debug/pcie@<addr>/stats_trigger The engine will run forever with a value of 0, or disarm after N microseconds. To snapshot the hardware stats counters, write to: /sys/kernel/debug/pcie@<addr>/stats_snapshot Reading this file will return the snapshot. If no writes have occurred since boot, the snapshot will be of the initial link training period. The ltssm_trace module parameter printk's the states during initial link startup, in situations where failure to establish the link is a fatal error. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
pelwell
approved these changes
Mar 28, 2025
popcornmix
added a commit
to raspberrypi/firmware
that referenced
this pull request
Mar 31, 2025
kernel: overlay: Rework/fix the Pi 5 MIDI UART overlays See: raspberrypi/linux#6743 kernel: Add debug knobs to pcie_brcmstb See: raspberrypi/linux#6745 kernel: ARM64: dts: Add sd and sd_poll_once params to CM5 See: raspberrypi/linux#6744 firmware: Vl805 reset improvements
popcornmix
added a commit
to raspberrypi/rpi-firmware
that referenced
this pull request
Mar 31, 2025
kernel: overlay: Rework/fix the Pi 5 MIDI UART overlays See: raspberrypi/linux#6743 kernel: Add debug knobs to pcie_brcmstb See: raspberrypi/linux#6745 kernel: ARM64: dts: Add sd and sd_poll_once params to CM5 See: raspberrypi/linux#6744 firmware: Vl805 reset improvements
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Flaky NVMe HATs/drives will frequently bounce the link, degrading performance. Or completely fall over, if the link is so bad that a completion timeout occurs. Capturing error counts (with manual triggers for intermittent failures) sheds light on this.
Bad layout and routing on a CM4/5 interface board isn't going to be diagnosable from a link trace, but you can at least tell if your remote terminations are being sensed and/or the remote EP is trying to talk to you.