]> git.baikalelectronics.ru Git - kernel.git/commit
m68k/mac: Fix unexpected interrupt with CONFIG_EARLY_PRINTK
authorFinn Thain <fthain@telegraphics.com.au>
Wed, 29 May 2013 02:37:17 +0000 (12:37 +1000)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Fri, 31 May 2013 08:43:18 +0000 (10:43 +0200)
commite802b3e86782a56add27e6bf65dce0a1671a9939
treef2c62a298b8ebf095c3de5b4ae164a49ce5db03c
parentd67f0f7f01eb8b278d2ffe137361076878c8bb76
m68k/mac: Fix unexpected interrupt with CONFIG_EARLY_PRINTK

The present code does not wait for the SCC to finish resetting itself
before trying to initialise the device. The result is that the SCC
interrupt sources become enabled (if they weren't already). This leads to
an early boot crash (unexpected interrupt) given CONFIG_EARLY_PRINTK. Fix
this by adding a delay. A successful reset disables the interrupt sources.

Also, after the reset for channel A setup, the SCC then gets a second
reset for channel B setup which leaves channel A uninitialised again. Fix
this by performing the reset only once.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Cc: stable@vger.kernel.org
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
arch/m68k/kernel/head.S