Re: Tegra 2: Spurious interrupts from UARTA (@70006000)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tuesday, 12 June 2018 17:14:52 MSK David R. Piegdon wrote:
> Hello,
> 
> Currently I am debugging an issue on a Toradex Colibri T20 Module
> (Tegra2) using kernel 4.9.86 of our own make. This also happens using
> a current 4.17 kernel.
> I would greatly appreciate any help / pointers on this subject.
> 
> When using the UARTA (@70006000) block with the plain 8250 driver [1]
> (devicetree: compatible="nvidia,tegra20-uart") we get spurious
> interrupts on the corresponding irq line. These seem to correlate with
> the driver shortly enabling the IER_THRI (tx queue empty interrupt)
> of the 8250 and then disabling it again almost right away, as the
> tx queue is empty and no data is available for transmit.
> This happens every one in a while, but when it happens, the interrupts
> get triggered continuously until the kernel switches to polling.
> When resetting the serial port (e.g. close&open) it seems to properly
> work again and interrupts are used again.
> During the failure, somehow the interrupt continues to be triggered,
> even though the IIR register shows no active interrupts (IIR == 0xC1)
> 

Hello David,

TRM says "IS_STA: Interrupt Pending if ZERO" for BIT(1) of UART_IIR_FCR_0 
register, this matches the UART standard that kernel follows by checking 
whether UART_IIR_NO_INT bit is set in the serial8250_handle_irq(). That bit is 
zero in your case, meaning that interrupt is asserted.


--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux