Re: [PATCH] serial: qcom-geni: Add tracepoints for SE reg dump

From: Praveen Talari

Date: Mon Oct 26 2026 - 03:07:05 EST


Hi Konrad,

On 23-10-2026 17:32, Konrad Dybcio wrote:
On 10/19/26 5:32 AM, Praveen Talari wrote:
The GENI serial driver reports various transfer failures such as
M_CMD abort/cancel timeouts, DMA TX/RX FSM reset timeouts, RX FIFO
write errors, illegal command interrupts, and DMA parity errors.
However, diagnosing the root cause of these failures is difficult as
the hardware state is not captured when the error occurs.

Add trace_geni_se_regs() calls at critical serial error handling paths
to automatically capture GENI serial engine debug registers when
failures are detected. This includes:

- M_CMD abort/cancel timeout
- DMA TX/RX FSM reset timeout
- Unexpected zero-byte RX DMA completion
- RX FIFO write error and illegal command interrupt status
- RX DMA parity error

Dumping the SE debug registers at the time of failure provides
additional hardware context and significantly improves post-mortem
analysis of serial transfer issues without affecting normal
operation.

Signed-off-by: Praveen Talari <praveen.talari@xxxxxxxxxxxxxxxx>
---
The commit message should mention the additional logging changes
too
Sure, will update in next patch.

[...]

- if (WARN_ON(m_irq_status & M_ILLEGAL_CMD_EN))
+ if (m_irq_status & M_ILLEGAL_CMD_EN) {
if (WARN_ON(m_irq...))
Sure, will update in next patch.

Konrad

+ trace_geni_se_regs(&port->se);
+ WARN_ON(1);
goto handle_rx;
+ }
if (dma) {
if (dma_tx_status & TX_DMA_DONE) {
@@ -1270,6 +1285,7 @@ static irqreturn_t qcom_geni_serial_isr(int isr, void *dev)
if (dma_rx_status & RX_DMA_PARITY_ERR) {
uport->icount.parity++;
drop_rx = true;
+ trace_geni_se_regs(&port->se);
}
if (dma_rx_status & RX_DMA_BREAK)

---
base-commit: 2efb7a11f1aa4d2dc285fe2680cca22cb9f72f64
change-id: 20260927-add-tracepoints-for-se-reg-dump-uart-30d93639447a

Best regards,
--
Praveen Talari <praveen.talari@xxxxxxxxxxxxxxxx>