media: platform: raspberrypi: rp1_cfe: Add more debug registers#7338
media: platform: raspberrypi: rp1_cfe: Add more debug registers#7338njhollinghurst wants to merge 1 commit intoraspberrypi:rpi-6.18.yfrom
Conversation
Dump ISP-FE registers FE_DEBUG_FIFO_FULLNESS and FE_DEBUG_STATUS2. The latter gives an atomic snapshot of state and frames completed. Dump a CSI-2 Host register which shows which lanes are in LP11. Dump some sticky error registers from the D-PHY and CSI-2 Host; note that they will be cleared on every read. This is harmless, since they are not used for any purpose other than debug. Signed-off-by: Nick Hollinghurst <nick.hollinghurst@raspberrypi.com>
6by9
left a comment
There was a problem hiding this comment.
Just the one query, otherwise looks fine.
| struct dphy_data *dphy = s->private; | ||
| int ret; | ||
|
|
||
| ret = pm_runtime_resume_and_get(dphy->dev); |
There was a problem hiding this comment.
I might question whether it is better to use pm_runtime_get_if_in_use so that if the hardware isn't powered up you get told that rather than just getting the hardware defaults.
There was a problem hiding this comment.
Quite possibly. I copied and pasted similar code from pisp_fe.c.
BTW I did also wonder about using debugfs_create_regset32() instead; but it wasn't clear how that might interact with the read-to-clear registers. Not sure what if anything it does for power management.
There was a problem hiding this comment.
I've just found the same in csi2.c as well. All might benefit from it, assuming that pm_runtime counting is actually correct.
Using regset only really gives a benefit if already using regset, and the CFE driver isn't.
Dump ISP-FE registers FE_DEBUG_FIFO_FULLNESS and FE_DEBUG_STATUS2. The latter gives an atomic snapshot of state and frames completed.
Dump a CSI-2 Host register which shows which lanes are in LP11.
Dump some sticky error registers from the D-PHY and CSI-2 Host; note that they will be cleared on every read. This is harmless, since they are not used for any purpose other than debug.