Wind River Support Network

HomeDefectsLIN5-19346
Fixed

LIN5-19346 : pch_uart driver stops owning IRQ when used as console

Created: Aug 29, 2014    Updated: Dec 19, 2017
Resolved Date: Sep 11, 2014
Found In Version: 5.0.1.14
Severity: Standard
Applicable for: Wind River Linux 5
Component/s: Kernel

Description

Effectively, this is a request to bring the pch_uart driver up to the latest upstream patch level.
Customer's hardware is based on Eurotech Catalyst TC, which is very similar to the intel_atom_eg20t_pch and somewhat similar to the intel_atom_z530 target/bsp .
Synopsis: pch_uart driver stops owning IRQ 81 and as result the serial console is “freezing”.
Errors messages seen in  syslog:

/dev/tty_console: cannot open as standard input: Input/output error”

…
0000:02:0a.1: ttyPCH0 at I/O 0x4058 (irq = 80) is a pch_uart
0000:02:0a.2: ttyPCH1 at I/O 0x4050 (irq = 81) is a pch_uart
0000:02:0a.3: ttyPCH2 at I/O 0x4048 (irq = 82) is a pch_uart
0000:02:0a.4: ttyPCH3 at I/O 0x4040 (irq = 83) is a pch_uart
…
81:          5          0   PCI-MSI-edge              // Nobody owns it ???
84:          0          0   PCI-MSI-edge      ahci
85:          0          0   PCI-MSI-edge      FPGA
87:        809          0   PCI-MSI-edge      eth0
------
# ls -l /dev/tty_console
lrwxrwxrwx 1 root root 7 Jan  1  2011 /dev/tty_console -> ttyPCH1
crw------- 1 root tty 252, 1 Aug 22 10:55 /dev/ttyPCH1

----- content of inittab:

# Run gettys in standard runlevels
S:12345:respawn:/sbin/mingetty console
# /sbin/mingetty invocations for the runlevels.
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
s1:2345:respawn:/sbin/agetty -L 115200 tty_console vt100

Workaround

I was able to identify two upstream commits that seem to address the issue:

1.	serial: pch_uart: fix tty-kref leak in dma-rx path, commit 3f88e029fd9a5e45a26614f4d8fe0d30c09c180c 
2.	Fix tty-kref leak introduced by commit 384e301e [WRL5 commit 18fb4b6], commit  f84f26e72c1286582da55dd76752ef4296faeccd 
 

Steps to Reproduce

The condition is 100% reproducible when the board is booting and key presses are made in the serial console (1 key press per second or so).

Other Downloads


Live chat
Online