ar71xx: fix nondeterministic hangs during bootconsole/console handover
authorRafał Miłecki <zajec5@gmail.com>
Wed, 20 Apr 2016 06:05:56 +0000 (06:05 +0000)
committerRafał Miłecki <zajec5@gmail.com>
Wed, 20 Apr 2016 06:05:56 +0000 (06:05 +0000)
commitdfcf8a8dbe2e77b7b5797838d809e778dba0ff9f
tree9bd645c47729c12cf5be4dd993cf81549ff29392
parent877ee7d7f54847b4e95c1feb6de0f5413e2fe7a1
ar71xx: fix nondeterministic hangs during bootconsole/console handover

Reconfiguring the UART when the FIFO is not empty may cause the boot to
hang. This hang is extremely suspectible to timing differences; recompiling
the kernel with the same configuration, but different UTS_VERSION
timestamps can yield images that hang more or less often. Sometimes images
are produced that hang reproducibly.

This patch should also make it into one of the next linux-stable releases,
but it's better to get this fixed as soon as possible.

Fixes #21773, #21857.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Backport of r49156

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@49202 3c298f89-4303-0410-b956-a3cf2f4a3e73
target/linux/ar71xx/patches-3.18/003-MIPS-ath79-make-bootconsole-wait-for-both-THRE-and-T.patch [new file with mode: 0644]
target/linux/ar71xx/patches-3.18/521-MIPS-ath79-enable-UART-for-early_serial.patch
target/linux/ar71xx/patches-3.18/707-MIPS-ath79-add-support-for-QCA953x-SoC.patch
target/linux/ar71xx/patches-3.18/735-MIPS-ath79-add-support-for-QCA956x-SoC.patch