Wind River Support Network

HomeDefectsLIN6-9423
Fixed

LIN6-9423 : Baytrail HSUART DMA Issue, "too much work irq20" non-DMA

Created: Feb 12, 2015    Updated: Dec 3, 2018
Resolved Date: Apr 19, 2015
Found In Version: 6.0.0.10
Fix Version: 6.0.0.20
Severity: Standard
Applicable for: Wind River Linux 6
Component/s: BSP, Kernel
Architecture: IA64

Description

the Atom and an Infineon XC2267 coprocessor system has an SPI link from the Atom the the XC, and a UART link from the XC to the Atom.  For this particular case, a request is sent over SPI from the Atom to the XC and expect the XC to respond on the UART channel (running a custom baud rate of 2.1 MBaud).  Customer is using known good code on the XC and have verified that Atom (?) receives the request and sends the response.   At a high level this is what have been observed:

1. With DMA enabled, no data is ever received over HSUART
2. With the DMA disabled, the port works as expected, although we see a "too much work irq20" warning after heavy  use.  

To disable DMA mode, we clear the CONFIG_SERIAL_8250_DMA kernel configuration variable and recompile our kernel. 

In our full system we open the TTY in non-blocking mode, then sit in a thread polling the port for data.  We use an ioctl() to see how many bytes are available, and then call read() to read that many bytes.  

Other Downloads


Live chat
Online